Tensorflow:带有 logits 的 Softmax 交叉熵变为 inf

标签 tensorflow histogram

我正在处理 Tensorflow for poets教程。大多数情况下,训练失败并显示错误 Nan in summary histogram .
我对原始数据运行以下命令以重新训练:

python -m scripts.retrain   
   --bottleneck_dir=tf_files/bottlenecks   
   --model_dir=tf_files/models/   
   --summaries_dir=tf_files/training_summaries/"${ARCHITECTURE}"   
   --output_graph=tf_files/retrained_graph.pb   
   --output_labels=tf_files/retrained_labels.txt  
   --image_dir=/ml/data/images

此错误发生在 other mentions以及。我使用 tfdg 按照那里的说明进行操作,这让我有了更多的了解(见下文)。但是,我仍然被卡住了,因为我不知道为什么会发生这种情况,以及在没有太多 TF 和神经网络经验的情况下我可以做些什么来修复它。这尤其令人困惑,因为它发生在 100% 的教程代码和数据中。

这是 tfdg 的输出。第一次出现错误:

tfdg output for the node with the error
和节点的详细信息:

enter image description here

要查看重新训练脚本,您可以找到 Google 的原始代码 here .在我的情况下它没有被修改。抱歉没有包括它(字符太多)。

超参数和结果
有关其他信息:trainings 使用非常小的学习率值(例如使用 0,000001)。然而,这并没有带来好的结果。无论我训练了多少个 epoch,性能都保持在较低水平(可能在优化过程中陷入局部最小值)。

最佳答案

我也在 2.7 中搜索了兼容性,但它说 3.5 是现在所有最新 tensorflow 支持的最佳版本。所以我用python 3.5创建了虚拟环境。我认为这就是稳定性问题的原因。

关于Tensorflow:带有 logits 的 Softmax 交叉熵变为 inf,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48868919/

相关文章:

C++:获取2位数字的前一位

image-processing - 如何自动识别双峰直方图?

macos - 如果 TensorFlow 安装在 VM 上,它会在 Mac 上使用 GPU 吗?

python - 使用Tensorflow对图像进行分类时如何获取识别对象的像素矩阵?

python-3.x - 在 Keras 中添加隐藏层的格式。

python - TensorFlow 中的简单分类

python - 使用 scipy.stats.binned_statistic_2d 计算 2D 数据的多个统计数字

java - 获取灰度或黑白图像每个像素的像素值?

Python:快速/高效实现 Kullback Leibler 散度进行多重分布计算

python - U-net 低对比度测试图像,预测输出为灰框