Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/iphone/43.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 使用随机初始化权重进行0次训练后会出现什么情况?_Python_Tensorflow_Deep Learning - Fatal编程技术网

Python 使用随机初始化权重进行0次训练后会出现什么情况?

Python 使用随机初始化权重进行0次训练后会出现什么情况?,python,tensorflow,deep-learning,Python,Tensorflow,Deep Learning,我正在对我的网络进行MNIST培训。在经历了一些时代之后,它真的学得很好。我正在使用初始化,就像Tensorflow Tuto中的一样: def weight_variable(shape): initial = tf.truncated_normal(shape, stddev=0.1) return tf.Variable(initial) def bias_variable(shape): initial = tf.constant(0.1, shape=shape) r

我正在对我的网络进行MNIST培训。在经历了一些时代之后,它真的学得很好。我正在使用初始化,就像Tensorflow Tuto中的一样:

def weight_variable(shape):
  initial = tf.truncated_normal(shape, stddev=0.1)
  return tf.Variable(initial)

def bias_variable(shape):
  initial = tf.constant(0.1, shape=shape)
  return tf.Variable(initial)
而且,当我不训练它时,我总是得到相同的预测(使用softmax),比如:

我显然根本没想到它会分类得很好

但我希望有随机预测,而不总是相同的预测

这种行为是预期的吗


谢谢

如果您使用的tensorflow图已使用未经训练的随机权重初始化,则结果很可能都是一个类

让我们用XOR来探索这一点:2个输入,3个隐藏单元,1个输出

W1_shape = [2,3] # in the range [-.1,.1]
b1_shape = [3]   # initialized to .1

W2_shape = [3,1] # in the range [-.1,.1]
b2_shape = [1]   # initialized to .1
示例值为

W1 [[-0.06278145 -0.01198458  0.12907881]
 [ 0.04213665  0.03700039 -0.05857842]]

b1 0.1

W2 [[ 0.14718919]
 [ 0.08633115]
 [ 0.10883235]]

b2 0.1
这导致XOR总是报告稍微正确

在运行初始化10次之后,结果总是相同的,对于XOR的所有情况都略微正确


但是,如果我将b1b2更改为0.001,则输出要么略为真,要么略为假,但对于特定的初始化,没有混合。从权重来看,很明显,一些权重压倒了整个图表。这些权重只需几次训练迭代就可以很快调整好。

很抱歉我误解了你的问题,你能粘贴一些复制错误的代码吗?否pb:)我不知道这是否是错误。如果我随机初始化我的权重,我不应该得到像[[0.14,0.08,0.03,0.12,0.15,0.9,]]这样的分数(我称之为随机分数?我可能不是一个错误,但如果不是,我想了解原因:)好的,我也在想,你给了我一个具体而简单的例子,谢谢你!)事实上,当我在训练时,它会很快给我带来更好的结果(我想他们是,就像你说的,“被纳入到队列中”,谢谢Adam optimizer:)
W1 [[-0.06278145 -0.01198458  0.12907881]
 [ 0.04213665  0.03700039 -0.05857842]]

b1 0.1

W2 [[ 0.14718919]
 [ 0.08633115]
 [ 0.10883235]]

b2 0.1