【发布时间】:2017-12-28 09:42:11
【问题描述】:
我有一个使用 Tensorflow 的 DNN,它工作得很好。我的问题是关于权重初始化,这里是它发生的代码部分:
def train(numberOfFeatures,numberOFclasses):
#sesssion definition
sess = tf.InteractiveSession()
#input Placeholder
with tf.name_scope('input'):
x =tf.placeholder(tf.float32,[None,numberOfFeatures],name='Features_values')
y_=tf.placeholder(tf.float32,[None,numberOFclasses],name='predictions')
#Weights initialization
def weight_variable(shape):
return tf.Variable(tf.truncated_normal(shape,stddev=0.1))
def bias_variable(shape):
return tf.Variable(tf.constant(0.1,shape=shape))
# define variable summaries
def variable_summaries(var):
with tf.name_scope('summaries'):
mean = tf.reduce_mean(var)
tf.summary.scalar('mean',mean)
with tf.name_scope('stddev'):
stddev = tf.sqrt(tf.reduce_mean(tf.square(var - mean)))
tf.summary.scalar('stddev', stddev)
tf.summary.scalar('max', tf.reduce_max(var))
tf.summary.scalar('min', tf.reduce_min(var))
tf.summary.histogram('histogram', var)
查看函数 tf.truncated_normal 的文档,我应该得到大约 -0.1 和 +0.1 的值,但事实并非如此,如下所示
所以我的问题是我在这里缺少什么?
提前致谢!
【问题讨论】:
标签: python tensorflow