代碼如下
from keras.layers import Input, Dense
from keras.models import Model
from keras import models
class Arg:
input_size = 784
#模型參數(shù)
#訓練參數(shù)
epochs = 1000
#度量參數(shù)
class LinearModel:
def __init__(self,args):
#參數(shù)
self.input_size = args.input_size
self.epochs = args.epochs
#創(chuàng)建和編譯模型
self.model = self._build_model()
def _build_model(self):
inputs = Input(shape=(self.input_size,))
x = Dense(64, activation='relu')(inputs)
x = Dense(64, activation='relu')(x)
predictions = Dense(10, activation='softmax')(x)
model = Model(inputs=inputs, outputs=predictions)
model.compile(optimizer='rmsprop',loss='categorical_crossentropy', metrics=['accuracy'])
return model
def fit(self,X,y):
history = self.model.fit(X,y,epochs=self.epochs)
return history
def predict(self,X):
return self.model.predict(X)
def save_model(self,path):
return self.model.save(path)
def load_model(self,path):
return models.load_model(path)
def load_model_structure(self):
return self.model.summary()
if __name__ == "__main__":
from keras.utils import to_categorical
import numpy as np
X = np.linspace(start=20, stop=100, num=100*784).reshape(100,784)
y = np.random.randint(10,size=(100,))
y = to_categorical(y,num_classes=10)
args = Arg()
model = LinearModel(args)
history = model.fit(X,y)
y_hat = model.predict(X)
model.save_model("H:/model.h5")
model = model.load_model("H:/model.h5")
model.predict(X)
```
最后編輯于 :
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。