#1 Le 04/10/2017, à 10:54
- taamer
[Résolu] - Ubuntu 16.04 LTS Python 3.6 -- Installation de tensorflow
Bonjour à tous,
Je suis en train de réinstaller un environnement pour développer en Python, et je m'interroge sur la manière la plus simple d'installer et de maintenir les librairies numpy et tensorflow.
- Recommandez-vous l'usage d'une distribution Python qui les inclut (genre Anaconda... ou une autre)?
- Ou y a-t-il un autre moyen plus classique (ppa et apt)
L'état actuel des installations - l'alias commande python pointe vers 2.7 et python3 pointe vers 3.6.
alexandre@Martin-2:~$ ls -al /usr/bin/ | grep python
lrwxrwxrwx 1 root root 26 mai 18 2016 dh_pypy -> ../share/dh-python/dh_pypy
-rwxr-xr-x 1 root root 1056 déc. 10 2015 dh_python2
lrwxrwxrwx 1 root root 29 mai 18 2016 dh_python3 -> ../share/dh-python/dh_python3
lrwxrwxrwx 1 root root 23 nov. 19 2016 pdb2.7 -> ../lib/python2.7/pdb.py
lrwxrwxrwx 1 root root 23 sept. 18 17:59 pdb3.5 -> ../lib/python3.5/pdb.py
lrwxrwxrwx 1 root root 23 juil. 29 17:26 pdb3.6 -> ../lib/python3.6/pdb.py
lrwxrwxrwx 1 root root 31 mars 23 2016 py3versions -> ../share/python3/py3versions.py
lrwxrwxrwx 1 root root 26 mai 18 2016 pybuild -> ../share/dh-python/pybuild
lrwxrwxrwx 1 root root 9 déc. 10 2015 python -> python2.7
lrwxrwxrwx 1 root root 9 déc. 10 2015 python2 -> python2.7
-rwxr-xr-x 1 root root 3546104 nov. 19 2016 python2.7
lrwxrwxrwx 1 root root 18 oct. 3 20:20 python3 -> /usr/bin/python3.6
-rwxr-xr-x 2 root root 4456240 sept. 18 17:59 python3.5
-rwxr-xr-x 2 root root 4456240 sept. 18 17:59 python3.5m
-rwxr-xr-x 2 root root 4437376 juil. 29 17:26 python3.6
-rwxr-xr-x 2 root root 4437376 juil. 29 17:26 python3.6m
lrwxrwxrwx 1 root root 10 mars 23 2016 python3m -> python3.5m
lrwxrwxrwx 1 root root 29 déc. 10 2015 pyversions -> ../share/python/pyversions.py
Merci pour votre aide.
Edition : du coup, je viens de supprimer le lien python et le recréer pour le faire pointer vers python3. Un pas de fourmi vers quelque chose de propre.
Dernière modification par taamer (Le 12/10/2017, à 16:43)
Hors ligne
#2 Le 04/10/2017, à 12:57
- shoot76
Re : [Résolu] - Ubuntu 16.04 LTS Python 3.6 -- Installation de tensorflow
Ce qui se fait d'usage : créer un virtualenv et y ajouter un fichier qui gère les dépendances (traditionnellement nommé requirements.txt). Ainsi tu as un environnement isolé avec la bonne version de python et de tes dépendances.
Tu peux également passé par un conteneur Docker et créer ta propre image que tu pourras trimballer partout si tu en a besoin sur plusieurs ordis.
Sinon, l'utlime solution (mais perso je l'aime pas) c'est de partir sur des gestionnaires genre Anaconda ou autre. Mais ça fait rajouter un truc en plus alors que Python gère ça tout seul comme un grand.
~ Data-sientist freelance : https://skulder.fr
Hors ligne
#3 Le 12/10/2017, à 14:36
- taamer
Re : [Résolu] - Ubuntu 16.04 LTS Python 3.6 -- Installation de tensorflow
Ce qui se fait d'usage : créer un virtualenv et y ajouter un fichier qui gère les dépendances (traditionnellement nommé requirements.txt). Ainsi tu as un environnement isolé avec la bonne version de python et de tes dépendances.
Merci pour cet avis, j'ai finalement pris VirtualEnv. Usage facile, simple et de bon goût. Le tutoriel google d'installation de tensorflow permet de ne pas avoir à gérer requirements.txt à la main.
Edition : du coup, je viens de supprimer le lien python et le recréer pour le faire pointer vers python3. Un pas de fourmi vers quelque chose de propre.
... (rire jaune) ou comment j'ai réussi à crash Ubuntu avec un petit lien (python3 --> python3.6). J'ignorais qu'un grand nombre de paquets d'Ubuntu - des programmes et des applications systèmes - utilisent python3, et que le lien vers python3.5 est très important (dans Ubuntu 16.04). Après un reboot forcé où unity ne démarrait plus - entre autres -, et un peu de troubleshooting, j'ai remis mon système d'équerre en ligne de commande et j'ai pu réparer mon système avant de procéder à l'installation de Python et de tensorflow.
J'ai suivi le tutoriel de Google https://www.tensorflow.org/install/ qui est très bien fait, en choisissant Ubuntu et VirtualEnv comme conteneur, afin de faire tourner un environnement de dev sans risquer d'abimer l'environnement python système. J'ai installé tensorflow pour python2.7 et python3.5. (environnements 001 et 002)
Puis j'ai vu que tensorflow pouvait être utilisé avec une configuration qui utilise le GPU pour faire les calculs. J'ai suivi le tutoriel Nvidia (puisque ma carte graphique est Nvidia) http://docs.nvidia.com/cuda/cuda-instal … z4VZnqTJ2A. Tout se passe bien - avec tensorflow 1.3, il faut installer cuda-8-0 (apt-get install) et cuDNN-6.0, et non cuda-9.0 et cuDNN-7.0 qui vous sont proposés en premier en cliquant sur les liens de la page nvidia. (environnements 003 et 004)
Enfin, j'ai pu observer, en faisant tourner du code, que mon GPU nvidia supporte des jeux de commandes qui ne sont pas compilés par défaut dans tensorflow 1.3. J'ai d'abord regardé comment compiler moi-même les sources avec les bonnes options; puis j'ai trouvé quelqu'un qui l'avait déjà fait https://github.com/mind/wheels et j'ai pris les bonnes versions. (environnements 005 et 006).
alexandre@Martin-2:~/Documents/Ordinateur/VirtualEnv$ ls -al | grep tensorflow
drwxrwxr-x 7 alexandre alexandre 4096 oct. 7 14:59 001-tensorflow-1.3-py2.7-cpu
drwxrwxr-x 6 alexandre alexandre 4096 oct. 7 15:03 002-tensorflow-1.3-py3.5-cpu
drwxrwxr-x 7 alexandre alexandre 4096 oct. 7 15:05 003-tensorflow-1.3-py2.7-gpu-cuda-8.0-cuDNN-6.0
drwxrwxr-x 6 alexandre alexandre 4096 oct. 7 15:07 004-tensorflow-1.3-py3.5-gpu-cuda-8.0-cuDNN-6.0
drwxrwxr-x 7 alexandre alexandre 4096 oct. 7 17:36 005-tensorflow-1.3-py2.7-gpu-opt-cuda-8.0-cuDNN-6.0
drwxrwxr-x 6 alexandre alexandre 4096 oct. 7 19:00 006-tensorflow-1.3-py3.5-gpu-opt-cuda-8.0-cuDNN-6.0
Il ressort de tout cela qu'Ubuntu 16.04 est construit pour fonctionner avec Python3.5, tout comme tensorflow 1.3. Cela a parfois du bon d'utiliser une LTS pour rester dans les clous de la compatibilité. On verra bien comment tout cela fonctionne en 18.04, mais pour l'instant, tous mes environnements fonctionnent.
Post scriptum : je vais sûrement regarder d'autres packages python (numpy, scipy, scikit-learn) et SageMath. A suivre.
Hors ligne
#4 Le 16/10/2017, à 09:35
- shoot76
Re : [Résolu] - Ubuntu 16.04 LTS Python 3.6 -- Installation de tensorflow
Parfait. Il ne me reste plus qu'à te souhaiter un bon développement
~ Data-sientist freelance : https://skulder.fr
Hors ligne