順序模型 Sequential
配置學(xué)習(xí)過程 compile
# 多分類問題
model.compile(optimizer='rmsprop',
loss='categorical_crossentropy',
metrics=['accuracy'])
# 二分類問題
model.compile(optimizer='rmsprop',
loss='binary_crossentropy',
metrics=['accuracy'])
# 均方誤差回歸問題
model.compile(optimizer='rmsprop',
loss='mse')
# 自定義評(píng)估標(biāo)準(zhǔn)函數(shù)
import keras.backend as K
def mean_pred(y_true, y_pred):
return K.mean(y_pred)
model.compile(optimizer='rmsprop',
loss='binary_crossentropy',
metrics=['accuracy', mean_pred])
優(yōu)化器 optimizer
損失函數(shù) loss
評(píng)估標(biāo)準(zhǔn) metrics
模型保存和加載
# 創(chuàng)建 HDF5 文件 'my_model.h5'
model.save('my_model.h5')
# 保存為 JSON
json_string = model.to_json()
# 保存為 YAML
yaml_string = model.to_yaml()
#只保存/加載 模型的權(quán)重
model.save_weights('my_model_weights.h5')
model.load_weights('my_model_weights.h5')
model.load_weights('my_model_weights.h5', by_name=True)
del model # 刪除現(xiàn)有模型
from keras.models import load_model
# 返回一個(gè)編譯好的模型
# 與之前那個(gè)相同
model = load_model('my_model.h5')