pythoncaffewindows
A. 如何在Windows下安裝配置python介面的caffe
RDD(Resilient Distributed Dataset,彈性分布式數據集)是Spark的核心概念之一。
一個RDD代表一系列的「記錄」(嚴格來說,某種類型的對象)。
這些記錄被分配或分區到一個集群的多個節點上(在本地模式下,可以類似地理解為單個進程里的多個線程上)。Spark中的RDD具備容錯性,即當某個節點或任務失敗時(因非用戶代碼錯誤的原因而引起,如硬體故障、網路不通等),RDD會在餘下的節點上自動重建,以便任務能最終完成。
B. 如何快糙好猛地在Windows下編譯CAFFE並使用其matlab和python介面
一、准備
需要用到的東西我已經幫大家全部准備好了,有2016年2月4日剛剛從caffe官方master分支fork過來的源代碼。有我自己親手製作的第三方庫,在源碼的根目錄下建立個3rdparty文件夾,把文件解壓進去就可以了。
解壓好之後,要將3rdparty/bin文件夾添加到環境變數的PATH中,這樣才能讓程序找到這些第三方庫的dll。
最後是CUDA和MKL了,MKL是可選的,大家可以去Intel官方申請,如果不用cpu模式的話其實也無所謂,在第三方庫包中我還提供了openblas的庫文件。
我使用的是CUDA 7.5版,建議大家也安裝這個版本。
二、編譯
編譯非常簡單,分為以下幾步:
1、雙擊./src/caffe/proto/extract_proto.bat批處理文件來生成caffe.pb.h和caffe.pb.cc兩個c++文件,和caffe_pb2.py這個Python使用的文件。
2、打開./buildVS2013/MainBuilder.sln,打開之後切換編譯模式至Release X64模式。如果打開之後顯示載入失敗,可能你的CUDA版本和我的不一致,我的是CUDA 7.5版,這時就要用記事本打開./buildVS2013目錄下各個文件夾內的.vcxproj文件,搜索CUDA 7.5,把這個7.5換成你自己的CUDA版本,就可以正常打開了。
另外,如果你的顯卡比較老或者沒有顯卡,請使用./build_cpu_only/MainBuilder.sln。
3、點上邊工具欄中的綠色三角編譯吧。編譯大概需要半小時左右,請耐心等待。
如果要用matlab wrapper來提取特徵、觀察訓練好的權重的話呢,只需要把matcaffe項目裡面的matlab目錄修改成你自己的,然後編譯,你就能從matlab/+caffe/private文件夾裡面找到一個叫caffe_.mexw64的文件啦。
python的wrapper類似,把pycaffe項目里的python目錄改成你自己的(我用的是Anaconda),就能在python/caffe文件夾中生成_caffe.pyd的python dll文件。
三、測試
到 下載已經轉換好的MNIST的leveldb數據文件,解壓至./examples/mnist文件夾中,然後運行根目錄下的run_mnist.bat即可開始訓練,訓練日誌會保存在./log文件夾中,以INFO開頭,txt格式的日誌文件中。
ps:如果你編譯成功的話,不要忘了給我的github工程點個star!
四、舊更新日誌
2015/02/25 微軟製作了一個caffe的windows版,他們更加專業,做出來的solution更加容易維護,第三方庫完全由Nuget進行管理,幾乎不用配置什麼東西
2015/12/09 我總結了一下比較常見的問題,寫在 里,而且未來會持續更新,如果碰到問題請先查看這個FAQ列表。
2015/09/14 Caffe現在支持單機多GPU啦,直接在caffe命令後面加--gpu=all或--gpu=0,1 即可使用多個GPU進行訓練。
如果使用多gpu訓練,不要直接點cmd窗口的X,最好使用Ctrl+C來終止程序,不然顯卡驅動有時候會崩潰。
還有如果要在訓練中途存一個snapshot,可以用Ctrl+Break。
因此一個正常的終止訓練的操作是:
先Ctrl+Break保存當前工作狀態,然後Ctrl+C終止訓練。
2015/08/18 lmdb現在已經可以使用了,不過磁碟必須是NTFS格式的才可以。有需要的請到下載,並覆蓋掉3rdparty/lib 中同名的文件,然後右鍵各個工程->僅用於項目->僅鏈接 即可,無需重新生成。
2015/08/08 有很多人報告(包括我自己)cuDNN v3 的速度比v2慢很多,因此master分支被我回滾回v2版本了,所幸cuDNN向下兼容,所以無需再次下載第三方庫。
2015/08/06 新版caffe-windows上線了,由於vs2012編譯速度太慢,從這個版本開始,不再對vs2012提供支持。
2015/07/07 現在caffe也支持VS2013了,第三方庫全部更新至最新版本。請從下載並替換掉原有的build文件夾,其他步驟與先前版本一致。如果發現bug,煩請反饋給我,留言或在github上提issue均可。
2015/06/07 添加Insanity Layer(即randomized leaky rectified linear units),我也不知道為什麼叫Insanity。。論文上說效果比PReLU還好些。
2015/06/05 將Caffe版本更新至6月5日的master分支,與上一版最大的不同在於matlab介面更加豐富,cudnn更新至v2版,所以要重新下載第三方庫。
2015/06/05 Batch Normalization更新至新版,現在的默認mnist測試文件即為使用了Batch Normalization層的版本。
2015/05/29 發現上個版本的lmdb.lib使用了別人在vs2013下編譯的版本,現改為vs2012版;
2015/05/29 添加了提取任意層特徵的matlab介面,使用方法:
OUTPUT = caffe('get_features', INPUT, 'layername1,layername2...');11
例如:f = caffe('get_features', H, 'conv51,pool5'); 返回的f為2*1的cell類型,裡面記錄了層的名稱和該層的特徵。
現在有了更好的方法來獲得每層特徵,該函數不再更新。請參見新版matlab介面。
C. 如何在windows下安裝微軟版的caffe
第一步,准備工作
1.首先從網址下載Caffe-Windows安裝包(https://github.com/BVLC/caffe/tree/windows);
2.安裝Visual Studio 2013;
3.如果與需要使用NVIDIA顯卡的請安裝Cuda和CuDNN,不需要可以不裝;
4.將.\windows\CommonSettings.props.example 復制一份並修改為 .\windows\CommonSettings.props,然後打開做如下修改:
1)如果不使用GPU,不安裝CUDA和CuDNN,將CpuOnlyBuild 改為 true ,並且 UseCuDNN 改為 false;
2)安裝CuDNN的情況下,將CuDNND路徑復制到CuDnnPath;
3)選擇支持Python或者MATLAB介面,當然也可以兩個都支持,設置PythonSupport或者MatlabSupport為true,同時將Python或者MATLAB路徑分別粘過來PythonDir和MatlabDir。
第二步,編譯
打開.\windows\Caffe.sln,編譯Caffe/convert_imageset、caffe、libcaffe、convert_mnist_data等,可以根據提示和需要進行,生成的caffe.exe為訓練與測試的主程序,convert_imageset為將訓練和測試數據生成LMDB使用的程序。
D. 怎麼在windows下編譯fast rcnn需要的python版本的caffe介面
一、前期環境以及准備
1、安裝python
在caffe中,python2和python3的介面都有。但frcnn中只能支持python2.7,所以千萬不要裝成python3。為了方便,不用自己去pip一大堆庫,我建議安裝anaconda2,裡面已經安裝了很多第三方的庫。
另附python,Windows的第三方庫 ,裡面很全。或許有一些庫你要去官網上下載。
2、安裝(更新)顯卡驅動和cuda
NVIDIA的顯卡驅動安裝應該不用我說了吧,到官網上下載吧。我要說明一點的是,我的1080ti在安裝顯卡驅動時,說和Windows不匹配。怎麼解決呢?更新Windows,到官網上下驅動,再安裝。成功!還有就是記得更新你的顯卡驅動,以防老的驅動不支持cuda。
CUDA安裝的話,也是傻瓜試的安裝。提醒一點的是,不要改變他的安裝路徑,默認路徑。然後去NVIDIA的官網上下載cudnn庫,這個庫的話需要去NVIDIA注冊一個賬號,然後問你用這個來完成什麼工作之類的巴拉巴拉。這個庫長什麼樣呢?下載完解壓縮,得到一個cuda的文件夾,裡面有3個文件夾
然後打開你的CUDA文件夾,默認路徑是C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0
把cudnn庫裡面的3個文件夾裡面的文件,分別加到cuda裡面對應的文件夾。
然後打開cuda需要編譯的部分,默認路徑是C:\ProgramData\NVIDIA Corporation\CUDA Samples\v8.0
因為我用的VS2015,那麼我就用打開2015的那個,然後改成release運行。
至此,顯卡計算的環境就搭建完成了。
3、cmake和git
cmake的話,我建議直接下載編譯好的能運行的文件(到官網上下載),然後解壓文件,把bin的路徑添加到Path中。
git:因為frcnn裡面有很多linux的腳本,你可以不用,但用的話會很方便的。所以我建議安裝git。同樣,傻瓜式的安裝,直接到官網上下載。
二、py-faster-rcnn
1、編譯caffe的python介面GPU版本(如果你編譯過了就不用了)
因為frcnn的編譯過程用需要用到python的caffe包,所以必須要先編譯一次caffe。如果你已經編譯過caffe的py介面就不用了。
下載微軟的Caffe,git的地址
你可以用git直接下載,或者在git的地址里下載,隨便你。
[plain] view plain
git clone
cd caffe
git checkout windows
打開caffe\scripts,然後編輯build_win.cmd文件
第7行的VERSION是你VS的版本,VS2015對應的是14,VS2013對應的應該是12;第8行改為0;第9行改為0(如果你不用GPU,那就還是1);13行的python_version是你的python版本,2.x就是2,3.x就是3;24,28行是你的python的安裝目錄,如果你是anaconda就改你的anaconda的目錄,否則就不改。
同樣69-95行同樣修改。以上2張圖是我的cmake文件配置。
進入caffe\scripts,打開cmd,直接執行build_win.cmd。注意他會自動下載需要的庫,因為伺服器呢都不在國內,所以我建議掛個VPN,不然你且等呢吧。
這樣cmake後呢,python的介面就已經編譯好了,不用再編譯一遍了。把caffe\python下的caffe的文件夾到python的第三方包的文件夾就ok。
這樣caffe的python介面就好了,你可以進cmd的python試一下import caffe。如果說,他提示少了什麼包,你直接pip這個包就好了,找不到的話,網路一下就有。但只要你跟著上面我的方法做應該不會出現什麼問題。
2、編譯py-faster-rcnn依賴庫
首先呢,我們先去編譯一下frcnn的依賴庫。Windows下,不能使用自帶的lib,把自帶的lib刪了,重新下載,這里給出git的地址。
好了,現在你的庫應該長成這樣,有setup.py和setup_cuda.py。進cmd,install這2個文件。
現在你肯定會遇到問題,提示你VC版本不對
怎麼辦呢,先set一下:輸入SET VS90COMNTOOLS=%VS140COMNTOOLS%,VS後面的數字就是你的版本。還有不要忘了把你VS的c1.exe加到path下。
編譯好frcnn的依賴庫後,應該是這個樣子的。
3、給caffe加frcnn的層
現在,我們再下載一個caffe,跟前面一樣,把build_win.cmd進行修改。然後我們就可以把frcnn的一些特有的層加到caffe里編譯了。
1)添加層和文件
打開py-faster-rcnn\caffe-fast-rcnn\src\caffe\layers文件夾,找到4個文件分別為
然後到你新的caffe的對應文件夾caffe\src\caffe\layers里。
接著我們添加頭文件,打開py-faster-rcnn\caffe-fast-rcnn\include\caffe,把fast_rcnn_layers.hpp這文件到caffe的對應文件夾下caffe\include\caffe。
2)配置2個新層
打開你的caffe\src\caffe\proto下的caffe.proto,進行編輯。
在407行左右
往原來的文件里添加新的層的配置信息
[plain] view plain
optional ROIPoolingParameter roi_pooling_param = 8266711;
optional SmoothL1LossParameter smooth_l1_loss_param = 8266712;
message ROIPoolingParameter {
// Pad, kernel size, and stride are all given as a single value for equal
// dimensions in height and width or as Y, X pairs.
optional uint32 pooled_h = 1 [default = 0]; // The pooled output height
optional uint32 pooled_w = 2 [default = 0]; // The pooled output width
// Multiplicative spatial scale factor to translate ROI coords from their
// input scale to the scale used when pooling
optional float spatial_scale = 3 [default = 1];
}
message SmoothL1LossParameter {
// SmoothL1Loss(x) =
// 0.5 * (sigma * x) ** 2 -- if x < 1.0 / sigma / sigma
// |x| - 0.5 / sigma / sigma -- otherwise
optional float sigma = 1 [default = 1];
}
3)cmake新的caffe的python介面
就是再執行一遍build_win.cmd就行。編譯好之後,把caffe根目錄下的python文件夾替換py-faster-rcnn\caffe-fast-rcnn的python文件夾。
三、demo
完成以上步驟你的py-faster-rcnn就已經編譯成功了。如果你想用demo測試一下的話可以用.\data\scripts里的腳本去下載已經訓練好的model,文件挺大的、速度挺慢的。所以給大家提供一個網路5,把caffemodel文件放在data\faster_rcnn_models,然後執行tools\demo.py就能看到結果了
E. windows caffe python 沒有
整了一晚上加一上午。網上關於python的記錄較少,這里寫一下。 這里的環境是WIN10+cuda v7.5 +cudnn v4 + opencv + pycharm+VS2013 使用的是GPU,我的GPU是titan16G+內存32G 首先是caffe的文件以及第三方庫的編譯,這里提供一個已經編譯好的的連接,我就是從那裡下好然後編譯完畢的。 點擊打開鏈接 happynear的 然後就是如何編譯python介面。 1、首先先生成兩個python文件,在src/caffe/proto/extract_proto.bat 里生成caffe_pb2.py 這個之後有用。 2、然後打開已經給好的caffe/buildVS2013,打開裡面已經有的工程文件,正常的情況下應該是有7個工程,選中pycaffee單獨作為要編譯的項目。如圖所示: 把pycaffe作為單啟動。注意需要在release x64位下編譯。 如果沒有這個的話,就將這個文件夾里python文件夾中的項目加入即可。如果沒有python項目,就自己建一個,將python文件夾里的cpp文件加入就可以了。 3、選擇pycaffe的屬性,將配置屬性下的VC++目錄中的包含目錄和庫目錄填上你python所在的include和libs 再在C/C++的目錄下的附加包含目錄一項中添加 以我的python為例。D:/python27/Lib;D:/python/include/ 以及D:/Python27/Lib/site-packages/numpy/core/include 如果你安裝了CUDNN這里可以在預處理器那裡把USE_CUDNN加上,同時在LINKER的輸入目錄下的附加依賴庫中加入cudnn的lib文件。 3、開始編譯即可。這里要注意一定要和caffe、caffelib在一個項目里編譯,否則會報錯。 4、編譯成功後會在caffe/python/caffe下生成_caffe.pyd 是打不開的 5、配置python環境:需要幾個額外庫 Cython>=0.19.2 numpy>=1.7.1 scipy>=0.13.2 scikit-image>=0.9.3 matplotlib>=1.3.1 ipython>=3.0.0 h5py>=2.2.0 leveldb>=0.191 networkx>=1.8.1 nose>=1.3.0 pandas>=0.12.0 python-dateutil>=1.4,<2 protobuf>=2.5.0 python-gflags>=2.0 pyyaml>=3.10 Pillow>=2.3.0 six>=1.1.0 其中numpy要裝MKL版本的,不然scipy裝上了BLAS不能用 leveldb沒有windows版本的,不過我找到了可以使用的辦法。見這個博客: 點擊打開鏈接 如果有pip install 裝不上的,可以上這個網站找 wheel文件安裝就可以了 點擊打開鏈接 6、最後把目錄中python下的caffe文件夾復制到python27/Lib/site-packages就可以了。 測試的時候只需要在控制台下輸入import caffe 看能載入就知道成功了:)
F. Windows+Anaconda+caffe python要怎麼配置
1、首先先生成兩個python文件,在src\caffe\proto\extract_proto.bat 里生成caffe_pb2.py 這個之後有用。
2、然後打開已經給好的caffe\buildVS2013,打開裡面已經有的工程文件,正常的情況下應該是有7個工程,選中pycaffee單獨作為要編譯的項目把pycaffe作為單啟動。注意需要在release x64位下編譯。如果沒有這個的話,就將這個文件夾里python文件夾中的項目加入即可。如果沒有python項目,就自己建一個,將python文件夾里的cpp文件加入就可以了。
3、選擇pycaffe的屬性,將配置屬性下的VC++目錄中的包含目錄和庫目錄填上你python所在的include和libs 再在C/C++的目錄下的附加包含目錄一項中添加
以我的python為例。D:\python27\Lib;D:\python\include\ 以及D:\Python27\Lib\site-packages\numpy\core\include 如果你安裝了CUDNN這里可以在預處理器那裡把USE_CUDNN加上,同時在LINKER的輸入目錄下的附加依賴庫中加入cudnn的lib文件。
4、開始編譯即可。這里要注意一定要和caffe、caffelib在一個項目里編譯,否則會報錯。
G. 如何在Windows環境下配置Caffe
第一步准備工作
1.首先網址載Caffe-Windows安裝包();
2.安裝Visual Studio 2013;
3.與需要使用NVIDIA顯卡請安裝CudaCuDNN需要裝;
4..\windows\CommonSettings.props.example 復制份並修改 .\windows\CommonSettings.props打做修改:
1)使用GPU安裝CUDACuDNNCpuOnlyBuild 改 true 並且 UseCuDNN 改 false;
2)安裝CuDNN情況CuDNND路徑復制CuDnnPath;
3)選擇支持Python或者MATLAB介面兩都支持設置PythonSupport或者MatlabSupporttrue同Python或者MATLAB路徑別粘PythonDirMatlabDir
第二步編譯
打.\windows\Caffe.sln編譯Caffe/convert_imageset、caffe、libcaffe、convert_mnist_data等根據提示需要進行caffe.exe訓練與測試主程序convert_imageset訓練測試數據LMDB使用程序!
H. 關於caffe-windows配置matlab和python介面的問題
1.安裝
使用PyInstaller需要安裝PyWin32。
下載與Python對應的PyInstaller版本, 解壓後就算安裝好了 。
2.生成exe文件
Python程序的目錄為 F:\hello.py
在命令行 中進入pyinstaller所在的目錄,運行python pyinstaller.py F:\hello.py
在PyInstaller-2.1目錄下,生成文件夾hello
hello目錄下有文件
exe文件在dist目錄下
如果將python文件復制到 pyinstaller.py 所在目錄下,則運行 python pyinstaller.py hello.py
I. 想安裝caffe 只用在python上 但電腦不是gpu windows10系統32版本 不是英偉達顯卡 不能使用cuda
1、右鍵點擊「開始菜單」按鈕,在彈出的菜單中選擇「運行」菜單項
2、在彈出的運行窗口中,輸入gpedit.msc命令,點擊確定按鈕
3、打開本地組策略編輯器窗口
4、在本地組策略編輯器窗口中,依次點擊「管理模板/Windows組件/Windows Installer」菜單項,在右側找到「禁止用戶安裝」一項
5、在打開的「禁止用戶安裝」窗口中,可以看到該項設置為「已啟用」,這就是導致不能正常安裝軟體的原因。
6、我們把該項設置為「未配置」或是「已禁用」,然後點擊確定按鈕保存退出,這樣以後就可以正常安裝軟體了。
J. 如何在Windows下安裝配置python介面的caffe
可以選擇使用caffe for windows,你在windows下,又不想用VS去編譯,然後你想裝python環境去運行caffe?那還不如直接裝個Ubuntu直接去跑了。