操屁眼的视频在线免费看,日本在线综合一区二区,久久在线观看免费视频,欧美日韩精品久久综

新聞資訊

    Tensorflow和Caffe是機器學習初學者常用的2種深度學習框架。相對于Tensorflow有簡單的python pip一鍵安裝包,Caffe的安裝更考驗開發者的計算機編譯水平,需要自己下載源碼編譯。盡管caffe的配置教程網上很多,但是網上caffe的各個分支版本也很多,所以初學者在編譯時總是會碰到各種奇怪的問題。本文會針對初學者常用的Windows* + Intel CPU的平臺上安裝配置Caffe做一個較為完整的總結。

    Caffe的各個版本簡介

    官方版本:伯克利BVLC(Berkeley Vision And Learning Center) 版

    https://github.com/BVLC/caffe

    這個是Caffe的主版本,由伯克利大學維護。其他所有的Caffe版本都是由這個版本分支出去的。這個版本Caffe可以編譯出Linux和Windows*版本,支持Nvidia的CUDA加速,但是對CPU的優化不好,而且有關安裝和配置的文檔很少。從這個版本編譯Caffe,需要很強的自我學習和解決問題能力。

    微軟的Windows*版本

    https://github.com/Microsoft/caffe

    微軟自己維護的一個版本。這個版本簡化了Caffe在Windows*下的步驟,自帶了一個VS的Solution項目。這個版本同樣支持基于CPU和CUDA的算法實現。

    Intel Caffe優化版

    https://github.com/intel/caffe

    Intel維護的版本,這個版本優化了Intel CPU的實現算法,同時提供對Intel Xeon CPU多核和多節點的支持。這個版本里有些算法庫對Windows*支持不太好,所以這個分支編譯出的Caffe主要還是運行在Linux的服務器平臺上做訓練工作。

    Intel clCaffe 核顯OpenCL優化版

    https://github.com/01org/caffe

    Intel維護的另一個版本,相對于官網BVLC Caffe上的OpenCL分支,優化了基于Intel 核顯GPU的OpenCL加速算法。這個版本同時支持Windows* 和Linux平臺,適合在有Intel核顯的CPU上做一些推理(Inference)場景的工作。

    BVLC caffe的編譯

    安裝編譯所需要的軟件

    • Visual Studio 2015
    • Anaconda + Python 64位版本 (Caffe官網推薦用Python 2.7或者3.5版本,如果用其他版本,編譯時候會麻煩一些,我系統上用的是Python3.6版本) https://www.anaconda.com
    • cmake-3.9.3-win64-x64 https://cmake.org/
    • Git-2.14.2-64-bit https://git-scm.com/

    配置Windows*的環境變量

    為了避免等會CMAKE生成編譯腳本的時候找不到一些依賴關系,有的沒的路徑都加一些,包括Cmake, Git, Ananconda以及Python的路徑。

    Checkout 官網Caffe的代碼

    運行以下代碼,用git從官網caffe上下載Windows*分支。

    git clone https://github.com/BVLC/caffe.git
    cd caffe
    git checkout windows
    

    修改caffe源碼代碼里的一些編譯參數

    • 修改scripts\build_win.cmd
    • 因為我們沒有定義APPVEYOR,所以直接拉到else(大約69行)以后。
    • 先從APPVEYOR部分把這部分內容拷貝過來
    if !PYTHON_VERSION! EQU 2 (
     set CONDA_ROOT=C:\Miniconda-x64
    )
    :: Set python 3.5 with conda as the default python
    if !PYTHON_VERSION! EQU 3 (
     set CONDA_ROOT=C:\Miniconda35-x64
    )
    set PATH=!CONDA_ROOT!;!CONDA_ROOT!\Scripts;!CONDA_ROOT!\Library\bin;!PATH!
    

    然后根據Windows*環境設置下圖中紅色方框的部分

    1. 編譯器是VS2015,設置MSVC_VERSION=14

    2. 不需要NINJA來編譯,設置WITH_NINJA=0

    3. 沒有NVDIA GPU,設置CPU_ONLY=1

    4. Python版本為3.X,設置PYTHON_VERSION=3

    5. 需要pyCaffe支持,設置BUILD_PYTHON=1

    • 如果Python版本不是2.7或3.5,修改
    • cmake\WindowsDownloadPrebuiltDependencies.cmake
    • Caffe在編譯時會自動從網上下載一個依賴庫caffe-builder,這個cmake文件負責根據你系統里的VS版本和python版本自動下載預編譯好的caffe-builder包。目前網上只有預編譯好的VS2013/2015配python2.7/3.5的caffe-builder,如果是python3.6,編譯時會報找不到VS2015配python3.6的caffe-builder包。解決方法有2個辦法,要么用python3.5的包,要么自己編譯caffe-builder。
    • 對于復用Python3.5的包,可以按照下圖中所示,復制DEPENDENCIES_URL_1900_35和DEPENDENCIES_SHA_1900_35 2行,同時修改35為36。

    如果希望使用自己編譯VS2015加python3.6的caffe-builder,除了要加入上段說到的2行修改外,還需要注釋掉下圖中WindowsDownloadPrebuiltDependencies.cmake的下圖所示的綠色部分,這部分代碼是負責從網上下載依賴包并且解壓縮到本地目錄的。同時要把caffe-builder編譯出的libraries目錄拷貝到C:\Users\[user name]\.caffe\dependencies這個目錄下。(具體caffe-builder的編譯,將在本文第3節詳細介紹)

    開始編譯

    在caffe的目錄下輸入scripts\build_win.cmd

    開始編譯,一切順利的話,大約10分鐘后就編譯好了

    驗證一下編譯的結果

    接下來運行一下caffe項目自帶的examples里的00-classification的代碼來驗證一下caffe是否能夠正常運行

    打開anaconda的命令行,進入caffe的examples目錄,運行jupyter notebook

    在打開的notebook中打開caffe自帶的例子 00-calssification.ipynb

    這是用一個訓練好的Caffe模型來預測動物圖片的例子,圖片默認是使用Caffe項目里examples\image\cat.jpg。

    一路Shift+Enter運行下去,看到第8步predicted輸出

    predicted class is: 281
    

    第9步輸出

    output label: n02123045 tabby, tabby cat
    

    預測結果是貓,說明caffe已經正確編譯而且能運行了。

    大功告成,開始你的Caffe學習之旅吧

    Caffe依賴庫Caffe Builder的編譯

    主要介紹怎么編譯Caffe-Builder項目

    安裝編譯所需要的軟件

    編譯軟件的需求同2.1部分

    • Visual Studio 2015
    • Anaconda + Python 64位版本 https://www.anaconda.com
    • cmake-3.9.3-win64-x64 https://cmake.org/
    • Git-2.14.2-64-bit https://git-scm.com/

    配置Windows*的環境變量

    環境變量的配置同2.2部分

    下載Caffe-Builder源碼

    Caffe-Builder的開源項目位于 https://github.com/willyd/caffe-builder

    目前最新的release為1.1版,可以從這里下載最新的release 1.1.0版的源碼

    https://github.com/willyd/caffe-builder/releases

    修改caffe-builder源碼代碼里的一些編譯參數

    修改主要基于2個方面:

    首先在Windows*下Ninja編譯系統不容易配置好,所以這里選擇了Visual Studio 2015作為編譯器。修改build_v140_x64.cmd,將紅色部分的’Ninja’改為’Visual Studio 14 2015 Win64’

    其次是這個Release 1.1.0發布有點時間了,caffe-builder很多依賴的開源項目都搬家或者版本更新了,需要做相應的修改。

    1) 修改packages\protobuf\CmakeLists.txt

    將圖中所示部分protobuf包的Hash值從原來的

    14a532a7538551d5def317bfca41dace

    修改為

    39d6a4fa549c0cce164aa3064b1492dc

    2) 修改packages\hdf5\CmakeLists.txt

    將圖中所示部分的URL從https://www.hdfgroup.org/ftp/HDF5/releases/hdf5-1.8.16/src/CMkae-hdf5-1.8.16.zip 修改為 https://www.hdfgroup.org/ftp/HDF5/releases/hdf5-1.8/hdf5-1.8.16/src/CMkae-hdf5-1.8.16.zip

    編譯

    進到caffe-builder-1.1.0目錄下,運行build_v140_x64.cmd開始編譯

    屏幕輸出

    最終編譯生產的caffe依賴庫文件放在build\libraries目錄下,你可以將這個libraries目錄拷貝到caffe所需要的目錄下。

    小結

    主要介紹了官方BVLC Caffe在Windows*下的編譯設置過程。BVLC Caffe提供CPU和Nvidia GPU版本的實現,但是在實際學習工作中,初級開發者的電腦平臺通常不會裝備昂貴的Nvidia顯卡,而CPU版本的Caffe因為執行效率不高,只能用來做一些小型的”玩具”實驗項目。

    深度學習這么火,對于有幸從事機器學習的我而言激動不已,無奈caffe安裝較為繁瑣,加之硬件條件的限制,使得自己不得不對其望而卻步。不過google的一款深度學習框架tensorflow安裝較為簡單,在Windows下之間pip install tensorflow即可完成安裝,然后在eclipse中進行基于tensorflow的開發了。本人先從簡單的開始,先在windows下安裝tensorflow并進行學習,用其做了幾個VGG、CNN、驗證碼識別等幾個簡單例子后,對其差不多已經了解,故而這幾天想轉戰caffe。

    本人選擇使用ubuntu14.04,因為其穩定,而且遇到錯誤在網上的解答也比較多,整個安裝過程不到一天時間(安裝很簡單,主要是安裝或者編譯過程花的時間比較長),也沒有遇到什么大的錯誤,整體而言很順利,主要是參考了http://www.th7.cn/system/lin/201605/165973.shtml這篇博客。寫的比較詳細,不過其部分代碼一步到位,會導致出錯,本人根據安裝經驗重新進行整理,部分安裝步驟根據該博客來的,只是對出錯的地方進行了修改。希望幫助大家早日安裝好。

    1、安裝vm虛擬機,ubuntu的安裝鏡像地址共享給大家http://pan.baidu.com/s/1jIBjPuY ,安裝完后首先確保虛擬機可以上網!!!

    2、打開終端安裝必要的環境,依次執行如下命令:

    sudo apt-get update #更新軟件列表 
    sudo apt-get upgrade #更新軟件 
    sudo apt-get install build-essential
    

    3、去英偉達官網下載,網址如下:https://developer.nvidia.com/cuda-downloads

    (不要在Windows下載后在復制到虛擬機,直接在虛擬機打開網頁后收入網址進行下載)

    4、下載完后,進入下載目錄執行:

    sudo sh cuda_7.5.18_linux.run#(cuda_7.5.18_linux.run是下載的文件名)
    

    5、第四步的安裝過程比較長,安裝過程會顯示最終用戶許可協議(EULA),很長,可以按‘q’退出閱讀,然后安裝的時候不要安裝顯卡驅動,具體如下:

    6、安裝完后進行執行:

    echo 'export PATH=/usr/local/cuda/bin:$PATH' >> ~/.bashrc echo 'export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/cuda/lib64:/usr/local/lib' >> ~/.bashrc source ~/.bashrc

    7、安裝相關庫:

    sudo apt-get install -y libprotobuf-dev libleveldb-dev libsnappy-dev libopencv-dev libboost-all-dev libhdf5-serial-dev protobuf-compiler gfortran libjpeg62 libfreeimage-dev libatlas-base-dev git python-dev python-pip libgoogle-glog-dev libbz2-dev libxml2-dev libxslt-dev libffi-dev libssl-dev libgflags-dev liblmdb-dev python-yaml
     
    sudo easy_install pillow
    或者 pip3 install pillow
    

    8、下載caffe

    cd ~ #進入主目錄
    
    git clone https://github.com/BVLC/caffe.git
    

    然后在當前目錄下就會看到下載的caffe,通過ls命令查看。

    9、安裝python支持(該過程持續時間很長,我安裝的時候參考的博客把第三和第四行代碼合并為一行,執行執行會出錯。大家按照我的一行一行代碼執行就行)

    cd caffe
    cat python/requirements.txt | xargs -L 1 sudo pip install
    sudo ln -s /usr/include/python2.7/ /usr/local/include/python2.7
    sudo ln -s /usr/local/lib/python2.7/dist-packages/numpy/core/include/numpy/ /usr/local/include/python2.7/numpy
    

    10、修改Makefile.config

    cp Makefile.config.example Makefile.config
    

    然后用vi或者其他編輯器修改Makefile.config文件,找到 # CPU_ONLY:=1這一行,把這一行前面的注釋 。然后在找到PYTHON_INCLUDE,把原來的/usr/lib/python2.7/dist-packages/numpy/core/include改為/usr/local/lib/python2.7/dist-packages/numpy/core/include即可。

    GPU版本:

    USE_CUDNN :=1

    USE_OPENCV :=1

    USE_LMDB :=1

    USE_HDF5 :=1

    CPU版本:

    CPU_ONLY :=1

    最后設置cv2:

    OPENCV_VERSION :=3 (我是3.3版本,所以寫3,如果是2.x版本則寫2即可)

    如果使用編譯的cv2則如下打開注釋

    USE_PKG_CONFIG :=1

    使用python接口:

    WITH_PYTHON_LAYER :=1
    

    11、編譯caffe(編譯時間相對比較長,一行一行執行就好,我在編譯的時候出錯,如果出錯,執行make clean,然后在從頭開始重新編譯)

    make all -j2 #2代表啟用2各線程同時編譯
    make test
    make runtest
    make pycaffe 
    make distribute
    

    如果編譯過程報錯:AR -o .build_release/lib/libcaffe.aLD -o .build_release/lib/libcaffe.so.1.0.0/usr/bin/ld:

    cannot find -lhdf5_hl/usr/bin/ld: cannot find -lhdf5collect2: error: ld returned 1 exit statusMakefile:572:

    recipe for target '.build_release/lib/libcaffe.so.1.0.0' failedmake: *** [.build_release/lib/libcaffe.so.1.0.0]

    Error 1

    則:然后修改Makefile 文件(注意不是Makefile.config) 將里面的

    LIBRARIES +=glog gflags protobuf boost_system boost_filesystem m hdf5_hl hdf5

    改為LIBRARIES +=glog gflags protobuf boost_system boost_filesystem m hdf5_serial_hl hdf5_serial

    Makefile文件修改

    NVCCFLAGS +=-ccbin=$(CXX) -Xcompiler-fPIC $(COMMON_FLAGS)
    替換為:
    NVCCFLAGS +=-D_FORCE_INLINES -ccbin=$(CXX) -Xcompiler -fPIC $(COMMON_FLAGS)
    

    LIBRARIES +=glog gflags protobuf boost_system boost_filesystem m hdf5_hl hdf5

    改為:

    LIBRARIES +=glog gflags protobuf boost_system boost_filesystem m hdf5_serial_hl hdf5_serial

    修改Makefile.config文件

    INCLUDE_DIRS :=$(PYTHON_INCLUDE) /usr/local/include

    LIBRARY_DIRS :=$(PYTHON_LIB) /usr/local/lib /usr/lib

    修改為:

    INCLUDE_DIRS :=$(PYTHON_INCLUDE) /usr/local/include /usr/include/hdf5/serial

    LIBRARY_DIRS :=$(PYTHON_LIB) /usr/local/lib /usr/lib /usr/lib/x86_64-linux-gnu /usr/lib/x86_64-linux-gnu/hdf5/serial

    如果遇到錯誤,在makefile中將.build_release/tools/extract_features.bin or build_release/tools/convert_imageset.bin error

    LIBRARIES +=boost_thread stdc++
    

    修改:

    LIBRARIES +=boost_thread stdc++ boost_regex
    

    or

    LIBRARIES +=glog gflags protobuf boost_system boost_filesystem m hdf5_hl hdf5

    在最后hdl5后面添加opencv_core opencv_highgui opencv_imgproc opencv_imgcodecs boost_regex即可

    在make pycaffe的時候可能報錯如下:

    CXX/LD -o python/caffe/_caffe.so python/caffe/_caffe.cpp

    python/caffe/_caffe.cpp:10:31: fatal error: numpy/arrayobject.h: No such file or directory

    compilation terminated.

    Makefile:504: recipe for target 'python/caffe/_caffe.so' failed

    make: *** [python/caffe/_caffe.so] Error 1

    解決辦法:

    執行如下命令sudo apt-get install python-numpy,然后再試,如果還是不行就進入python命令行,輸入如下:

    python

    import numpy as np

    np.get_include()然后就會看到如下輸出:

    '/usr/local/lib/python2.7/dist-packages/numpy/core/include',然后打開Makefile.config文件,找到PYTHON_INCLUDE,將/usr/lib/python2.7/dist-packages/numpy/core/include這行代碼改成和剛剛命令行輸出一樣,然后重新編譯執行.重新編譯前先make clean,然后從頭make all -j8開始編譯.

    這時候cd 到caffe 下的 python 目錄,試試caffe 的 python wrapper安裝好沒有:

    python
    import caffe
    

    如果不報錯,那就說明安裝好了。

    測試:

    cd $CAFFE_ROOT
    ./data/mnist/get_mnist.sh
    ./examples/mnist/creat_mnist.sh
    ./examples/mnist/train_lenet.sh
    

    到此安裝完成,現在就可以開心的玩深度學習了!!!喜歡的朋友可以點擊關注哦

網站首頁   |    關于我們   |    公司新聞   |    產品方案   |    用戶案例   |    售后服務   |    合作伙伴   |    人才招聘   |   

友情鏈接: 餐飲加盟

地址:北京市海淀區    電話:010-     郵箱:@126.com

備案號:冀ICP備2024067069號-3 北京科技有限公司版權所有