张量流量 - 损失不减少

Arn*_*rto 2 python python-3.x keras tensorflow

最近,我一直试图复制这篇文章的结果,但使用TensorFlow而不是Keras.但是,我的模型丢失并没有像提供的代码那样收敛.我注意使用作者使用的相同参数,即使那些未明确显示的参数.我的完整代码可以在这里看到.

我已经尝试过不同的学习率,优化器和批量大小,但这些也不会对结果造成影响.

我在StackOverflow和StackExchange中发现了一些与此问题相关的其他问题,但大多数问题都没有答案.然而,答案中的问题没有帮助.

我正在使用TensorFlow 1.1.0,Python 3.6和Windows 10.

最奇怪的是我们拥有相同的数据库和相同的模型,但只是不同的框架.因此,它不应该给出完全不同的行为.有没有人有关于我应该尝试解决这个问题的建议,好吗?

Rya*_*out 7

我运行你的代码基本上没有修改,但我看了你的tf_labels和logits的形状,他们是不一样的.logits有shape(batch_size,1,1,1)(因为你使用的是1x1卷积滤镜)而tf_labels有形状(batch_size,1).我改变了你的损失线

    loss = tf.reduce_mean(tf.squared_difference(tf.squeeze(tf_labels),
           tf.squeeze(logits)))
Run Code Online (Sandbox Code Playgroud)

每个时代的损失减少了.