J'ai récemment commencé à utiliser tensorflow: smile: mon MacBook Pro prend beaucoup de temps à apprendre, j'ai donc décidé d'essayer d'utiliser une instance GPU d'AWS EC2. Je pensais que ce serait une instance ponctuelle d'utiliser EC2 à bas prix, mais je ne peux pas sélectionner l'AMI NVIDIA avec CUDA configuré pour l'instance ponctuelle: scream: Apparemment, je ne peux pas le sélectionner sur mon propre système d'exploitation. Il semble que vous deviez créer un environnement avec. Mais une fois que vous avez créé un environnement, vous pouvez le réutiliser.
Je vais donc résumer la procédure pour exécuter le tensorflow de la version GPU. L'environnement à construire est Ubuntu 16.04 LTS + CUDA + cuDNN + python3.6 + tensorflow-gpu est.
Créez une instance avec "Request Spot Instance" depuis la console EC2.
Le type d'instance peut être p2.8xlarge ou p2.16xlarge, mais vous pouvez le configurer avec p2.large et passer à 8xlarge ou 16xlarge pendant l'apprentissage.
Lorsque l'instance EC2 démarre, mettez à niveau chaque module vers la dernière version et installez l'environnement de développement minimum.
$ sudo apt-get update
$ sudo apt-get upgrade
$ sudo apt-get install libffi-dev libssl-dev gcc make
Tout d'abord, git clone pyenv.
$ git clone https://github.com/yyuu/pyenv.git ~/.pyenv
Ajout de ce qui suit à .bashrc.
PYENV_ROOT=$HOME/.pyenv
PATH=$PYENV_ROOT/bin:$PYENV_ROOT/shims:$PATH
eval "$(pyenv init -)"
Chargez le .bashrc modifié.
$ source ~/.bashrc
Ensuite, installez python. Cette fois, installez python 3.6.
$ pyenv install --list|grep 3.6
3.3.6
3.6.0
3.6-dev
3.6.1
3.6.2rc1
$ pyenv install 3.6.1
$ pyenv global 3.6.1
$ which pip3
/home/ubuntu/.pyenv/shims/pip3 #Confirmez que pyenv est utilisé
$ pip3 install aws #Je vais le mettre
Découvrez où télécharger le fichier deb sur le site de téléchargement CUDA (https://developer.nvidia.com/cuda-downloads).
Une fois que vous connaissez l'URL, obtenez-la avec wget et installez-la.
$ wget https://developer.nvidia.com/compute/cuda/8.0/Prod2/local_installers/cuda-repo-ubuntu1604-8-0-local-ga2_8.0.61-1_amd64-deb
$ sudo dpkg -i cuda-repo-ubuntu1604-8-0-local-ga2_8.0.61-1_amd64-deb
$ sudo apt-get update
$ sudo apt-get install cuda
Vous pouvez obtenir la bibliothèque * cuDNN v6.0 pour Linux * à partir du site de téléchargement cuDNN et l'installer, mais après vous être enregistré en tant qu'utilisateur et vous être connecté Il ne peut être téléchargé qu'à partir de la page de, et il ne peut pas être facilement téléchargé en spécifiant l'URL avec wget. J'ai décidé de l'enregistrer une fois sur mac et de l'envoyer à EC2 avec scp.
#Copiez le fichier de développement du Mac local vers EC2 avec scp.Modifiez le chemin et l'adresse IP du fichier pem en conséquence.
$ scp -i aws.pem ~/Downloads/cudnn-8.0-linux-x64-v6.0.tgz [email protected]:~/
$ tar xzf cudnn-8.0-linux-x64-v6.0.tgz
$ sudo cp -a cuda/lib64/* /usr/local/lib/
$ sudo cp -a cuda/include/* /usr/local/include/
$ sudo ldconfig
Si la version CPU de tensorflow est incluse, désinstallez-la avant d'installer la version GPU. Incluez également les bibliothèques fréquemment utilisées.
$ sudo apt-get install libcupti-dev
$ pip3 uninstall tensorflow
$ pip3 install tensorflow-gpu
$ pip3 install keras sklearn matplotlib scipy librosa
Cette fois, j'ai vérifié l'opération avec mnist-mlp de keras, j'ai obtenu un échantillon avec git clone et l'ai exécuté.
$ git clone https://github.com/fchollet/keras.git
$ cd keras/examples
$ $ python mnist_mlp.py
Using TensorFlow backend.
...
Test loss: 0.118156189926
Test accuracy: 0.9811
$
Déplacé: lunettes de soleil:
Recommended Posts