【问题标题】:How can I plot the log file?如何绘制日志文件?
【发布时间】:2017-01-24 12:17:19
【问题描述】:

有谁知道在 Caffe 中绘制获得的度量的任何函数?我想在一个图中绘制火车损失、测试损失和准确性、火车移动平均值等。除了 Caffe 自带的功能,还有什么功能可以在线使用吗?

编辑: 首先,我运行parse_log.py文件(以下命令):

$python /path/to/caffe/tools/extra/parse_log.py /logfile_path/logfile.log /output_dir

根据日志文件创建了两个文件(lofile.log.trainlogfile.log.test)。之后,我运行了plot_training_log.py 文件。它有如下选项:

    0: Test accuracy  vs. Iters
    1: Test accuracy  vs. Seconds
    2: Test loss  vs. Iters
    3: Test loss  vs. Seconds
    4: Train learning rate  vs. Iters
    5: Train learning rate  vs. Seconds
    6: Train loss  vs. Iters
    7: Train loss  vs. Seconds

每当我选择选项 3 时,它都会显示下图: 并通过选择选项 0 但是,每当我想绘制火车损失图时,它都会给出错误:

$python /path/to/caffe/tools/extra/plot_training_log.py.example 6 /output_dir/train_loss_cnn1.png ./logfile.log
Traceback (most recent call last):
  File "/home/ss/caffe-master/tools/extra/plot_training_log.py.example", line 191, in <module>
    plot_chart(chart_type, path_to_png, path_to_logs)
  File "/home/ss/caffe-master/tools/extra/plot_training_log.py.example", line 117, in plot_chart
    data = load_data(data_file, x, y)
  File "/home/ss/caffe-master/tools/extra/plot_training_log.py.example", line 88, in load_data
    data[1].append(float(fields[field_idx1].strip()))
ValueError: invalid literal for float(): 0.522037s/50

我的问题可以分为三个部分:

  1. 图表是否正确?网络表现良好吗?
  2. 此错误源于何处?我在logfile.log.train (#Iters|Seconds |TrainingLoss |LearningRate) 中有以下列。

  3. 如何在一张图中显示所有图表类型?我尝试用逗号将它们包括在内,例如 0,2,3,6,但是它显示错误。

非常感谢。

【问题讨论】:

    标签: machine-learning neural-network deep-learning caffe pycaffe


    【解决方案1】:

    看看$CAFFE_ROOT/tools/extra中的parse_log.py
    这个 python 实用程序有助于从 caffe 运行日志中解析和提取信息。

    【讨论】:

    • 谢谢Shai,这个我以前试过,它只需要一个数字来分别显示不同的情节。例如,通过写数字 6 仅绘制火车损失。再次感谢
    • @S.EB 这个工具是通用的,你可以调整它来满足你的确切需求。
    【解决方案2】:

    通过执行以下命令开始训练您的模型:

    /home/ubuntu/caffe/build/tools/caffe train --solver /home/ubuntu/yourpath/solver.prototxt 2>&1 | tee /home/ubuntu/yourpath/model_train.log
    

    训练日志将存储在 yourpath/model_train.log 下。

    【讨论】:

      【解决方案3】:

      我没有看过caffe 的内置剧情脚本,但我使用了here 中的脚本。这只会绘制您的训练/测试损失,但您可以添加移动平均计算。

      【讨论】:

      • 非常感谢您的链接
      【解决方案4】:

      考虑同时安装DIGITS,它提供了显示所有此类内容的实时绘图。

      【讨论】:

      • 感谢您的评论,DIGITS 到底是什么?它像 Caffe 的图形用户界面吗?如何将它安装在我安装了 Caffe 的设备上?谢谢
      • 是的,它或多或少是 caffe 的 GUI。它在数据集和模型管理和组织方面非常方便,而且具有实时绘图功能,可以在训练期间真正节省您的时间。另一个有趣的功能是可以使用给定的图像作为输入来可视化每一层的输出。如果您访问我在上面发布的 GitHub 存储库,您将看到安装指南。不幸的是,它不适用于 Caffe 可用的所有平台。
      猜你喜欢
      • 2012-11-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-08-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-10-28
      相关资源
      最近更新 更多