CNN的原理这里就不介绍了,如果想要了解详细的原理可以参考链接
本文注重的是CNN在TensorFlow中是如何实现的。CNN可以用图片表示为(仅供想象用,但不是本文使用的模型的图片表示):
下面结合代码具体解释。
from tensorflow.examples.tutorials.mnist import input_data
print('数据加载...')
mnist=input_data.read_data_sets('./data/mnist',one_hot=True)
# 可以看到返回的是Datasets类型,包含了训练集、验证集、测试集
#return base.Datasets(train=train, validation=validation, test=test)
print('图片表示示例:')
print(mnist[0].images[0])
print('标签表示示例:')
print(mnist[0].labels[0])
img_count_train=len(mnist[0].images)
img_array_train=len(mnist[0].images[0])
img_label_train=len(mnist[0].labels[0])
print('训练集有%s张图片,每张图片表示为%s维数组,标签以one-hot方式编码为%s维数组。'%(img_count_train,img_array_train,img_label_train))
img_count_validation=len(mnist[1].images)
img_array_validation=len(mnist[