1
我想在激活函数内产生随机数,这样每次激活函数被调用时都会产生一个随机数。我尝试使用random.uniform和tf.random_uniform,但它只在编译时生成一个随机值,并且不会再发生变化。我怎样才能让它每次更新?张量流中的随机值
滑稽的事实: 当我创建使用tf.Variable(random.uniform(1,2))每次它就是所谓的价值函数稍大时间的变量,例如:
1.22069513798
1.22072458267
1.22075247765
1.22077202797
编辑: 的功能很简单 功能:
def activation(tensor):
alpha = tf.Variable(random.uniform(1,2))
return alpha*tensor,alpha
我会省略了神经网络中的所有行,但我只是把它作为:
act,alpha = activation(dense_layer+bias)
后来我通过简单地获得的价值:
[ts,c,alph]=sess.run([train_step,cost,alpha], feed_dict={xi: x_raw, yi: y_raw})
感谢
我说我的最后一次尝试的代码。我不认为你发布它发生了什么,因为我打印了数千次迭代,给了我相同的随机值:) – kuonb
是的,你在初始化期间将你的随机变量保存到变量alpha中。如果你想用新的随机值重新初始化,你可以做'sess.run(alpha.initializer)' –
它完美的工作!谢谢 : ) – kuonb