今年的CCF A會又要開始投稿了,實驗室的師弟還在玩命的加實驗,雖然我屬於特殊情況是該從靠邊站被老板扶正但是實驗室的事情我也盡力的去幫助大家,所以師弟在做實驗的時候遇到了問題也會來問問我,這次遇到的一個問題就是torch7的安裝,以及 hdf5模塊,torch模塊 , nn模塊的安裝 搞不上,於是乎我就再次出馬了,於是就有了這次的博客。
首先,要說下這次的安裝平台為 Linux 的 Ubuntu18.04 。
torch7的安裝
torch7 的官網
http://torch.ch/docs/getting-started.html
第一步,下載源碼
sudo git clone https://github.com/torch/distro.git /opt/torch --recursive
第二步, 編譯
cd torch/
sudo bash install-deps
第三步, 安裝
sudo ./install.sh
但是,這時候報錯了, THC_generated_THCTensorMathPairwise.cu.o
這步的解決參考文章:
安裝torch出現如下錯誤make[2]: *** [lib/THC/CMakeFiles/THC.dir/THC_generated_THCTensorMath.cu.o] Error 1 CMak
https://blog.csdn.net/jainszhang/article/details/82777762
於是乎,我們這么操作:
sudo su export TORCH_NVCC_FLAGS="-D__CUDA_NO_HALF_OPERATORS__"
稍等片刻
最終, 安裝成果
以上是 torch7 的安裝方法, 下面我們介紹具體模塊的安裝。
====================================================================
下面介紹 hdf5模塊的安裝,首先我們的電腦上應該有hdf5程序或庫文件,在比較老的Ubuntu系統如Ubuntu14.04上我們可以直接命令安裝,如下:
sudo apt-get install libhdf5-serial-dev hdf5-tools
這一步操作就會為我們安裝上ubuntu自帶的hdf5庫文件及程序,這時候安裝的版本一般是 hdf5_1.8 左右 但是很不幸的是在 較新的系統中如Ubuntu18.04 中我們如此操作就會出錯,因為這時候我們安裝的hdf5一般是 1.10 版本左右的,即 hdf5_1.10 ,然而在 torch7做安裝torch 與 hdf5連接的hdf5模塊即torch-hdf5就會報錯,顯示版本錯誤,說是torch-hdf5只支持連接 版本為 1.8的hdf5 , 這個好無奈,畢竟torch這東西基本已經很少有人用了,所以支持的畢竟弱,這時候就出現了一個問題,系統自帶的hdf5版本過新,需要我們自己安裝hdf5_1.8 ,但是這個安裝好以后我們又需要手動安裝torch的hdf5模塊,即torch-hdf5, 具體步驟如下。
第一步,下載 hdf5_1.8 源碼, 這時我們選擇在hdf5官網上下載,選擇 1.8.20 版本:
地址: https://support.hdfgroup.org/ftp/HDF5/releases/hdf5-1.8/hdf5-1.8.20/src/hdf5-1.8.20.tar.gz
tar -zxvf hdf5-1.8.20.tar.gz cd hdf5-1.8.20 ./configure --prefix=/opt/hdf5 make make check sudo make install
hdf5 1.8版本的手動安裝成功。
下面是為 torch 和 hdf5 安裝torch的連接模塊,torch-hdf5
這一步主要參考文章: https://blog.csdn.net/lsh894609937/article/details/70477311
下載模塊 torch-hdf5 ,
git clone https://github.com/deepmind/torch-hdf5
安裝 torch-hdf5 模塊:
cd torch-hdf5 sudo /opt/torch/install/bin/luarocks make hdf5-0-0.rockspec LIBHDF5_LIBDIR=”/opt/hdf5/lib”
其中, LIBHDF5_LIBDIR=”/opt/hdf5/lib” 十分的重要,不然安裝會失敗的,
這個話是告訴torch安裝torch-hdf5的時候hdf5庫文件在哪,由於我們安裝hdf5在/opt中,所以庫文件在/opt/hdf5/lib 中。
這時候可以發現無報錯,安裝成功。
繼續安裝常用模塊 torch, nn 等,如下:
sudo /opt/torch/install/bin/luarocks install torch
sudo /opt/torch/install/bin/luarocks install nn
安裝成功,以上是安裝的具體過程。
=========================================================
成功運行代碼: