python 的 Keras函数式模型

2023-12-13 9:09:59 网络知识 匿名

比序贯模型要复杂,但是效果很好,可以同时/分阶段输入变量,分阶段输出想要的模型。

所以说,只要你的模型不是类似VGG一样

1,应用函数式模型的基本步骤

1,model.layers()添加层

2,model.compile()模型训练的BP模式设置

3,model.fit()模型训练参数设置+训练

4,evaluate()模型评估

5,predict()模型预测

2,常用Model属性

model.layers:组成模型图的各个层

model.inputs:模型的输入张量列表

model.outputs:模型的输出张量列表

1model=Model(inputs=,outputs=)

3,指定输入数据的shape

1inputs=Input(shape=(20,))

4,编译,训练,评估,预测等步骤与序贯式模型相同(这里不再赘述)

1compile(self,optimizer,loss,metrics=None,loss_weights=None,sample_weight_mode=None)

本函数按batch计算在某些输入数据上模型的误差,其参数有:

x:输入数据,与fit一样,是numpyarray或者numpyarray的list

y:标签,numpyarray

batch_size:整数,含义同fit的同名函数

verbose:含义与fit的同名函数,但是只能取0或者1

sample_weight:numpyarray,含义同fit的同名函数

本函数编译模型以供训练,参数有:

1evaluate(self,x,y,batch_size=32,verbose=1,sample_weight=None)

序贯模型和函数模型共同的API

model.summary():打印出模型的概况,它实际调用的是keras.utils.print_summary

model.get_config():返回包含模型配置信息的Python字典,模型也可以从config中重构回去。

config=model.get_config()

model=Model.from_config(config)

model=Sequential.from_config(config)

上面是分别对序贯模型和函数式模型载入config

model.get_layer():依据层名或下标获得层对象

model.get_weights():返回模型权重张量的列表,类型为numpy.array

model.set_weights():从numpyarray里载入给模型,要求数组与model.get_weights()一样

model.to_json():返回代表模型的JSON字符串,仅仅包含网络结构,不包含权重,可以从JSON字符串中重构模型

以上内容为大家介绍了python的Keras函数式模型,希望对大家有所帮助,如果想要了解更多Python相关知识,请关注IT培训机构:瀚银百科。

发表评论: