1import numpy as np 2from keras import Sequential 3from keras.callbacks import TensorBoard 4from keras.layers import Dense 5from keras.models import load_model 6 7x = np.linspace(-10, 10, 300) 8y = 3 * x + np.random.random(x.shape) * 0.44 9 10model = Sequential() 11model.add(Dense(1, activation='linear', input_shape=(1,))) 12model.compile(optimizer='SGD', loss='mean_squared_error', metrics=['accuracy']) 13 14model.summary() 15 16model.fit(x, y, epochs=100, validation_split=0.3, verbose=2, 17 callbacks=[TensorBoard(log_dir='./logs', histogram_freq=1)]) 18model.save('../models/linear_model.h5') 19 20predict_model = load_model('../models/linear_model.h5') 21 22predict_y = predict_model.predict([8]) 23print(predict_y)
训练完后的模型可以保存下来,供下一次再训练或者拿来做predict,保存的时候只需要简单的save下就好
model.save('../models/linear_model.h5')
恢复的时候调用下load_model,就可以直接拿回来用了
predict_model = load_model('../models/linear_model.h5')