caffe 安裝心得

2021-07-25 12:44:44 字數 3312 閱讀 2953

1.安裝依賴項部分

lib

有兩種:

一種是靜態庫,比如c-runtime庫,這種lib中有函式的實現**,一般用在靜態連編上,它是將lib中的**加入目標模組(exe或者dll)檔案中,所以鏈結好了之後,lib檔案就沒有用了;

一種lib是和dll配合使用的,裡面沒有**,**在dll中,這種lib是用在靜態呼叫dll上的,所以起的作用也是鏈結作用,鏈結完成了,lib也沒用了。至於動態呼叫dll的話,根本用不上lib檔案。 目標模組(exe或者dll)檔案生成之後,就用不著lib檔案了。

protobuf:序列化工具

leveldb:建立資料集用的

libopencv:影象處理用的

hdf5:儲存caffemodel用的

protobuf-compiler:libprotobuf-dev一起用的

總而言之:以上就是caffe整個框架用到的第三庫

$sudo apt-get install python-numpy python-scipy python-matplotlib

三個模組:numpy,scipy,matplotlib

參考:numpy:

來儲存和處理大型矩陣,比python自身的巢狀列表(nested list structure)結構要高效的多,本身是由c語言開發。這個是很基礎的擴充套件,其餘的擴充套件都是以此為基礎。資料結構為ndarray,一般有三種方式來建立:

a.python物件的轉換;

b.通過類似工廠函式numpy內建函式生成:np.arange,np.linspace.....;

c.從硬碟讀取,loadtxt.

scipy:

方便、易於使用、專為科學和工程設計的python工具包.它包括統計,優化,整合,線性代數模組,傅利葉變換,訊號和影象處理,常微分方程求解器等等

基本可以代替matlab,但是使用的話和資料處理的關係不大,數學系,或者工程系相對用的多一些。(略)

近期發現有個statsmodel可以補充scipy.stats,時間序列支援完美

matplotlib:

python中最著名的繪圖系統,很多其他的繪圖例如seaborn(針對pandas繪圖而來)也是由其封裝而成。創世人john hunter於2023年離世。這個繪圖系統操作起來很複雜,和r的ggplot,lattice繪圖相比顯得望而卻步,這也是為什麼我個人不丟棄r的原因,雖然呼叫

plt.style.use("ggplot")

繪製的圖形可以大致按照ggplot的顏色顯示,但是還是感覺很雞肋。但是matplotlib的複雜給其帶來了很強的定製性。其具有物件導向的方式及pyplot的經典高層封裝。

需要掌握的是:

散點圖,折線圖,條形圖,直方圖,餅狀圖,箱形圖的繪製。

繪圖的三大系統:pyplot,pylab(不推薦),物件導向

座標軸的調整,新增文字注釋,區域填充,及特殊圖形patches的使用

金融的同學注意的是:可以直接呼叫yahoo財經資料繪圖(真。。。)

2.禁止nouveau驅動

alt+ctrl+f1開啟tyy控制台

$sudo service lightdm stop

lightdm stop:關閉影象選項

service:

用於管理linux系統中的各種服務的命令。其實service是位於系統中/usr/sbin/service的乙個可執行的指令碼,service的本質是乙個可執行的指令碼,它的功能「不過是/etc/init.d/ 目錄下各種可執行指令碼的乙個為了方便呼叫而增加的乙個包裝而已。」

參考:service的結果我們知道:

1. service的格式:service script command [options]

也就是:

service    指令碼名      命令(stop/start/restart)     命令選項

2.  /etc/init.d/目錄下的指令碼至少要提供的兩條命令:stop、start

3. service 呼叫的命令的執行環境是可**的,一般只有兩到三個環境變數(lang, term, path).

$sudo update-initramfs –u   #

更新核心

$lspci | grep nouveau

lspci:乙個用來 顯示系統中所有pci匯流排裝置或連線到該匯流排上的所有裝置的工具。

pci是peripheral component interconnect(外圍裝置互聯)的簡稱,是普遍使用在桌面及更大型的計算機上的外設匯流排。

pci架構

被設計為isa標準的替代品,它有三個主要目標:獲得在計算機和外設之間傳輸資料時更好的效能;

盡可能的平台無關;

簡化往系統中新增和 刪除外設的工作。

$sudo ldconfig

ldconfig是乙個動態鏈結庫管理命令

為了讓動態鏈結庫為系統所共享,還需執行動態鏈結庫的管理命令--ldconfig

ldconfig  命令的用途,主要是在預設搜尋目錄(/lib和/usr/lib)以及動態庫配置檔案/etc/ld.so.conf內所列的目錄下,搜尋出可

共享的動態 鏈結庫(格式如前介紹,lib*.so*),進而建立出動態裝入程式(ld.so)所需的連線和快取檔案.快取檔案預設為

/etc/ld.so.cache,此檔案儲存已排好序的動態鏈結庫名字列表.

cudnn安裝

$sudo ln -sf libcudnn.so.5.1.5 libcudnn.so.5

$sudo ln -sf libcudnn.so.5 libcudnn.so

ln -sf 

-s = soft 軟鏈結

-f = force 強制建立(使用前請備份之前存在檔案)

拉取caffe原始碼

git clone ***.git  [指定目錄]

參考:

caffe安裝系列 安裝caffe

部落格新址 作業系統 ubuntu 14.04 gcc g 4.7.x opencv 2.4.11和3.0.0 matlab r2014b a python 2.7 安裝命令如下所示 解壓 tar zxvf glog 0.3.3.tar.gz 切換路徑 cd glog 0.3.3 sudo conf...

caffe安裝 caffe初體驗

在安裝完caffe,我的第乙個想法就是,別管他是個啥東西,總得先讓我執行一些看一看吧.剛好,官方就準備了一些資料,供我們執行一下看一看使用.因為我是通過docker安裝的,所以沒有經歷網上所說的caffe安裝的繁瑣過程.在 data mnist 目錄下,有乙個 get mnist.sh 檔案,用來獲...

Caffe安裝 使用

caffe作為cnn的乙個具體部署開源 框架,已經被眾多實驗室使用,其中比較多的有rcnn。本部落格旨在匯集一些關於理解caffe框架及部署過程的部落格,如果有不全面的地方請大家指正。關於如何閱讀caffe,這文章 中有比較好的總結提出。同時對於caffe的總體框架及各部件的關係及作用在 中給出了比...