ModuleNotFoundError: нет модуля с именем theano.tensor.shared_randomstreams - PullRequest
1 голос
/ 19 марта 2020

Я пытался преобразовать свой код python в исполняемый файл, используя pyinstaller. Я использую Ubuntu 18.04 с pyinstaller = 3.5 и setuptools = 41.2.0. Когда я запускаю исполняемый файл, я получаю следующую ошибку:

Using Theano backend.
Traceback (most recent call last):
File "main_test.py", line 25, in <module>
File "/home/g2-test/anaconda3/envs/ashna/lib/python3.7/site-packages/PyInstaller/loader/pyimod03_importers.py", line 627, in exec_module
exec(bytecode, module.__dict__)
File "code.py", line 2, in <module>
File "/home/g2-test/anaconda3/envs/ashna/lib/python3.7/site-packages/PyInstaller/loader/pyimod03_importers.py", line 627, in exec_module
exec(bytecode, module.__dict__)
File "site-packages/keras/__init__.py", line 3, in <module>
File "/home/g2-test/anaconda3/envs/ashna/lib/python3.7/site-packages/PyInstaller/loader/pyimod03_importers.py", line 627, in exec_module
exec(bytecode, module.__dict__)
File "site-packages/keras/utils/__init__.py", line 6, in <module>
File "/home/g2-test/anaconda3/envs/ashna/lib/python3.7/site-packages/PyInstaller/loader/pyimod03_importers.py", line 627, in exec_module
exec(bytecode, module.__dict__)
File "site-packages/keras/utils/conv_utils.py", line 9, in <module>
File "/home/g2-test/anaconda3/envs/ashna/lib/python3.7/site-packages/PyInstaller/loader/pyimod03_importers.py", line 627, in exec_module
exec(bytecode, module.__dict__)
File "site-packages/keras/backend/__init__.py", line 1, in <module>
File "/home/g2-test/anaconda3/envs/ashna/lib/python3.7/site-packages/PyInstaller/loader/pyimod03_importers.py", line 627, in exec_module
exec(bytecode, module.__dict__)
File "site-packages/keras/backend/load_backend.py", line 87, in <module>
File "/home/g2-test/anaconda3/envs/ashna/lib/python3.7/site-packages/PyInstaller/loader/pyimod03_importers.py", line 627, in exec_module
exec(bytecode, module.__dict__)
File "site-packages/keras/backend/theano_backend.py", line 7, in <module>
File "/home/g2-test/anaconda3/envs/ashna/lib/python3.7/site-packages/PyInstaller/loader/pyimod03_importers.py", line 627, in exec_module
exec(bytecode, module.__dict__)
File "site-packages/theano/__init__.py", line 247, in <module>
ModuleNotFoundError: No module named 'theano.tensor.shared_randomstreams'
[6919] Failed to execute script main_test

Я использовал

pyinstaller --onefile main_test.py

генерировать исполняемый файл. Я использовал keras, но при запуске исполняемого файла он показывает, что используется theano backend. Может кто-нибудь помочь мне решить эту проблему.

Ответы [ 2 ]

1 голос
/ 21 марта 2020

Воссоздайте следующее:

- your.code.files.py
- hooks
  - hook-theano.py

И в hook-theano.py:

from PyInstaller.utils.hooks import collect_all

datas, binaries, hiddenimports = collect_all('theano')

Затем выполните сборку с дополнительной опцией --addtional-hooks-dir=hooks.

Если вы столкнулись с другими проблемами с ошибками большего количества модулей, (например, вы не можете найти mymod.pkg.func), создайте новый файл под hooks, который будет называться hook-mymod.py.

0 голосов
/ 19 марта 2020
  1. Открытый терминал
  2. Тип sudo pip3 install theano

Если он не распознает команду pip3, проверьте, установлен ли pip, выполнив это , при условии, что оно установлено. Если это не тип sudo apt-get install pip3

...