程序
下面的例子是两层全连接网络,实现手写数字识别的案例。
from tensorflow.examples.tutorials.mnist import input_data
import tensorflow as tf
import os
os.environ["TF_CPP_MIN_LOG_LEVEL"] = "2" # 忽略tensorflow警告信息
mnist = input_data.read_data_sets('MNIST_data',one_hot=True)
batch_size = 100
n_batch = mnist.train.num_examples // batch_size
lr = 0.01
#初始化
#命名空间
with tf.name_scope("input"):
x = tf.placeholder(tf.float32,[None,784],name='x')
y_ = tf.placeholder(tf.float32,[None,10],name='y_')
#创建网络
with tf.name_scope('Layer1'):
with tf.name_scope('weight1'):
w1 = tf.Variable(tf.truncated_normal([784,500]),name='w1')
with tf.name_scope("biases"):
b1 = tf.Variable(tf.zeros([500]),name='b1')
with tf.name_scope("y1"):
y1 = tf.nn.tanh(tf.matmul(x,w1)&