Caffe Caffe框架初識

2021-08-15 22:40:19 字數 1307 閱讀 1095

caffe框架參考:

caffe上手參考:

makefile檔案內容梳理參考:

caffe?

caffe(convolution architecture for feature embedding),cnn工具箱,c++語言架構,支援cpu和gpu之間切換,支援python和matlab介面呼叫。

caffe優勢:

上手快:模型與相應優化都是以文字形式而非**形式給出。

速度快:能夠執行最棒的模型與海量的資料。

模組化:方便擴充套件到新的任務和設定上。

社群好:可以通過bsd-2參與開發與討論。

資料集的組織:

訓練集(training set):用於訓練網路;

驗證集(validation set): 訓練過程中測試網路準確率;

測試集(test set):測試訓練最終模型的準確率。

cnn的網路配置檔案:(以lenet為例)

lenet_train_test.prototxt:訓練引數配置檔案;

lenet_solver.prototxt:超引數配置檔案。

兩個初始學習訓練集:

minist(手寫字型識別資料集(handwritten digits)):

cifar dataset(小圖分類資料集):

caffe的重要元件:

blob:是資料傳輸的媒介,神經網路涉及到的輸入輸出資料,網路權重引數等等,其實都是轉化為blob資料結構來儲存的。

layer:是神經網路的基礎單元,層與層間的資料節點、前後傳遞都在該資料結構中被實現,這裡layers下實現了卷積層、激勵層,池化層,全連線層等等「積木元件」,豐富度很高。

net:是網路的整體搭建骨架,整合layer中的層級機構組成網路。

solver:是網路的求解優化策略,讓你用各種「積木」搭建的網路能最適應當前的場景下的樣本,如果做深度學習優化研究的話,可能會修改這個模組。

protobuf:google開發的一種可以實現記憶體與非易失儲存介質(如硬碟檔案)交換的協議介面。caffe原始碼中使用了大量的protocolbuffer作為權重和模型引數的載體。是開發者對引數管理的有效方式,便於模組整合,而且該工具可以跨語言進行資料結構傳遞。

caffe介面引數?

參考:

初識MVC框架

什麼是mvc?剛開始聽到mvc這個詞的時候,對其茫無所知,通過近期的學習,對其有所了解。mvc全名是model view controller,是模型 model 檢視 view 控制器 controller 的縮寫,一種軟體設計典範,用一種業務邏輯 資料 介面顯示分離的方法組織 將業務邏輯聚集到乙...

Java EE spring框架初識

spring 框架的簡介 解決方案 spring 的核心是依賴注入和控制反轉。依賴注入,正常類a依賴類b,如果在類a的物件a中要使用類b的物件b,需要在a中new,依賴注入就是,框架來建立a和b物件,將b注入到a中,框架接管了這個以來物件的建立工作,並且把其 b 注入到需要他的a中。控制反轉,建立物...

初識Laravel框架

一 目錄簡介 包含應該用程式的核心 以後 就寫在這裡 裡面主要的是 http檔案 config 包含所有程式的配置檔案 database 包含了資料遷移和填充檔案 public 放一些公用的 js image css 檔案的 resources 包含了檢視一級原始的資源檔案 views 視 件 st...