Keras: 是一个用Python编写的深度学习API,运行在机器学习平台TensorFlow之上。它的开发重点是实现快速实验, 类似于把tensorflow各个模块都集成为一个软件工具包,直接调用就行,简单方便。在这篇文章中,我们将构建一个简单的卷积神经网络(CNN),并训练它用Keras训练和识别MNIST手写数据集。
MNIST: 手写数字图片数据集
CNN: 卷积神经网络
本示例使用的CNN一共有三层神经网络,卷积层(conv),池化层(pooling),全连接层(fullyconnect)
下图的意思是:
MNIST数据集中的每个图像为28x28,并包含一个居中的灰度数字。我们的CNN将获取一幅图像并输出10个可能的类中的一个(每个数字对应一个类)。
conv: 对于我们的MNIST CNN,我们将使用一个带有8个过滤器的小会话层作为我们网络中的初始层。这意味着它将把28x28的输入图像变成26x26x8的输出体积,输出是26x26x8而不是28x28x8,因为我们使用了有效的填