我正在训练一个11层完全卷积网络。输入是图像480x640x1,输出标签也是图像480x640x1。对于培训,我使用的是sparse_softmax_cross_entropy_with_logits()。但我得到的损失价值是NaN。我附上了我的代码片段以供参考。
x=tf.placeholder(tf.float32,(None,480,640,1))
y=tf.placeholder(tf.int32,(None,480,640,1))
logits=Model1(x)
loss=tf.reduce_mean(tf.nn.sparse_softmax_cross_entropy_with_logits(logits=logits,labels=tf.squeeze(y,squeeze_dims=[3])))
optimizer=tf.train.AdamOptimizer(learning_rate=lr)
Trainables=optimizer.minimize(loss)
因此,Model1返回一个形状的张量(6,480,640,1)(批量大小为6),y占位符为(6,480,640,1)。如何解决损失张量得到的NaN值?
答案 0 :(得分:0)
关于你为何得到NaN的一些初步想法:
1e-5
,看看它是怎么回事。这可能是因为你的学习率相对较高。