按以下2部分写:
1 Keras常用的接口函数介绍
2 Keras代码实例
[keras] 模型保存、加载、model类方法、打印各层权重
1.模型保存
model.save_model()可以保存网络结构权重以及优化器的参数
model.save_weights() 仅仅保存权重
2.模型加载
from keras.models import load_model
load_model()只能load 由save_model保存的形式,将模型和weight全load进来
model.load_weights(self, filepath, by_name=False):
在加载权重之前,model必须编译好,即如下先执行以后。load_weights()和
save_weights()配套用的
metrics = ['accuracy']
if self.nb_classes >= 10:
metrics.append('top_k_categorical_accuracy')
# self.input_shape = (seq_length, features_length)
self.model,self.original_model = self.zf_model()
optimizer = SGD(lr=1e-3)
#必须先model.compile(),才能加载权重
self.model.compile(loss='categorical_crossentropy', optimizer=optimizer,
metrics=metrics) #
3.sequential 和functional
序列式模型只能有单输入单输出,函数式模型可以有多个输入输出
因为是继承, model对象有 container和layer的所有方法,可以用model对象访问下面三个类的所有方法
以上的具体区别,可以参考Keras教程:https://keras.io/zh/
Container的类属性
类属性,不是函数
name
inputs
outputs
input_layers
output_layers
input_spec
trainable (boolean)
input_shape
output_shape
inbound_nodes: list of nodes
outbound_nodes: