深度學習入門:詳解 Ubuntu 下 PaddlePaddle 源碼編譯安裝

來源:互聯網
上載者:User

PaddlePaddle 是百度開源的一個深度學習架構,Paddle 提供的 Paddle book 對於那些深度學習入門的人簡直再方便不過。

想用 Paddle 進行模型訓練必然先進行安裝,這篇文章主要詳細的記錄一下 Paddle cpu 和 gpu 的源碼編譯安裝。 個人認為源碼的方式最簡單粗暴,而且透明。 內容 安裝依賴 PaddlePaddle CPU 源碼編譯安裝 PaddlePaddle GPU 源碼編譯安裝 在正式安裝之前必須解決以下幾個依賴問題

Note ️️️ 這塊非常關鍵,以下的依賴只要有一個不滿足的話,肯定編譯出問題。無論 cpu 還是 gpu 安裝都得解決以下依賴。 1.1

用 gcc –version 命令 查看一下自己電腦上 gcc 的版本,如果低於 4.8, 那麼請看這篇文章將 gcc 進行升級到 4.8 以上。 1.2

用 cmake –version 查看 cmake 的版本,如果版本低於 3.0(對於 linux)3.4(對於 mac os), 請升級自己電腦的 cmake 版本。以下的命令可以安裝 cmake3.4。

curl -sSL https://cmake.org/files/v3.4/cmake-3.4.1.tar.gz | tar -xz && \    cd cmake-3.4.1 && ./bootstrap && make -j4 && sudo make install && \    cd .. && rm -rf cmake-3.4.1
1.3

用 python –version 查看以下自己的 python 是不是 python27, 一般情況,mac 和 linux 都內建 python27。 1.4

用 go version 命令查看自己電腦是否有 go 的環境,如果沒有的話, 用 sudo apt-get install golang 這條命令來安裝 1.5 安裝其他依賴

$ sudo apt-get install -y git curl gfortran make build-essential automake swig libboost-all-dev$ sudo apt-get install -y python-pip python-numpy libpython-dev bison$ pip install --upgrade pip$ sudo pip install 'protobuf==3.1.0.post1' $ sudo pip install wheel
Paddle CPU 編譯和安裝 1. 從 github 上把 Paddle 代碼 clone 到本地
$ git clone https://github.com/PaddlePaddle/Paddle.git  paddle$ cd paddle
2. cmake 產生 Makefile
$ mkdir build$ cd build$ cmake ..

Note : 如果使用命令 cmake .. 來產生 makefile,最終的 paddle 會安裝到/usr/local 下,如果想安裝到其他路徑(我們假定這個路徑為 $PADDLE_INSTALL_PATH), 我們可以這麼寫:
cmake .. -DCMAKE_INSTALL_PREFIX=$PADDLE_INSTALL_PATH,這樣最終編譯的 paddle 會安裝到 $PADDLE_INSTALL_PATH 下。 3. 編譯安裝

$ make -j `nproc`$ sudo make install

Note : 因為我使用的是預設安裝路徑,最終要再全域環境(/usr/local下)中組建檔案,所以 make 時候得加 sudo。運行結束後,Paddle 已經編譯完成,在我的電腦上會顯示以下 log:

這就說明我們的 paddle 已經安裝完成,我們可以用命令 paddle version 來查看是否安裝成功:

$ paddle versionPaddlePaddle 0.10.0, compiled with    with_avx: OFF    with_gpu: OFF    with_mkldnn: OFF    with_mklml: OFF    with_double: OFF    with_python: ON    with_rdma: OFF    with_timer: OFF
4. 安裝 Paddle python 介面

根據上一步驟的 log 可以看出,通過make install後, 產生了一個/usr/local/opt/paddle/share/wheels/paddlepaddle-0.10.0-cp27-none-linux_x86_64.whl檔案。 運行以下命令進行 paddle python 安裝:

$ sudo pip install -U  /usr/local/opt/paddle/share/wheels/paddlepaddle-0.10.0-cp27-none-linux_x86_64.whl
5. 測試
$ python>>>  import paddle.v2 as paddle

如果沒有出現 ImportError: No module named paddle,那恭喜,你已成功編譯安裝 paddle for cpu。 6. 跑一個 demo

從 github 上 clone paddle book 中的代碼:

$ cd ~/$ git clone https://github.com/PaddlePaddle/book.git  paddle_book$ cd paddle_book/01.fit_a_line$ python train.py
Paddle GPU 編譯和安裝 1. 安裝 CUDA 和 cuDNN

安裝 CUDA 8.0

$ sudo apt-get update && sudo apt-get install wget -y --no-install-recommends$ wget "http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1604/x86_64/cuda-repo-ubuntu1604_8.0.61-1_amd64.deb"$ sudo dpkg -i cuda-repo-ubuntu1604_8.0.61-1_amd64.deb$ sudo apt-get update$ sudo apt-get install cuda

安裝 cuDNN5.1

$ wget http://developer.download.nvidia.com/compute/redist/cudnn/v5.1/cudnn-8.0-linux-x64-v5.1.tgz$ sudo tar -xzf cudnn-8.0-linux-x64-v5.1.tgz -C /usr/local$ rm cudnn-8.0-linux-x64-v5.1.tgz && sudo ldconfig
2. 編譯安裝(和 cpu 過程一樣)
$ git clone https://github.com/PaddlePaddle/Paddle.git  paddle_gpu$ cd paddle_gpu$ mkdir build$ cd build$ cmake .. $ make -j `nproc`$ sudo make install$ sudo pip install -U  /usr/local/opt/paddle/share/wheels/paddlepaddle-0.10.0-cp27-none-linux_x86_64.whl  
3. 測試
$ paddle versionPaddlePaddle 0.10.0, compiled with    with_avx: OFF    with_gpu: ON    with_mkldnn: OFF    with_mklml: OFF    with_double: OFF    with_python: ON    with_rdma: OFF    with_timer: OFF

可以看出 with_gpu 是 ON 的狀態 4. Run a Demo

從 github 上 clone paddle book 中的代碼:

$ cd ~/$ git clone https://github.com/PaddlePaddle/book.git  paddle_book$ cd paddle_book/01.fit_a_line$ export WITH_GPU=1$ python train.py

到這裡,paddle 的編譯安裝已經說的差不多了,不過因為每個人的機器環境不一樣,很可能你按照上述的方法去安裝時候還會遇到問題,可以在下方留言,或者去這裡提 issue,paddle 的同志們回複還是很快的。

最後, 非常推薦去看一下 paddle book,對想入門深度學習的筒子來說,這個 book 能能讓你快速的瞭解學習深度學習在映像 nlp 以及推薦領域的應用。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.