国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

caffe的python插口制作loss和accuracy曲線圖

89542767 / 369人閱讀

  此篇文章主要是給大家介紹了caffe的python插口制作loss和accuracy曲線圖實例詳細說明,感興趣的小伙伴可以參考借鑒一下,希望可以有一定的幫助,祝愿大家多多的發展,盡早漲薪


  前言


  使用python插口來運行caffe程序流程,根本原因是python很容易數據可視化。所以才建議大家在cmd下邊運行python程序流程。如果一定要在cmd下邊運作,不如直接用c++算了。


  強烈推薦使用jupyternotebook,spyder等設備來運行python編碼,這樣也和它數據可視化完美融合在一起。


  anaconda庫


  我屬于用anaconda來組裝一連串python三方庫的,因此我所使用的是spyder,與matlab頁面類似的這款在線編輯器,在運行中,可以看一下各自變量數值,有利于了解,如下圖所示:

01.png

  只要安裝了anaconda,運行方式也非常方便,直接在終端輸入spyder命令就可以了。


  python接口實現


  在caffe的訓練過程中,我們如果想知道某個階段的loss值和accuracy值,并用圖表畫出來,用python接口就對了。


  #-*-coding:utf-8-*-
  """
  Created on Tue Jul 19 16:22:22 2016
  author:root
  """
  import matplotlib.pyplot as plt
  import caffe
  caffe.set_device(0)
  caffe.set_mode_gpu()
  #使用SGDSolver,即隨機梯度下降算法
  solver=caffe.SGDSolver('/home/xxx/mnist/solver.prototxt')
  #等價于solver文件中的max_iter,即最大解算次數
  niter=9380
  #每隔100次收集一次數據
  display=100
  #每次測試進行100次解算,10000/100
  test_iter=100
  #每500次訓練進行一次測試(100次解算),60000/64
  test_interval=938
  #初始化
  train_loss=zeros(ceil(niter*1.0/display))
  test_loss=zeros(ceil(niter*1.0/test_interval))
  test_acc=zeros(ceil(niter*1.0/test_interval))
  #iteration 0,不計入
  solver.step(1)
  #輔助變量
  _train_loss=0;_test_loss=0;_accuracy=0
  #進行解算
  for it in range(niter):
  #進行一次解算
  solver.step(1)
  #每迭代一次,訓練batch_size張圖片
  _train_loss+=solver.net.blobs['SoftmaxWithLoss1'].data
  if it%display==0:
  #計算平均train loss
  train_loss[it//display]=_train_loss/display
  _train_loss=0
  if it%test_interval==0:
  for test_it in range(test_iter):
  #進行一次測試
  solver.test_nets[0].forward()
  #計算test loss
  _test_loss+=solver.test_nets[0].blobs['SoftmaxWithLoss1'].data
  #計算test accuracy
  _accuracy+=solver.test_nets[0].blobs['Accuracy1'].data
  #計算平均test loss
  test_loss[it/test_interval]=_test_loss/test_iter
  #計算平均test accuracy
  test_acc[it/test_interval]=_accuracy/test_iter
  _test_loss=0
  _accuracy=0
  #繪制train loss、test loss和accuracy曲線
  print'nplot the train loss and test accuracyn'
  _,ax1=plt.subplots()
  ax2=ax1.twinx()
  #train loss->綠色
  ax1.plot(display*arange(len(train_loss)),train_loss,'g')
  #test loss->黃色
  ax1.plot(test_interval*arange(len(test_loss)),test_loss,'y')
  #test accuracy->紅色
  ax2.plot(test_interval*arange(len(test_acc)),test_acc,'r')
  ax1.set_xlabel('iteration')
  ax1.set_ylabel('loss')
  ax2.set_ylabel('accuracy')
  plt.show()


  最后生成的圖表在上圖中已經顯示出來了。


  綜上所述,這篇文章就給大家解答完畢了,希望可以給大家帶來幫助。

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/128756.html

相關文章

  • caffepython插口形成環境變量學習培訓

      此篇文章主要是詳細介紹了caffe的python插口形成環境變量學習培訓,感興趣的小伙伴可以參考借鑒一下,希望可以有一定的幫助,祝愿大家多多的發展,盡早漲薪  caffe是C++語言表達所寫的,可能大家不太熟,所以想要更方便的編程語言來達到。caffe給予matlab接口和python插口,這幾種語言表達就比較簡單,并且很容易開展數據可視化,導致學習培訓更為迅速,了解更加深刻。  一年前,我在...

    89542767 評論0 收藏0
  • caffepython插口之手寫數字識別mnist案例

      文中主要是給大家介紹了caffe的python插口之手寫數字識別mnist案例詳細說明,感興趣的小伙伴可以參考借鑒一下,希望可以有一定的幫助,祝愿大家多多的發展,盡早漲薪  論文引言  機器學習第一個案例一般都是是mnist,只需這個案例徹底搞懂了,其他的便是觸類旁通的事了。因為字數緣故,文中不簡單介紹環境變量里邊每一個指標的具體函義,如果要搞明白的,請參考我之前的微博文章:  數據訪問層及主...

    89542767 評論0 收藏0
  • caffepython接口deploy形成caffemodel歸類新圖片

      本文主要是給大家介紹了caffe的python插口生成deploy文件學習培訓及其用練習好一點的實體模型(caffemodel)來歸類新的圖片實例詳細說明,感興趣的小伙伴可以參考借鑒一下,希望可以有一定的幫助,祝愿大家多多的發展,盡早漲薪  caffe的python插口生成deploy文件  假如要將練習好一點的實體模型用于檢測新的圖片,那必然必須得一個deploy.prototxt文件,這一...

    89542767 評論0 收藏0
  • Python實現雙向RNN與堆疊雙向RNN示例代碼

      小編寫這篇文章的一個主要目的,主要是給大家做一個詳細的介紹,介紹的內容主要是利用Python知識,利用Python去實現RNN與堆疊的RNN,具體的實例代碼,下面就給大家詳細的去做一個解答?! ?、雙向RNN  雙向RNN(Bidirectional RNN)的結構如下圖所示?! ? 雙向的RNN是同時考慮過去和未來的信息。上圖是一個序列長度為4的雙向RNN結構?! ‰p向RNN就像是我們做閱...

    89542767 評論0 收藏0
  • caffepython插口形成solver文件詳細說明學習培訓

      本文主要是給大家介紹了caffe的python插口形成solver文件詳細說明學習培訓實例,感興趣的小伙伴可以參考借鑒一下,希望可以有一定的幫助,祝愿大家多多的不斷進步,盡早漲薪  也有一些基本參數必須計算出來的,并不是亂設定?! olver.prototxt的文件參數設置  caffe在訓練的時候,需要一些參數設置,我們一般將這些參數設置在一個叫solver.prototxt的文件里面,如...

    89542767 評論0 收藏0

發表評論

0條評論

最新活動
閱讀需要支付1元查看
<