日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Faster-Rcnn的loss曲线可视化

發布時間:2024/9/21 编程问答 51 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Faster-Rcnn的loss曲线可视化 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
由于要寫論文需要畫loss曲線,查找網上的loss曲線可視化的方法發現大多數是基于Imagenat的一些方法,在運用到Faster-Rcnn上時沒法用,本人不怎么會編寫代碼,所以想到能否用python直接寫一個代碼,讀取txt然后畫出來,參考大神們的博客,然后總和總算一下午時間,搞出來了,大牛們不要見笑。

? ? ? ? 首先,在訓練Faster-Rcnn時會自己生成log文件,大概在/py-faster-rcnn/experiments/logs文件下,把他直接拿出來,放在任意位置即可,因為是txt格式,可以直接用,如果嫌麻煩重命名1.txt.接下來就是編寫程序了

一下為log基本的格式

I0530 08:54:19.183091 10143 solver.cpp:229] Iteration 22000, loss = 0.173712
I0530 08:54:19.183137 10143 solver.cpp:245] ? ? Train net output #0: rpn_cls_loss = 0.101713 (* 1 = 0.101713 loss)
I0530 08:54:19.183145 10143 solver.cpp:245] ? ? Train net output #1: rpn_loss_bbox = 0.071999 (* 1 = 0.071999 loss)
I0530 08:54:19.183148 10143 sgd_solver.cpp:106] Iteration 22000, lr = 0.001

通過發現,我們只需獲得?Iteration?和loss就行

[python] view plaincopy
  • #!/usr/bin/env?python??
  • import?os??
  • import?sys??
  • import?numpy?as?np??
  • import?matplotlib.pyplot?as?plt??
  • import?math??
  • import?re??
  • import?pylab??
  • from?pylab?import?figure,?show,?legend??
  • from?mpl_toolkits.axes_grid1?import?host_subplot??
  • ??
  • #?read?the?log?file??
  • fp?=?open('2.txt',?'r')??
  • ??
  • train_iterations?=?[]??
  • train_loss?=?[]??
  • test_iterations?=?[]??
  • #test_accuracy?=?[]??
  • ??
  • for?ln?in?fp:??
  • ??#?get?train_iterations?and?train_loss??
  • ??if?']?Iteration?'?in?ln?and?'loss?=?'?in?ln:??
  • ????arr?=?re.findall(r'ion?\b\d+\b,',ln)??
  • ????train_iterations.append(int(arr[0].strip(',')[4:]))??
  • ????train_loss.append(float(ln.strip().split('?=?')[-1]))??
  • ??????
  • fp.close()??
  • ??
  • host?=?host_subplot(111)??
  • plt.subplots_adjust(right=0.8)?#?ajust?the?right?boundary?of?the?plot?window??
  • #par1?=?host.twinx()??
  • #?set?labels??
  • host.set_xlabel("iterations")??
  • host.set_ylabel("RPN?loss")??
  • #par1.set_ylabel("validation?accuracy")??
  • ??
  • #?plot?curves??
  • p1,?=?host.plot(train_iterations,?train_loss,?label="train?RPN?loss")??
  • #p2,?=?par1.plot(test_iterations,?test_accuracy,?label="validation?accuracy")??
  • ??
  • #?set?location?of?the?legend,???
  • #?1->rightup?corner,?2->leftup?corner,?3->leftdown?corner??
  • #?4->rightdown?corner,?5->rightmid?...??
  • host.legend(loc=1)??
  • ??
  • #?set?label?color??
  • host.axis["left"].label.set_color(p1.get_color())??
  • #par1.axis["right"].label.set_color(p2.get_color())??
  • #?set?the?range?of?x?axis?of?host?and?y?axis?of?par1??
  • host.set_xlim([-1500,60000])??
  • host.set_ylim([0.,?1.6])??
  • ??
  • plt.draw()??
  • plt.show()??
  • 繪圖結果

    參考博客地址:

    http://blog.csdn.net/YhL_Leo/article/details/51774966

    總結

    以上是生活随笔為你收集整理的Faster-Rcnn的loss曲线可视化的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。