首頁 > 軟體

Caffe使用點滴記錄

2020-06-16 17:31:55

一、caffe 建立Python

因為caffe底層是用c++編寫的,所以我們有的時候想要新增某一個最新文獻出來的新演算法,正常的方法是直接編寫c++網路層,然而這個有個前提條件是必須對caffe的底層非常熟悉,c++的編寫達到一定的境界,才可靈活應用caffe,搞深度學習,走這條路對於菜鳥來說無疑很有難度。

好在caffe為我們提供了一個可以用python編寫新的網路層的方法,直接用python語言編寫新的網路層,然後在caffe的網路組態檔,稍作修改,就可以輕鬆容易建立新的網路層。其具體環境設定搭建過程如下:

1、編譯caffe的時候,不能直接使用make pycaffe,而是應該使用:


WITH_PYTHON_LAYER=1 make && make pycaffe2、編寫相關的網路層檔案python原始碼filename.py,同時需要在filename.py 編寫的時候,import caffe的時候,需要指向caffe所在的路徑目錄

3、把python原始碼檔案filename.py拷貝到caffe/python目錄下:

caffe/python/filename.py4、新增路徑變數:

sudo vim  ~/.bashrc
在最後輸入

export PYTHONPATH=/home/hjimce/tools/caffenewversion/python:$PYTHONPATH
重新啟動電腦.

5、呼叫的時候,參照層:

layer {
  type: 'Python'
  name: 'loss'
  top: 'loss'
  bottom: 'f2'
  bottom: 'label'
  python_param {
    # the module name -- usually the filename -- that needs to be in $PYTHONPATH
    module: 'filename'
    # the layer name -- the class name in the module
    layer: 'NormlizedMSE'
  }
  # set loss weight so Caffe knows this is a loss layer.
  # since PythonLayer inherits directly from Layer, this isn't automatically
  # known to Caffe
  loss_weight: 1
}

二、caffe關閉紀錄檔輸出訊息

可能對於演算法實驗階段來說,我們需要caffe執行網路的時候,列印網路的相關引數訊息。然而對於已經走向工程之路的caffe模型來說,我們有可能需要遮蔽那些沒用的輸出訊息,因此這個時候就需要用到caffe的訊息遮蔽。

1、在程式最開始執行地方,加入如下程式碼:

::google::InitGoogleLogging("hjimce");    //初始化 
FLAGS_stderrthreshold = ::google::ERROR;  //只列印ERROR級別資訊
2、在程式結束的時候加入程式碼:

google::ShutdownGoogleLogging();

Ubuntu 16.04下Matlab2014a+Anaconda2+OpenCV3.1+Caffe安裝 http://www.linuxidc.com/Linux/2016-07/132860.htm

Ubuntu 16.04系統下CUDA7.5設定Caffe教學 http://www.linuxidc.com/Linux/2016-07/132859.htm

Caffe在Ubuntu 14.04 64bit 下的安裝 http://www.linuxidc.com/Linux/2015-07/120449.htm

深度學習框架Caffe在Ubuntu下編譯安裝  http://www.linuxidc.com/Linux/2016-07/133225.htm

Caffe + Ubuntu 14.04 64bit + CUDA 6.5 設定說明  http://www.linuxidc.com/Linux/2015-04/116444.htm

Ubuntu 16.04上安裝Caffe http://www.linuxidc.com/Linux/2016-08/134585.htm

Caffe設定簡明教學 ( Ubuntu 14.04 / CUDA 7.5 / cuDNN 5.1 / OpenCV 3.1 )  http://www.linuxidc.com/Linux/2016-09/135016.htm

本文永久更新連結地址http://www.linuxidc.com/Linux/2016-09/135529.htm


IT145.com E-mail:sddin#qq.com