0
我试图尽量减少与大小n*m
定义了一个变量张量的简单损失的问题是当我跑步时的优化,我有以下错误:Tensorflow:reduce_prod渐变破损?
ValueError: Shape() must have rank 1
好奇的是,如果不是tf.reduce_prod
我使用tf.reduce_sum
,它工作得很好,但损失的形状保持不变。 任何人都可以尝试这个,并告诉我,如果结果是在别处相同?
def someloss(a):
da=tf.reduce_prod(a,reduction_indices=1)
return tf.reduce_mean(tf.sqrt(tf.square(da)))
n=5
m=2
a=tf.Variable(tf.random_normal([n,m],mean=1.0, stddev=0.35))
cost=someloss(a)
opt = tf.train.AdamOptimizer().minimize(cost)
sess = tf.Session()
init = tf.initialize_all_variables()
with sess.as_default():
sess.run(init)
for i in range(100):
sess.run(opt)
不能重现... – sygi
它适合你吗?你没有错误? – user3575801
是的,它适用于我。 – sygi