Блокнот Jupyter не распознает «факел импорта» - PullRequest
0 голосов
/ 09 сентября 2018

Чтобы установить PyTorch в Ubuntu, в соответствии с инструкциями официального сайта, я сделал pip3 install torch torchvision, и я могу запустить PyTorch с помощью команды python3.5.

Однако, когда я запускаю Jupyter Notebook (я просто запускаю Jupyter Notebook в терминале и использую Chrome для доступа к моим ноутбукам), он не распознает пакет, выбрасывая ModuleNotFoundError: No module named 'torch' на меня.

Другая странность заключается в том, что PyTorch, кажется, был установлен только на Python 3.5, а не на Python 3.6, потому что:

➜  ~ python3.5 -c "import torch; print(torch.__version__)"     
0.4.1
➜  ~ python3.6 -c "import torch; print(torch.__version__)"     
Traceback (most recent call last):
  File "<string>", line 1, in <module>
ModuleNotFoundError: No module named 'torch'
➜  ~

Поэтому я предполагаю, что Jupyter Notebook не использует Python 3.5.

Это результат, когда я набираю python в моем терминале и нажимаю TAB:

➜  ~ python
python             python2.7          python3.5          python3.5m         python3.6          python3.6m         python3-config     python3m-config  
python2            python3            python3.5-config   python3.5m-config  python3.6-config   python3.6m-config  python3m

Кроме того, когда я запускаю which python, я получаю /home/mhy/anaconda3/bin/python, так как недавно установил Anaconda. Затем я активировал env и установил PyTorch, используя следующие команды:

source activate my_env
conda install torch torchvision

Но я не смог запустить PyTorch на Anaconda.

1 Ответ

0 голосов
/ 26 января 2019

Во-первых, проверьте, запускаете ли вы ноутбук Jupyter в другой среде, отличной от той, в которой установлен PyTorch:

(my_env) instance-1:~$ source activate my_env
(my_env) instance-1:~$ python
>>> import  sys
>>> print(sys.executable)
/home/instance-1/anaconda3/envs/my_env/bin/python

и затем запустите ноутбук в среде my_env: (my_env) instance-1:~$ jupyter notebook И в записной книжке выполните print(sys.executable), тогда, если вы получите что-то вроде ‘/home/instance-1/anaconda3/bin/python’, вы создали записную книжку в среде, которую Jupyter использует по умолчанию.

Я столкнулся с той же проблемой, когда обнаружил, что в консоли ноутбука Jupyter у вас есть возможность создавать ноутбуки в разных средах. Поэтому просто перейдите в раздел «Создать» и выберите что-то вроде Python(myenv), чтобы создать блокнот в нужной среде (в данном случае my_env).

...