使用 Keras 进行深度学习 - 编译模型

编译使用一个名为 compile 的方法调用执行。

model.compile(loss='categorical_crossentropy', metrics=['accuracy'], optimizer='adam')

compile 方法需要几个参数。loss 参数指定为 'categorical_crossentropy' 类型。metrics 参数设置为 'accuracy',最后我们使用 adam 优化器来训练网络。此阶段的输出如下所示 −

compile method

现在,我们准备将数据输入到我们的网络。

加载数据

如前所述,我们将使用 Keras 提供的 mnist 数据集。当我们将数据加载到我们的系统中时,我们会将其分为训练数据和测试数据。通过调用 load_data 方法加载数据,如下所示 −

(X_train, y_train), (X_test, y_test) = mnist.load_data()

此阶段的输出如下所示 −

Loading Data

现在,我们将了解已加载数据集的结构。

提供给我们的数据是大小为 28 x 28 像素的图形图像,每个图像包含 0 到 9 之间的单个数字。我们将在控制台上显示前十张图像。执行此操作的代码如下所示 −

# 打印前 10 张图像
for i in range(10):

plot.subplot(3,5,i+1)
plot.tight_layout()
plot.imshow(X_train[i], cmap='gray', interpolation='none')
plot.title("Digit: {}".format(y_train[i]))
plot.xticks([])
plot.yticks([])

在 10 次计数的迭代循环中,我们在每次迭代中创建一个子图,并在其中显示来自 X_train 向量的图像。我们为来自相应 y_train 向量的每个图像添加标题。请注意,y_train 向量包含 X_train 向量中相应图像的实际值。我们通过调用两个方法 xticksyticks 并使用 null 参数来删除 x 和 y 轴标记。运行代码时,您将看到以下输出 −

Examining Data Points

接下来,我们将准备数据以将其输入到我们的网络中。