序列化建模,一般步骤为:
1、实例化一个Sequential类,该类是继承于Model类;
2、添加所需要的神经网络层;
3、用compile进行编译模型;
4、用fitx训练模型;
5、用predict预测。
Sequential类的属性:
layers: (功能待查)
run_eagerly: 可设置属性,指示模型是否应该急切运行
sample_weights: 设置样本权重
state_updates: 更新所有有状态的图层并返回。这对于分离训练更新和状态更新很有用,例如,当我们需要在预测期间更新图层的内部状态时。
stateful:(功能待查)
Sequential类的方法:
add(): 添加图层,参数layer:图层实例, 对比类属性layers我们应该知道属性在实例化的时候是可以直接传入一个网络结构;
compile():编译模型
compile(
optimizer,
loss=None,
metrics=None,
loss_weights=None,
sample_weight_mode=None,
weighted_metrics=None,
target_tensors=None,
distribute=None,
**kwargs
)
evaluate(): 返回测试模式下模型的损失值
evaluate(
x=None,
y=None,
batch_size=None,
verbose=1,
sample_weight=None,
steps=None,
callbacks=None,
max_queue_size=10,
workers=1,
use_multiprocessing=False
)
这里大多数方法都是继承Model类,所以其方法和调用是一样的,这里不再重复,Model类的文档分析链接请点击,下面是不同的方法展示:
pop():删除模型的最后一层;
predict_classes():为输入样本生成类预测;
1 predict_classes(
2 x,
3 batch_size=32,
4 verbose=0
5 )
predict_proba():生成输入样本的类概率预测。
1 predict_proba(
2 x,
3 batch_size=32,
4 verbose=0
5 )