(x, y), (x_val, y_val) = datasets.mnist.load_data()
print(‘datasets’, x.shape, y.shape, x.min(), y.min())
#训练集图像数据归一化到0-1之前
x = tf.convert_to_tensor(x, dtype=tf.float32) / 255.
#构建数据集对象
db = tf.data.Dataset.from_tensor_slices((x, y))
#批量训练,并行计算一次32个样本、所有数据集迭代20次
db = db.batch(32).repeat(10)
#构建Sequential窗口,一共3层网络,并且前一个网络的输出作为后一个网络的输入
model = keras.Sequential([
layers.Dense(256, activation=‘relu’),
layers.Dense(128, activation=‘relu’),
layers.Dense(10)
])
#指定输入大小
model.build(input_shape=(None, 28*28))
#打印出网络的结构和参数量
model.summary()
#optimizers用于更新梯度下降算法参数,0.01为学习率
optimizer = optimizers.SGD(lr=0.01)
#准备率
acc_meter = keras.metrics.Accuracy()
#创建参数文件
summary_writer = tf.summary.create_file_writer(‘/Users/qcr/tf_log’)
#循环数据集
for step, (xx, yy) in enumerate(db):<
tensorflow2 minist手写数字识别数据训练
最新推荐文章于 2024-09-20 15:53:33 发布