本篇blog目的:展示如何使用tensorflow训练和评估一个简单的前馈神经网络。a simple feed-forward neural network 。面向一些有经验的机器学习人员。
使用的两个文件。
准备数据
1,使用MNIST的数据。
2,我们适应额外的两个占位符tf.placeholder。
images_placeholder = tf.placeholder(tf.float32, shape=(batch_size,
mnist.IMAGE_PIXELS))
labels_placeholder = tf.placeholder(tf.int32, shape=(batch_size))
一,构建图
通过使用mnist.py文件,我们有三段式的过程去创建一张图。inference(), loss(), and training()
1,inference()根据需要构建图,以便向前运行网络。
2,loss() 添加图所需要的损失操作。
3,training() 向损失图中,添加梯度计算的操作。
1,inference()
with tf.name_scope('hidden1'):
在每一层中,添加作用域,作用就是将每一层分开,方便参数命名,例如hidden1/weights,表示层下的参数。
weights = tf.Variable(
tf.truncated_normal([IMAGE_PIXELS, hidden1_units],
stddev=1.0 / math.sqrt(