首页 文章

使用TensorFlow的卷积神经网络

提问于
浏览
-1

我正在使用Tensorflow构建CNN模型,而不使用任何前端API,如Keras . 我正在创建一个VGG-16模型并使用预先训练过的权重,并希望微调最后一层以满足我的目的 .

按照这里的教程,http://cv-tricks.com/tensorflow-tutorial/training-convolutional-neural-network-for-image-classification/我重新创建了训练脚本并根据我的要求进行了修改 . 但是,我的训练没有发生,训练精度停留在50.00%,验证准确性正在形成重复数字的模式 . 附件是相同的截图 .
terminal output of the training script

我已经被困在这几天了,似乎无法找到错误 . 任何帮助表示赞赏 .

代码很长,因此这是gist file

1 回答

  • 0

    您的交叉熵是错误的,您正在将您的logits与logits的softmax进行比较 .

    这个:

    cross_entropy = tf.nn.softmax_cross_entropy_with_logits(logits=layer_fc2,
                                                        labels=y_pred)
    

    应该:

    cross_entropy = tf.nn.softmax_cross_entropy_with_logits(logits=layer_fc2,
                                                        labels=y_true)
    

    有些事情需要注意 . 我不会训练一些数据点,然后在相同的数据点上进行评估 . 这样做可能会影响您的训练准确性 . 另一点需要注意的是 tf.argmax(tf.softmax(logits))tf.argmax(logits) 相同 .

相关问题