【蜂口 | AI人工智慧】caffe框架的使用——龍鵬的一站式caffe工程實踐連載(三)
知識引入
這一次我將給大家帶來Caffe基本使用的一個分享。本次分享將包含以下幾個內容,首先Caffe的框架的介紹,我們將簡單介紹一下Caffe框架的一些基本資訊。然後介紹Caffe的基本使用,包含資料格式等等。接下來我們再詳細的分析一下Caffe的一個網路配置檔案。最後我們將詳細的介紹一下Caffe訓練的引數。
Caffe基本資訊
Caffe,它是一個以C++和Cuda程式碼為主的一個開源框架。筆者比較推薦這樣的一個開源框架進行學習,因為對於初學者來說,他可以接觸到大量非常優秀的CI的程式碼,這對於大家鞏固自己的程式碼基礎是非常有用的。Caffe這個框架非常的靈活,它可以支援命令列python和Matlab等介面。多機多卡的使用也非常方便, GPU和CPU的切換也是非常的靈活。Caffe的開發者大家想必不陌生,賈揚清他在知乎上面也是一個大V,另外它還有一個另外的一個核心開發者,大家可以去Github上面關注一下他。
支援 Caffe的主要平臺
包括Linux mac,windows。筆者比較用的比較多的是Linux。
Caffe的依賴環境
Caffe依賴的開源庫比較多,包括Cuda、Protobuf、Opencv等等。
Cuda是一個用於加速GPU訓練的一個庫。Protobuf是用於做序列化檔案的,Opencv是一些資料讀取介面,更多的這個依賴環境,我們在前面Caffe的編譯,一種詳細的說明,大家可以回過頭去看。筆者非常喜歡Caffe這個開源框架的一個主要原因,是因為Caffe將資料和網路的定義與訓練和測試程式碼進行了完整的分離。
與 Tensorflow對比
當我們使用Tensorflow這樣一個框架的時候,我們一般會將資料的讀取,網路的配置,網路的訓練和測試,完整地寫在一個Python檔案裡面。在筆者看來,這裡顯得有點混亂,不夠靈活。而Caffe不一樣,Caffe將資料和網路定義寫在了一個網路配置檔案裡面,將訓練和測試程式碼與之完全進行分離。具體來說,我們使用Caffe是這樣的一個流程,首先我們準備好資料,它可以是Image的格式或者Lmdb的格式,然後我們定義好網路的檔案,包含網路結構的配置,以及輸入資料的路徑的配置。然後我們定義好一些訓練引數,包括學習率最佳化方法等等。最後我們使用一些介面進行訓練和測試,可以使用C++介面或者Python介面或者Matlab介面。
Caffe使用流程
主要包括以下四個步驟,如下圖所示:
專案裡我們會解讀 Caffe的資料格式。其實現在主流的開源框架,採用的資料儲存格式都是類似的,他們都是採用一個四維張量來進行儲存,這也符合卷積神經網路的資料格式的基本要求。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31553577/viewspace-2214499/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 【蜂口 | AI人工智慧】caffe模型訓練——龍鵬的一站式caffe工程實踐連載(七)AI人工智慧模型
- 【蜂口 | AI人工智慧】caffe新增新網路層——龍鵬的一站式caffe工程實踐連載(四)AI人工智慧
- 【蜂口 | AI人工智慧】搭建caffe依賴環境——龍鵬的一站式caffe工程實踐連載(一)AI人工智慧
- 【蜂口 | AI人工智慧】模型測試——龍鵬的一站式caffe工程實踐連載(八)AI人工智慧模型
- 【蜂口 | AI人工智慧】影像分割要點梳理——龍鵬的一站式caffe工程實踐連載(九)AI人工智慧
- 【蜂口 | AI人工智慧】模型選擇與設計——龍鵬的一站式caffe工程實踐連載(六)AI人工智慧模型
- 【蜂口 | AI人工智慧】影像分割的關鍵技術——龍鵬的一站式caffe工程實踐連載(五)AI人工智慧
- 【蜂口 | AI人工智慧】資料準備的完整過程——龍鵬的一站式caffe工程實踐連載(二)AI人工智慧
- 【蜂口 | AI人工智慧】關鍵點檢測——龍鵬 深度學習與人臉影像應用連載(三)AI人工智慧深度學習
- 【蜂口 | AI人工智慧】表情識別——龍鵬 深度學習與人臉影像應用連載(七)AI人工智慧深度學習
- 【蜂口 | AI人工智慧】人臉年齡——龍鵬 深度學習與人臉影像應用連載(六)AI人工智慧深度學習
- 【蜂口 | AI人工智慧】人臉顏值——龍鵬 深度學習與人臉影像應用連載(五)AI人工智慧深度學習
- 【蜂口 | AI人工智慧】人臉檢測(上)——龍鵬 深度學習與人臉影像應用連載(一)AI人工智慧深度學習
- caffe整體框架的學習的部落格,這個部落格山寨了一個caffe框架框架
- 基於CPU版本的Caffe推理框架框架
- 【Caffe篇】--Caffe solver層從初始到應用
- MXnet轉caffe
- (14)caffe總結之Linux下Caffe如何除錯Linux除錯
- LeNet簡介以及Caffe實現
- caffe中各種cblas的函式使用總結函式
- caffe make 編譯編譯
- opencv呼叫caffe模型OpenCV模型
- 【Caffe篇】--Caffe從入門到初始及各層介紹
- 【caffe2從頭學】:2.學習caffe2
- 《深度學習:21天實戰Caffe》深度學習
- Caffe轉mxnet模型——mmdnn模型DNN
- Caffe轉mxnet模型——mxnet工具模型
- 執行caffe自帶的mnist例項教程
- Ubuntu 16 04 編譯 Caffe SSDUbuntu編譯
- Ubuntu 16.04 下安裝配置caffeUbuntu
- caffe的python介面caffemodel引數及特徵抽取示例Python特徵
- (8)caffe總結之solver及其配置
- (11)caffe總結之命令列解析命令列
- caffe的python介面繪製loss和accuracy曲線示例Python
- 深度學習框架Caffe2併入PyTorch,你的開發效率可能要提升不少深度學習框架PyTorch
- Caffe-SSD-Ubuntu16-04-訓練自己的資料集Ubuntu
- Caffe SSD Ubuntu16 04 訓練自己的資料集Ubuntu
- caffe網路各層引數詳解