Advertisement

手写数字识别优化全连接网络

阅读量:

1.前向传播 mnist_forward.py

import tensorflow as tf

INPUT_NODE = 784 #28*28
OUTPUT_NODE = 10 #输出0~9
LAYER1_NODE = 500 #隐藏层节点个数

权值函数定义

def get_weight(shape,regularizer):
w = tf.Variable(tf.truncated_normal(shape,stddev=0.1))

对权重进行正则化处理,采用l2方法

if regularizer!=None:
tf.add_to_collection('losses',tf.contrib.layers.l2_regularizer(regularizer)(w))
return w

偏置值初始化函数

def get_bias(shape):
b = tf.Variable(tf.zeros(shape))
return b

构建前向传播网络,输入x 和正则参数

def forward(x,regularizer):
w1 = get_weight([INPUT_NODE,LAYER1_Node],regularizer)
b1 = get_bias([LAYER1_Node])
y1

全部评论 (0)

还没有任何评论哟~