缺乏支援!Caffe深度學習框架未來堪憂

2021-09-23 05:37:40 字數 3221 閱讀 8760

文章講的是缺乏支援!caffe深度學習框架未來堪憂

caffe是乙個由表示式,速度和模組化組成的深度學習框架。其優勢在於caffe的模型和優化是通過沒有硬編碼的配置來定義的,以及在gpu機器上設定了乙個flag以方便在cpu和gpu之間切換,然後部署到集群或移動裝置上。

與此同時,隨著我們進入2023年,caffe已經在1.0.0 rc 3版本幾乎停留一年了。雖然有一些**改進和可見進度,但專案仍然不穩定。目前很多人認為caffe的安裝和配置還比較複雜,但文件可以接受。

▲在caffe演示中,基於網路的影象分類示例使用卷積神經網路,這也是caffe的強大之一。該演示使用提供的範例是正常的,但我自己的影象沒有試驗成功,即便我的已經符合所列出的要求。

caffe功能和用例

caffe是乙個**經過良好測試的開放框架,以及深度學習模型和例項,使用以純c ++編寫的核心庫與cuda,以及命令列,python和matlab介面為主。

facebook使用caffe模型對上傳影象進行有害內容檢測,這是乙個很重要的功能,但攝影師對這種直接過濾而不考慮藝術背景的方式很不贊同。

caffe安裝

當我幾個月前第一次嘗試檢視caffe時,當時我無法在macos sierra上構建caffe可執行檔案,追蹤問題發現有一行顯示在makefile檔案中明確引用舊版本作業系統框架。我決定等維護者開始構建sierra,再繼續審查處理。我也希望,nvidia很快就會開始支援xcode 8,使我可以在不影響其他專案的前提下構建caffe與cuda gpu支援。

▲在macbook pro上,在2.6 ghz intel core i7 cpu上培訓mnist lenet大約需要7.5分鐘,10,000次迭代。這個速度足夠快,可以與執行lenet的其他框架相媲美。但是在cuda gpu上,如果適合gpu的ram,則只需要一分鐘。

更新儲存庫後,我可以構建和測試cpu的可執行檔案,以及配置python庫以便執行示例jupyter notebook。然而,當筆記本使用shell指令碼訪問單元格時,python就會崩潰。

我試著在windows 10上安裝caffe,在caffe中有相應支援。新的cmake構建聲稱是可以執行的,但似乎沒有建立可執行檔案。 一旦將專案從visual studio 2013轉換到visual studio 2015,舊版本的visual studio確實可以正常工作。但是,無法安裝python,甚至不能啟動jupyter notebook。

由於caffe的「home」系統是ubuntu,我啟動了乙個ubuntu「trusty」虛擬機器,並根據文件嘗試構建caffe。這一次,我可以構建和測試可執行檔案,但還是不能執行python。

這讓我只有兩個選項,選擇故障排除或者故障安裝:在docker中構建和執行,或在雲中執行預配置的機器映像。在儲存庫中讀取docker檔案的文件比較模糊,docker指令碼在ubuntu上安裝專案的方式與文件中提到的不同,新手安裝可能需要花費幾天時間,但安裝完你就會發現實際只需要乙個小時就可以。

caffe執行

caffe有命令列,python和matlab介面。由於目前缺少matlab副本,我沒有嘗試測試該介面。caffe依賴prototext檔案來定義其模型和求解器。 如下所示,顯示了參考「caffenet」影象分類器的模型和求解器配置。

▲caffe依賴prototext檔案來定義其模型和求解器。這個prototext檔案定義了用於imagenet影象分類的參考caffenet(修改的alexnet)卷積模型。

▲這個prototext檔案定義了caffenet(修改的alexnet)求解器用於imagenet影象分類。注意,可以在此檔案中設定gpu或cpu模式。

caffe在其模型模式中逐層定義網路。網路定義從輸入資料到整個模型。當資料和派生資料向前向後遍歷網路時,caffe儲存,通訊和操作資訊為blob(二進位制物件),內部以c語言方式儲存n維陣列。圖層對blob執行操作,它們構成了caffe模型元件。

一旦你建立了pycaffe,你就可以在caffe上執行python指令碼,並且能夠執行jupyter notebook。如上所述,我在執行jupyter notebook時遇到了一些問題,雖然我可以在nbviewer中檢視已發布的notebook,如下所示。

▲在nbviewer中顯示的預先計算的caffe jupyter notebook。這本解釋了使用乙隻可愛的小貓在caffe上實驗的過程。建議使用該模型需要在geforce gt 650m上有超過1gb的gpu記憶體可用,原始影象應使用g2.2xlarge或更好的例項。

結語

caffe目前的社群比較懶散,導致該專案後期的發展緩慢。在社群中發問,很難得到答覆。相比之下,aws不僅具有可用於gpu的例項,而且還提供具有caffe預構建並具有gpu支援的ami映像。亞馬遜不再是擁有這種支援的唯一雲。還可以考慮azure batch shipyard及其使用nc系列例項的深度學習,google雲也即將加入這場戰爭。

正如我們所看到的,caffe是乙個深度學習框架,從berkeley的視覺和學習研究中心成長起來的,目前仍然強調影象處理,儘管其範圍有所擴大。與其他深度學習框架相比,caffe開發人員對專案的成熟度,可移植性和迭代速度有待提高。如果現有的caffe模型符合你的需求或可以根據你的目的微調,建議使用。否則,建議使用tensorflow,mxnet或cntk。

▲免費開源。 平台:linux,macos,windows,docker。

Caffe深度學習計算框架

1 caffe set mode caffe gpu 1 name dummy net 2 3 layers 45 layers 67 layers 8 layers 1 name conv1 2 type convolution 3 bottom data 4 top conv1 5 convol...

深度學習系列3 框架caffe

caffe是賈揚清大神開發的一套系統,caffe2是重構後的版本。其基本結構為 import numpy as np import time from caffe2.python import core,workspace from caffe2.proto import caffe2 pb2 x ...

深度學習框架caffe訓練過程

1.資料準備 2.生成訓練資料和測試資料的label,生成 3.生成訓練資料和測試資料對應的lmdb build tools convert imageset shuffle true backend lmdb data cigarettetrain20170413 data cigarettetr...