(案例):CNN卷积神经网络实现手写数字识别以及模型保存、加载
from tensorflow.examples.tutorials.mnist import input_data
import tensorflow as tf
获取数据
mnist=input_data.read_data_sets(’./data’,one_hot=True)
功能函数:产生权重变量
def weight_variable(shape):
#产生位于正态分布均值=0.1附近的随机数
weight=tf.Variable(tf.truncated_normal(shape,stddev=0.1))
return weight
功能函数:产生偏置变量
def bias_variable(shape):
bias=tf.Variable(tf.constant(0.0,shape=shape))
return bias
功能函数:卷积计算:x表示输入的图片信息矩阵,w表示卷积核的值,即权重的个数,b是偏置
def conv(x,w,b):
return tf.nn.conv2d(x,w,strides=[1,1,1,1],padding=‘SAME’)+b
功能函数:最大池化计算,减少图片维度
def max_pool(x):
return tf.nn.max_pool(x,ksize=[1,2,2,1],strides=[1,2,2,1],padding=‘SAME’)
预定义