如何利用caffe自带的工具包绘制accuracy/loss曲线
来源:互联网 发布:淘宝上如何关闭花呗 编辑:程序博客网 时间:2024/05/16 05:26
在训练过程中画出accuracy 和loss曲线能够更直观的观察网络训练的状态,以便更好的优化网络的训练。本文主要介绍在基于caffe框架训练网络时,如何利用caffe自带的一些实用的工具包来绘制曲线。
step1:保存日志文件
在训练过程中把终端输出的结果保存为一个日志文件,注意文件的后缀名必须是.log,这是因为后面再解析日志文件时有这个要求。如何把终端保存到日志文件,例子如下:
$TOOLS/caffe train --solver=$SOLVERFILE 2>&1 |tee out.log
step2:解析日志文件
这一步利用caffe中tools/extra文件夹下的parse_log.py来解析日志文件。具体例子如下:
python parse_log.py out.log ./ #两个参数,一个是日志文件,另一个是保存的路径
运行结束之后会发现在你保存的路径中会生成两个文件out.log.train和out.log.test
step3:绘制accuracy 和loss曲线。
利用caffe中tools/extra文件夹下的plot_training_log.py文件来绘制。
python plot_training_log.py 2 testloss.png out.log
这里要解释下,如果你直接运行这个是会报错的。因为在out.log.test文件是这样的。
NumIters,Seconds,TestAccuracy,TestLoss0.0,2.318823,-1,0.360432200.0,10.975734,-1,0.0757681400.0,19.634317,-1,0.0610909600.0,28.295885,-1,0.0554078800.0,36.953475,-1,0.05106061000.0,45.644651,-1,0.0463909
load_data的时候第一行是不读的,要么你自己第一行加个#,要么就直接不读第一行。另外在split的时候不是用空格而是用‘,’因此做如下修改。
def load_data(data_file, field_idx0, field_idx1): data = [[], []] with open(data_file, 'r') as f: num=len(f) for line_num in range(1,num):#此处修改 line = f[line_num].strip() #if line[0] != '#':#此处修改 fields = line.split(',')#此处修改 data[0].append(float(fields[field_idx0].strip())) data[1].append(float(fields[field_idx1].strip())) return data
上面还有个地方需要解释就是那个2是什么意思,这个你直接运行下python plot_training_log.py就会打出帮助信息,就能看见了。
以上就是利用caffe自带的工具包绘制曲线的方法。
0 0
- 如何利用caffe自带的工具包绘制accuracy/loss曲线
- linux系统下如何使用caffe自带的工具绘制loss和accuracy曲线
- caffe使用自带的工具绘制accuracy和loss曲线
- caffe 绘制loss/ accuracy曲线
- caffe绘制loss,accuracy曲线
- caffe 利用python绘制loss曲线以及accuracy曲线
- caffe自带工具绘制训练accuracy、loss曲线
- 使用caffe自带的工具绘制loss函数曲线
- Caffe学习:绘制loss和accuracy曲线(使用caffe工具包)
- caffe绘制训练过程的loss和accuracy曲线
- caffe绘制训练过程的loss和accuracy曲线
- caffe绘制训练过程的loss和accuracy曲线
- caffe绘制训练过程的loss和accuracy曲线
- Caffe的可视化训练:绘制loss和accuracy曲线
- caffe绘制训练过程的loss和accuracy曲线
- caffe的python接口:绘制loss和accuracy曲线
- caffe绘制训练过程的loss和accuracy曲线
- caffe绘制训练过程的loss和accuracy曲线
- 补间动画
- 勇敢爱
- Android studio gradle配置
- 百度地图深度使用
- HttpClient 传输xml字符串
- 如何利用caffe自带的工具包绘制accuracy/loss曲线
- 在THinkPHP中使用pjax
- 摘要别人的 iOS小技巧
- 日常解决的细节
- iOS开发之计时器
- sqlserver 中临时表、临时变量和with as关键词创建“临时表”的区别
- 【Unity3D】游戏研发团队及岗位职责
- 如何生成内部hide接口实例并通过反射作为参数进行传递
- Windows Eclipse Hadoop 开发