이번에 서버 하드교체를 하면서 Caffe clean 설치법에 대해 정리할 기회가 생겼다. Caffe는 가장 잘 나가는 deep learning framework으로 dependencies가 꽤 있는 편이다.
Caffe tutorial presentation 캡쳐 화면. Caffe의 인기에는 작명센스도 한 몫 한 듯하다
Caffe Installation instructions을 주의깊게 읽고 따라하면 되긴 하지만, 한 방에 설치하기 위해 설치 명령어 총 정리!
Dependency 0: CUDA
reddit 글 참조.
Dependency 1: protobuf
protobuf의 autogen.sh
를 실행시키기 위해서는 autotools-dev autoconf libtool
이 필요하다.
sudo apt-get install autotools-dev autoconf libtool
wget https://github.com/google/protobuf/archive/v2.6.1.zip
unzip v2.6.1.zip
cd protobuf-2.6.1/
./autogen.sh
./configure
make && make check
make install
cd python/
python setup.py build
python setup.py test
Dependency 2: ATLAS
Caffe는 대부분의 경우 GPU에서 사용하는 것으로 알고있다. Caffe 컴파일을 위해서 CPU용 BLAS는 그냥 설치하기 쉬운 ATLAS로 설치해두면 편하다.
sudo apt-get install libatlas-base-dev
Dependency 3: glog, gflags, lmdb
Ubuntu 14.04에서는 아래와 같이 쉽게 설치 가능하다. 12.04는 여기를 참조.
sudo apt-get install libgflags-dev libgoogle-glog-dev liblmdb-dev
Other Dependencies
sudo apt-get install libleveldb-dev libsnappy-dev &&
libopencv-dev libhdf5-serial-dev
sudo apt-get install --no-install-recommends libboost-all-dev
Compilation
이제 github에서 Caffe를 받아서 컴파일을 할 수 있다.
cd
git clone https://github.com/BVLC/caffe.git
cd caffe/
cp Makefile.config.example Makefile.config
# Adjust Makefile.config (for example, if using Anaconda Python)
make all
make test
make runtest
(recommended) Copying the files to your PATH
아무 폴더에서나 실행시키기 위해서 /usr/local/bin
에 link를 생성한다.
sudo ln -s /home/${USER}/caffe/.build_release/tools/caffe.bin /usr/local/bin/caffe
sudo ln -s /home/${USER}/caffe/.build_release/lib/libcaffe.a /usr/local/lib/libcaffe.a
sudo ln -s /home/${USER}/caffe/.build_release/lib/libcaffe.so /usr/local/lib/libcaffe.so
(optional) Compilation of Python Caffe
python에서 model을 불러와 visualization등을 하기 위해서는 pycaffe를 컴파일 해야한다.
# For pip install scipy
sudo apt-get install libblas3gf libgfortran3 liblapack3gf gfortran
cd ~/caffe/python/
for req in $(cat requirements.txt); do pip install $req; done
cd ~/caffe/
make pycaffe
sudo ln -s /home/${USER}/caffe/python/caffe /usr/local/lib/python2.7/dist-packages/caffe
comments powered by