Python 基于张量流的卷积神经网络
我正在使用Tensorflow构建一个CNN模型,不使用任何前端API,比如Keras。我正在创建一个VGG-16模型,使用预先训练好的权重,并希望微调最后一层以满足我的目的 按照这里的教程, 我重新创建了培训脚本,并根据我的要求进行了修改。但是,我的培训没有发生,培训准确率停留在50.00%,验证准确率正在形成重复数字的模式。 附加的是相同的截图 我已经在这上面呆了好几天了,似乎找不到错误。感谢您的帮助Python 基于张量流的卷积神经网络,python,tensorflow,deep-learning,conv-neural-network,Python,Tensorflow,Deep Learning,Conv Neural Network,我正在使用Tensorflow构建一个CNN模型,不使用任何前端API,比如Keras。我正在创建一个VGG-16模型,使用预先训练好的权重,并希望微调最后一层以满足我的目的 按照这里的教程, 我重新创建了培训脚本,并根据我的要求进行了修改。但是,我的培训没有发生,培训准确率停留在50.00%,验证准确率正在形成重复数字的模式。 附加的是相同的截图 我已经在这上面呆了好几天了,似乎找不到错误。感谢您的帮助 代码相当长,因此这里是相同的交叉熵是错误的,您正在将您的logits与您的logits的s
代码相当长,因此这里是相同的交叉熵是错误的,您正在将您的logits与您的logits的softmax进行比较 这: 应该是:
cross_entropy = tf.nn.softmax_cross_entropy_with_logits(logits=layer_fc2,
labels=y_true)
有些事情需要注意。我不会在某个数据点上进行训练,然后在同一个数据点上进行评估。这样做可能会使你的训练准确性产生偏差。需要注意的另一点是
tf.argmax(tf.softmax(logits))
与tf.argmax(logits)
感谢您的回复。我做了你在cross\u entropy
中建议的更改。但训练准确率仍停留在50.00%,验证acc形成了一个重复的模式。我的代码中还有其他错误吗?请看一下@thomas Pinetz在这种情况下,我所做的是查看模型的输入和输出。如果这些测试的输出与训练的精度相匹配,我将查看梯度。它们是0还是什么可怕的东西?我想看看损失函数。我很难在这么长的代码中发现错误,但却无法运行它。我也看过TensorBoard图。这些层似乎没有连接。在代码中,1的输出层是另一个的输入层。但是,尚未建立连接。你能解释一下吗?
cross_entropy = tf.nn.softmax_cross_entropy_with_logits(logits=layer_fc2,
labels=y_true)