Cet article
Bien que ce soit également dans le titre, il s'agit d'un article sur un disque laissé par un amateur qui n'est ni un chercheur en Deep Learning ni quoi que ce soit, alors pardonnez-moi toute erreur et lisez-le. (S'il y a quelque chose qui ne va pas, j'apprécierais que vous le signaliez dans les commentaires)
OS:Ubuntu 14.04 LTS CPU: Core i7 2.93GHz GPU: GeForce GTX 960 Mémoire: 4 Go
En gros, faites comme décrit sur la page officielle de Caffe. Ici, la configuration est la suivante, mais veuillez la modifier de manière appropriée en fonction de l'environnement. CUDA 7.0 utiliser cudnn ATLAS Caffe (dernier dans Github Master) Rendre PyCaffe disponible
Suivez docilement la formule
python
sudo apt-get install libprotobuf-dev libleveldb-dev libsnappy-dev libopencv-dev libhdf5-serial-dev protobuf-compiler
sudo apt-get install --no-install-recommends libboost-all-dev
Cela suit également docilement la formule
python
sudo apt-get install libgflags-dev libgoogle-glog-dev liblmdb-dev
Qu'est-ce que ATLAS? On dirait, mais une bibliothèque pour le calcul numérique (probablement différenciation de la matrice) Facile avec Ubuntu
python
sudo apt-get install libatlas-base-dev
Il dit que vous pouvez utiliser apt-get pour Ubuntu, mais de différents points de vue, il semble préférable de le prendre auprès du responsable nVidia et de le mettre par vous-même, alors j'ai décidé de le mettre moi-même. (Le dernier semble être 7.5, mais je pense que c'est le même que 7.0, donc je l'écrirai tel quel)
À partir du site du développeur nvidia, accédez à CUDA ZONE → CUDA DOWNLOADS pour supprimer le programme d'installation de CUDA. Exécutez ensuite le programme d'installation (remplacez xxx par la version que vous avez supprimée)
python
chmod +x cuda_xxx_linux.run
sudo ./cuda_xxx_linux.run
Tout ce que vous avez à faire est de suivre les instructions à l'écran
Cela ne semble pas nécessaire, mais selon le responsable, il est plus rapide de le mettre en place, alors mettez-le.
cuDNN Caffe: for fastest operation Caffe is accelerated by drop-in integration of NVIDIA cuDNN. To speed up your Caffe models, install cuDNN then uncomment the USE_CUDNN := 1 flag in Makefile.config when installing Caffe. Acceleration is automatic. The current version is cuDNN v3; older versions are supported in older Caffe.
Inscrivez-vous en tant que développeur à partir du site des développeurs nvidia ci-dessus.
Après l'inscription, cudnn sera disponible pour téléchargement, alors téléchargez-le depuis ici. Puis
python
sudo cp cudnn.h /usr/local/cuda/include/
sudo cp *.so /usr/local/cuda/lib64/
sudo cp *.a /usr/local/cuda/lib64/
Copiez la bibliothèque comme De plus, le même lien symbolique dans le fichier extrait, Créez-le dans / usr / local / cuda / lib64 (ce qui suit est 6.5 au moment du téléchargement)
python
cd /usr/local/cuda/lib64/
sudo ln -s libcudnn.so.6.5.48 libcudnn.so.6.5
sudo ln -s libcudnn.so.6.5 libcudnn.so
Maintenant que nous sommes prêts, nous allons le mettre en place immédiatement (en supposant que les éléments nécessaires autour de python sont préparés séparément)
Pour une raison quelconque, cela n'est pas officiellement écrit correctement, mais il semble qu'il soit officiel de le supprimer de github
git clone https://github.com/BVLC/caffe.git
Comme officiellement
python
for req in $(cat requirements.txt); do pip install $req; done
C'est tout. requirements.txt est en caffe / python Je n'avais pas gfortran dans mon environnement, j'ai donc pu installer scipy une fois.
python
error: Setup script exited with error: library dfftpack has Fortran sources but no Fortran compiler found
Dans ce cas, veuillez insérer gfortran.
python
sudo apt-get install gfortran
C'est important. Si vous faites une erreur ici, vous pouvez essayer de construire avec quelque chose qui n'existe pas, ou vous risquez de rester coincé dans le pot d'erreur. Copiez d'abord Makefile.config.example pour créer le prototype de Makefile.config.
python
cp Makefile.config.example Makefile.config
Assurez-vous que Makefile.config ressemble à ceci: (Veuillez changer en fonction de l'environnement) USE_CUDNN: = 1 (lors de l'utilisation de cudnn) CPU_ONLY: = 1 (commentaire lors de l'utilisation du GPU) CUDA_DIR: = / usr / local / cuda (probablement pas nécessaire pour CPU_ONLY) Aucune des lignes de CUDA_ARCH: = -gencode arch = compute ... n'est commentée (probablement commentée si CPU_ONLY) BLAS := atlas PYTHON_INCLUDE := /usr/include/python2.7 \ /usr/lib/python2.7/dist-packages/numpy/core/include PYTHON_LIB := /usr/lib Le reste reste à titre d'exemple
Ce sera peu de temps après la fin de ce qui précède. Faire à la racine du projet (C'est OK sans la partie j8. Veuillez modifier le nombre de manière appropriée en fonction du nombre de cœurs de processeur)
python
make all -j8
Je vais faire un test final pour m'assurer que c'est fait ici
python
make runtest
Un journal comme celui-ci dure quelques minutes
python
[----------] 3 tests from DeconvolutionLayerTest/0, where TypeParam = caffe::CPUDevice<float>
[ RUN ] DeconvolutionLayerTest/0.TestSetup
[ OK ] DeconvolutionLayerTest/0.TestSetup (0 ms)
[ RUN ] DeconvolutionLayerTest/0.TestSimpleDeconvolution
[ OK ] DeconvolutionLayerTest/0.TestSimpleDeconvolution (1 ms)
[ RUN ] DeconvolutionLayerTest/0.TestGradient
[ OK ] DeconvolutionLayerTest/0.TestGradient (623 ms)
[----------] 3 tests from DeconvolutionLayerTest/0 (624 ms total)
Enfin, si vous obtenez PASSÉ comme suit, vous réussissez.
python
[==========] 1404 tests from 222 test cases ran. (221949 ms total)
[ PASSED ] 1404 tests.
En cas d'échec, vérifiez si les paramètres Makefile.config sont corrects et réessayez.
Merci pour votre soutien. Dans le prochain article, j'aimerais réellement lancer l'apprentissage profond avec Caffe.
Recommended Posts