下面将逐步说明完成一个简单的神经网络所需的步骤.
1. 构造单层神经网络
首先构造一层使用tf.keras.layers.Dense
, 这里Dense
为全连接层.
import tensorflow as tf
l0 = tf.keras.layers.Dense(units=4, input_shape=[1])
l1 = tf.keras.layers.Dense(units=4)
l2 = tf.keras.layers.Dense(units=1)
-
units
表示输出的维数. -
input_shape
表示输入的维数, 这个参数在官方文档中并没有介绍, 如果删除也不影响后续的使用.
2. 确定神经网络的框架
model = tf.keras.Sequential([l0, l1, l2])
模型由l0
到l2
组成.
3. 构造误差函数
model.compile(loss='mean_squared_error',
optimizer=tf.keras.optimizers.Adam(0.1))
-
loss
为损失函数 -
optimizer
为优化函数, 默认为rmsprop, 这里设置为了Adam.
4. 训练
history = model.fit(celsius_q, fahrenheit_a, epochs=500, verbose=False)
这里fit
的第一选项为输入函数, 第二个选项为输出函数,
-
ephochs
表示迭代优化的次数.
5. 输出
训练之后, 使用网络进行输出为model.predict()
返回的参数直接调用l0.get_weights()
网友评论