Я использую платформу AI из облачной платформы Google для обучения классификатора случайного леса с помощью scikit-learn, используя этот шаблон из GitHub Google Cloud Platform.
Я скорректировал код в некоторых местах, чтобы он соответствовал моей проблеме. Код написан на Python 3.5 с использованием PyCharm и на устройстве Ubuntu. Обучение модели в облаке отлично работает с использованием следующего терминала команда (без дополнительных аргументов):
gcloud ai-platform jobs submit training
Но когда я пытаюсь использовать локальную функцию обучения AI-платформы внутри моей виртуальной среды (python 3.5):
gcloud ai-platform local train
(без дополнительных аргументов). Он возвращает следующую ошибку:
Traceback (most recent call last):
File "/snap/google-cloud-sdk/99/usr/lib/python2.7/runpy.py", line 174, in _run_module_as_main
"__main__", fname, loader, pkg_name)
File "/snap/google-cloud-sdk/99/usr/lib/python2.7/runpy.py", line 72, in _run_code
exec code in run_globals
File "/home/merijn/PycharmProjects/user-matching/trainer/task.py", line 28, in <module>
from trainer import model
File "trainer/model.py", line 28, in <module>
from trainer import utils
File "trainer/utils.py", line 23, in <module>
from tensorflow import gfile
ImportError: No module named tensorflow
Все зависимости правильно установлены в моей виртуальной среде, включая TensorFlow. До ошибки импорта TensorFlow это была ошибка импорта sklearn, которую я решил, установив модуль sklearn в моей обычной среде. Это подтверждает мое предположение, что это, вероятно, связано с Google SDK, работающим на python 2.7 в моей обычной среде. Поэтому, когда я запускаю команду gcloud
в моем venv, она, скорее всего, запускает всю мою программу в моей обычной среде, а не в моем venv, и пока я не могу заставить ее работать в моем venv. Обратите внимание, что я уже пробовал много разных значений аргументов --job-dir
и --package-path
.
После нескольких дней поисков в Интернете я все еще не могу найти способ локально тренироваться с AI-платформой в виртуальной среде с установленным python 3.5. Надеюсь, ты сможешь мне помочь.