简单示例,一个用 CNN 识别 MNIST 手写数字的模型。数据是 60,000 张训练和 10,000 张测试的 28×28 灰度图,先归一化到 0-1,再加通道。模型用两层卷积(32 和 64 个滤波器)提取特征,两层池化缩小尺寸,再展平后用两个全连接层(128 和 10 个神经元)输出概率。训练 5 轮,用 adam 优化,损失是交叉熵。
import tensorflow as tf
import numpy as np
# 1. 加载MNIST 数据集
(x_train, y_train), (x_test, y_test) = tf.keras.datasets.mnist.l[......]