J'ai déjà installé des ordinateurs portables Jupyter dans Ubuntu 14.04 via Anaconda, et tout à l'heure, j'ai installé TensorFlow. J'aimerais que TensorFlow fonctionne, que je travaille dans un cahier ou tout simplement en scriptant. Dans ma tentative, j’ai fini par installer TensorFlow deux fois, une fois avec Anaconda et une fois avec pip. L’installation d’Anaconda fonctionne, mais j’ai besoin de faire précéder tout appel à python par «source activer tensorflow». Et le programme d'installation fonctionne bien, si vous démarrez python de la manière standard (dans le terminal), le flux de tensor est bien chargé.
Ma question est la suivante: comment puis-je également le faire fonctionner dans les cahiers Jupyter?
Cela m'amène à une question plus générale: il semble que mon noyau python dans Jupyter/Anaconda soit distinct du noyau python (ou d'un environnement (je ne suis pas sûr de la terminologie utilisée ici) utilisé dans l'ensemble du système. Ce serait bien si ceux-ci coïncidaient, de sorte que si j'installe une nouvelle bibliothèque python, elle devient accessible à toutes les manières différentes dont je dispose pour exécuter Python.
Mettre à jour
Site Web TensorFlow prend en charge cinq installations.
Si je comprends bien, utiliser Installation de Pip directement conviendrait pour importer TensorFlow dans Jupyter Notebook (tant que Jupyter Notebook a été installé et qu’il n’ya pas eu d’autres problèmes) b/z n’a pas créé d’environnements virtuels.
Utiliser virtualenv install et conda install aurait besoin d’installer jupyter dans l’environnement TensorFlow nouvellement créé pour permettre à TensorFlow de fonctionner dans Jupyter Notebook (pour plus de détails, reportez-vous à la section suivante sur le post suivant.
Je pense que docker install peut nécessiter une configuration de port dans VirtualBox pour que TensorFlow fonctionne dans Jupyter Notebook ( voir cet article ).
Pour installation à partir de sources , cela dépend également de l'environnement dans lequel le code source est construit et installé. S'il est installé dans un environnement virtuel fraîchement créé ou dans un environnement virtuel sur lequel Jupyter Notebook n'est pas installé, il devra également installer Jupyter Notebook dans l'environnement virtuel pour utiliser Tensorflow dans Jupyter Notebook.
Message original
Pour utiliser tensorflow dans Ipython et/ou Jupyter (Ipython) Notebook, vous devez installer Ipython et Jupyter (après avoir installé tensorflow) dans un environnement activé par tensorflow.
Avant d’installer Ipython et Jupyter sous l’environnement tensorflow, effectuez les commandes suivantes dans le terminal:
username$ source activate tensorflow
(tensorflow)username$ which ipython
(tensorflow)username$ /Users/username/anaconda/bin/ipython
(tensorflow)username$ which jupyter
(tensorflow)username$ /Users/username/anaconda/bin/jupyter
(tensorflow)username$ which python
(tensorflow)username$ /User/username//anaconda/envs/tensorflow/bin/python
Cela vous dit que lorsque vous ouvrez python depuis un terminal, il utilise celui installé dans les "environnements" où tensorflow est installé. Par conséquent, vous pouvez réellement importer tensorflow avec succès. Cependant, si vous essayez d’exécuter ipython et/ou jupyter notebook, ceux-ci ne sont pas installés dans les "environnements" équipés de tensorflow, il est donc nécessaire de revenir à l’utilisation de l’environnement standard qui n’a pas de module tensorflow. Erreur.
Vous pouvez le vérifier en listant les éléments dans le répertoire envs/tensorflow/bin:
(tensorflow) username$ ls /User/username/anaconda/envs/tensorflow/bin/
Vous verrez qu'il n'y a pas de liste "ipython" et/ou "jupyer".
Pour utiliser tensorflow avec les ordinateurs portables Ipython et/ou Jupyter, il suffit de les installer dans l’environnement tensorflow:
(tensorflow) username$ conda install ipython
(tensorflow) username$ pip install jupyter #(use pip3 for python3)
Après les avoir installés, il devrait y avoir un "jupyer" et un "ipython" dans le répertoire envs/tensorflow/bin /.
Remarques: Avant d'essayer d'importer le module tensorflow dans le cahier jupyter, essayez de fermer le cahier. Et "source désactiver tensorflow" en premier, puis le réactiver ("source activer tensorflow") pour s'assurer que les choses sont "sur la même page". Rouvrez ensuite le bloc-notes et essayez d’importer tensorflow. Il devrait être importé avec succès (travaillé au moins sur le mien).
j'ai utilisé ces suivants qui dans virtualenv.
pip3 install --ignore-installed ipython
pip3 install --ignore-installed jupyter
Cela réinstalle les ordinateurs portables ipython et jupyter dans mon environnement virtuel tensorflow. Vous pouvez le vérifier après l'installation avec which ipython
et which jupyter
. La bin
sera sous env virtuel.
NOTEJ'utilise python 3. *
J'ai une autre solution que vous n'avez pas besoin de source activate tensorflow
avant d'utiliser jupyter notebook
à chaque fois.
Partion 1
Premièrement, vous devez vous assurer que vous avez installé jupyter dans votre virtualenv. Si vous avez installé, vous pouvez ignorer cette section (Utilisez which jupyter
pour vérifier). Sinon, vous pourriez exécuter source activate tensorflow
, puis installer jupyter dans votre virtualenv avec conda install jupyter
. (Vous pouvez aussi utiliser pip
.)
Partion 2
1.Dans votre environnement virtuel, exécutez
username$ source activate tensorflow
(tensorflow)username$ ipython kernelspec install-self --user
Cela créera un kernelspec pour votre virtualenv et vous indiquera où il se trouve:
(tensorflow)username$ [InstallNativeKernelSpec] Installed kernelspec pythonX in /home/username/.local/share/jupyter/kernels/pythonX
Où pythonX correspondra à la version de Python dans votre virtualenv.
2.Copiez le nouveau kernelspec quelque part utile. Choisissez un kernel_name
pour votre nouveau noyau autre que python2
ou python3
ou celui que vous avez utilisé auparavant, puis:
(tensorflow)username$ mkdir -p ~/.ipython/kernels
(tensorflow)username$ mv ~/.local/share/jupyter/kernels/pythonX ~/.ipython/kernels/<kernel_name>
3.Si vous souhaitez modifier le nom du noyau indiqué par IPython, vous devez éditer ~/.ipython/kernels/<kernel_name>/kernel.json
et modifier la clé JSON appelée display_name
pour en faire un nom de votre choix.
4.Vous devriez maintenant pouvoir voir votre noyau dans le menu du cahier IPython: Kernel -> Change kernel
et pouvoir ainsi y accéder (vous devrez peut-être actualiser la page avant qu'elle n'apparaisse dans la liste). IPython se souviendra ensuite du noyau à utiliser pour ce cahier.
Voici ce que j'ai fait pour activer tensorflow dans Anaconda -> Jupyter.
Votre installation d’Anaconda est probablement passée dans un répertoire différent de celui de votre installation de Python
Par exemple, sur ma machine, je peux trouver l'emplacement ici
yaroslavvb-macbookpro:~ yaroslavvb$ which ipython
/Users/yaroslavvb/anaconda/bin/ipython
Lorsque vous tapez python
, il essaie de le trouver dans PATH
en allant de gauche à droite. Donc, vous pouvez avoir une autre version de python
dans un dossier avant le dossier Anaconda, et il l’utilisera. Pour corriger cela, vous pouvez faire export PATH=....
pour changer le chemin, et mettre le répertoire Anaconda devant, de sorte qu'il prenne python
à la place de la valeur par défaut,
export PATH=/Users/yaroslavvb/anaconda/bin:$PATH
J'ai installé PIP avec Conda conda install pip
au lieu de apt-get install python-pip python-dev
.
Alors installé tensorflow Utilisez Pip Installation :
# Ubuntu/Linux 64-bit, CPU only, Python 2.7
$ export TF_BINARY_URL=https://storage.googleapis.com/tensorflow/linux/cpu/tensorflow-0.9.0-cp27-none-linux_x86_64.whl
# Ubuntu/Linux 64-bit, GPU enabled, Python 2.7
# Requires CUDA toolkit 7.5 and CuDNN v4. For other versions, see "Install from sources" below.
$ export TF_BINARY_URL=https://storage.googleapis.com/tensorflow/linux/gpu/tensorflow-0.9.0-cp27-none-linux_x86_64.whl
...
pip install --upgrade $TF_BINARY_URL
Ensuite, cela fonctionnera dans le cahier Jupyter.
J'ai trouvé la solution de quelqu'un d'autre post. C'est simple et ça marche bien!
http://help.pythonanywhere.com/pages/IPythonNotebookVirtualenvs
Installez simplement les éléments suivants dans l'invite de commande et remplacez le noyau par Python 3 dans Jupyter Notebook. Il importera tensorflow avec succès.
pip installer tornade == 4.5.3
pip installer ipykernel == 4.8.2
(Poste original: https://github.com/tensorflow/tensorflow/issues/11851 )
J'ai eu un problème similaire lors de l'utilisation d'une image Ubuntu 16
personnalisée. Le problème était lié à une version existante de numpy
déjà installée sur mon système.
J'ai d'abord essayé
Sudo pip3 install tensorflow
Cela a entraîné l'exception suivante:
Exception: Traceback (dernier appel passé): Fichier "/anaconda/envs/py35/lib/python3.5/shutil.py", ligne 538, dans move os.rename (src, real_dst) PermissionError: [Errno 13] Autorisation refusée: '/anaconda/envs/py35/lib/python3.5/site-packages/numpy' -> '/ tmp/pip-co73r3hm-uninstall/anaconda/envs/py35/lib/python3 .5/site-packages/numpy '
Si vous rencontrez des problèmes avec cette commande, consultez la documentation:
Sudo pip3 install --upgrade \
https://storage.googleapis.com/tensorflow/linux/cpu/tensorflow-1.0.1-cp35-cp35m-linux_x86_64.whl
Cependant, mon système n'a pas pu localiser pip3
Sudo: commande pip3 non trouvée
La solution ultime consistait à créer une symlink
pour pip3
Sudo ln -s /anaconda/envs/py35/bin/pip3.5 /usr/local/bin/pip3
Enfin, la commande suivante a fonctionné sans problème
Sudo /usr/local/bin/pip3 install --upgrade \
https://storage.googleapis.com/tensorflow/linux/cpu/tensorflow-1.0.1-cp35-cp35m-linux_x86_64.whl
J'ai vérifié l'installation dans la terminal
et également vérifié une importation réussie dans mon Jupyter Notebook
import tensorflow as tf
Je me demande s'il ne suffit pas de simplement lancer ipython à partir d'un environnement tensorflow. C’est-à-dire 1) d’abord activer tensorflow virtualenv avec:
source ~/tensorflow/bin/activate
2) lancer ipython sous environnement tensorflow
(tensorflow)$ ipython notebook --ip=xxx.xxx.xxx.xxx
La réponse acceptée (par Zhongyu Kuang) vient de m'aider. Ici, j'ai créé un fichier environment.yml
qui me permet de rendre ce processus d'installation conda/tensorflow reproductible.
environment.yml
ressemble à ceci:
name: hello-tensorflow
dependencies:
- python=3.6
- jupyter
- ipython
- pip:
- https://storage.googleapis.com/tensorflow/linux/gpu/tensorflow_gpu-1.1.0-cp36-cp36m-linux_x86_64.whl
Remarque:
hello-tensorflow
)3.6
)Le environment.yml
étant dans le chemin actuel sur lequel vous vous trouvez, cette commande crée l'environnement hello-tensorflow
(ou le nom que vous avez renommé):
conda env create -f environment.yml
Activer le nouvel environnement créé:
source activate hello-tensorflow
quel python ...
(hello-tensorflow) $ which python
/home/johnny/anaconda3/envs/hello-tensorflow/bin/python
quel jupyter ...
(hello-tensorflow) $ which jupyter
/home/johnny/anaconda3/envs/hello-tensorflow/bin/jupyter
quel ipython ...
(hello-tensorflow) $ which ipython
/home/johnny/anaconda3/envs/hello-tensorflow/bin/ipython
Vous devriez maintenant pouvoir importer tensorflow depuis python, jupyter (console/qtconsole/notebook, etc.) et ipython.
Je pense que votre question est très similaire avec la question post ici. Ordinateur portable jupyter Windows 7 exécutant tensorflow . Comme Yaroslav l'a mentionné, vous pouvez essayer
conda install -c http://conda.anaconda.org/jjhelmus tensorflow
.