tensorflow实现python深度学习步骤——keras搭建网络八股class

搭建网络八股步骤

Import
Train, test
Class MyModel(Model) model=MyModel 搭建网络结构
Model.compile 配置训练参数,告知优化器、损失函数、评测指标
Model.fit 配置训练过程,告知训练集的输入特征和标签、batch、迭代次数
Model.summary

具体步骤

1.class MyModel(Model) model=MyModel
Class MyModel(Model):
def init(self):
super(MyModel,self).init()
定义网络结构块
def call(self,x)
调用网络结构块,实现前向传播
return y
model=MyModel()

2.Model.compile(optimizer=优化器,loss=损失函数,metrics=[“准确率”])
Optimizer可选:
‘sgd’ or tf.keras.optimizers.SGD(lr=学习率,momentum=动量参数)
‘sdagrad’ or tf.keras.optimizers.Adagrad(lr=学习率)
‘adadelta’ or tf.keras.optimizers.Adadelta(lr=学习率
‘adam’ or tf.keras.optimizers.Adam(lr=学习率,brta_1=0.9, beta_2=0.999)
Loss可选:
‘mse’ or tf.keras.losses.MeanSquaredError()
‘sparse_categorical_crossentropy’ or tf.keras.losses.SparseCategoricalCrossentropy(from_logits=False) from_logits=是否是原始概率分布,若经过softmax分类,为false
Metrics可选:
‘accuracy’: y_和y都是数值,y_=[1] y=[1]
‘categorical_accuracy’: y_和y都是独热码(概率分布),如y_=[0,1,0] y=[0.2,0.6,0.2]
‘sparse_categorical_accuracy’: y_是数值,y是独热码(概率分布),如y_=[1] y=[0.2,0.6,0.2]

3.Model.fit(训练集的输入特征,训练集的标签,batch_size=每次喂入数据网络的数据集,epochs=迭代多少次数据集,validation_data=(测试集的输入特征,测试集的标签),validation_split=从训练集中划分多少比例给测试集,validation_freq=多少次epoch测试一次)

猜你喜欢

转载自blog.csdn.net/weixin_44612221/article/details/114278976