说明:
1、keras保存加载模型需先 import h5py:
使用 pip install h5py 失败
直接利用 sudo pip install h5py 首先出现没有cython;安装完cython后会提示一个g++错误,这是由于没有安装hdf5;安装完hdf5再安装h5py就能够成功安装。
安装h5py的命令如下:
sudo pip install cython
sudo apt-get install libhdf5-dev
sudo pip install h5py
安装完成后可以用如下命令测试:
Python
import h5py
- import numpy as np
- np.random.seed(1337) # for reproducibility
- from keras.models import Sequential
- from keras.layers import Dense
- from keras.models import load_model
- # create some data
- X = np.linspace(-1, 1, 200)
- np.random.shuffle(X) # randomize the data
- Y = 0.5 * X + 2 + np.random.normal(0, 0.05, (200, ))
- X_train, Y_train = X[:160], Y[:160] # first 160 data points
- X_test, Y_test = X[160:], Y[160:] # last 40 data points
- model = Sequential()
- model.add(Dense(output_dim=1, input_dim=1))
- model.compile(loss=’mse’, optimizer=‘sgd’)
- for step in range(301):
- cost = model.train_on_batch(X_train, Y_train)
- # save
- print(‘test before save: ’, model.predict(X_test[0:2]))
- model.save(’my_model.h5’) # HDF5 file, you have to pip3 install h5py if don’t have it
- del model # deletes the existing model
- # load
- model = load_model(’my_model.h5’)
- print(‘test after load: ’, model.predict(X_test[0:2]))
- print(‘test after load__classification: ’, model.predict_classes(X_test[0:2]))
import numpy as np
np.random.seed(1337) # for reproducibility
print('test after load: ', model.predict(X_test[0:2]))
说明:
1、保存模型的api:
- model.save(‘my_model.h5’)
model.save('my_model.h5')
2、加载模型
- model = load_model(‘my_model.h5’)
model = load_model('my_model.h5')