【AI算法推荐】:tensorflow2.0建模教程系列产品

99封情书 提交于 2019-11-30 05:53:18

【AI算法推荐】:tensorflow2.0建模教程系列产品

【阅读推荐】

在tensorflow2.0模型系列产品实例教程中,前四节人们用编码演译了:

系列产品1:怎样用tf2.0开展自定层互联网的布置(add.weight)

系列产品2:怎样用tf2.0开展自定实体模型的布置(Model)

系列产品3:怎样用tf2.0保持loss涵数和主要参数调优(loss gradient optimizer)

系列产品4:.怎样用tf2.0保持损失函数正则化,处理实体模型过拟合难题

前边几章节目录,人们重中之重学了怎样用tensorflow2.0进行自定层和互联网实体模型的布置。从这节起,将领着大伙儿把握tf2.0方便快捷的建模工具API——tensorflow.keras 。

Keras 是1个用以搭建和训炼深度神经网络实体模型的进阶 API。它可用以迅速布置原形、高級科学研究和生产制造。相对性于自定布置层和互联网,应用tf.keras 更为方便快捷,专业化,便于拓展。普遍的LSTM/RNN/Conv2D等神经元网络都包括在 keras.layer 中。

《一 根据keras的简单网络设计模型》

keras.sequential()层互联网的层叠,keras.Sequential实体模型

model = tf.keras.Sequential()

model.add(layers.Dense(32, activation=‘relu’))

model.add(layers.Dense(32, activation=‘relu’))

model.add(layers.Dense(10, activation=‘softmax’))

model.compile(optimizer=tf.keras.optimizers.Adam(0.001),

loss=tf.keras.losses.sparse_categorical_crossentropy,

metrics=[tf.keras.metrics.categorical_accuracy])

注释:

1.在其中Sequential() 用以创建编码序列实体模型

2.Dense 层为全连接层,设置32个神经细胞。

3.activation设定层的激话涵数,激话涵数通常应用 relu。避免在主要参数调优测算全过程中梯度方向消退。

4.最后全连接层是预测分析用的,激话涵数应用 softmax,获得对每个类型预测分析的几率。

5.提升器挑选 Adam 提升器.

《二 根据keras搭建实体模型的高級涵数API》

tf.keras.Sequential 实体模型是层的简易层叠,人们可以应用 Keras 涵数式 API 搭建繁杂的实体模型:

model = tf.keras.Model(inputs=input_x, outputs=pred)

1最先界定键入张量,假如是照片统计数据28*28,能够应用layers.flatten(28,28)进行清晰度。

2.定义互联网实体模型等级涵数,每一层层布置界定清晰后做为下层启用的张量,具有涵数迭代更新的功效。

3.最后融合键入张量和輸出张量,明确出tf.keras.Model 案例。

4.训炼方法和 Sequential 实体模型相同,model.fit()方式

input_x = tf.keras.Input(shape=(328,))

hidden1 = layers.Dense(32, activation=‘relu’)(input_x)

hidden2 = layers.Dense(16, activation=‘relu’)(hidden1)

pred = layers.Dense(10, activation=‘softmax’)(hidden2)

model = tf.keras.Model(inputs=input_x, outputs=pred)

model.compile(optimizer=tf.keras.optimizers.Adam(0.001),

loss=tf.keras.losses.categorical_crossentropy,

metrics=[‘accuracy’])

model.fit(train_x, train_y, batch_size=32, epochs=5)

http://caishendaka.cn/index.php?upcache=1

或许Keras也有这种界定model极其简约的方法,编码实例给出:

model = tf.keras.models.Sequential([

tf.keras.layers.Flatten(input_shape=(28, 28)),

tf.keras.layers.Dense(128, activation=‘relu’),

tf.keras.layers.Dropout(0.3),

tf.keras.layers.Dense(10, activation=‘softmax’)

])

model.compile(optimizer=‘adam’,

loss=‘sparse_categorical_crossentropy’,

metrics=[‘accuracy’])

return model

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!