Как обеспечить согласованность версий программного пакета в безсерверных вычислениях AWS SageMaker? - PullRequest
0 голосов
/ 21 мая 2018

Я изучаю AWS SageMaker, который должен быть безсерверной вычислительной средой для машинного обучения.В этом типе безсерверной вычислительной среды кто должен обеспечивать согласованность программного пакета и обновлять версии?

Например, я запустил демонстрационную программу, поставляемую с SageMaker, deepar_synthetic.Во второй ячейке выполняется следующее:! Conda install -y s3fs

Однако я получил следующее предупреждающее сообщение:

Решение среды: выполнено ==> ПРЕДУПРЕЖДЕНИЕ: более новая версияКонда существует.<== текущая версия: 4.4.10 последняя версия: 4.5.4 Пожалуйста, обновите conda, выполнив $ conda update -n base conda </p>

Поскольку это вычисление без сервера, я все еще должен обновлять пакеты программного обеспечения самостоятельно?

Другой пример следующий.Я написал несколько простых строк, чтобы узнать версии пакетов в записной книжке Jupyter:

платформа импорта

импорт тензорного потока в виде tf

print (platform.python_version ())

print (tf. версия )

Тем не менее, я получил следующие предупреждающие сообщения:

/ home / ec2-user / anaconda3 / envs / тензор потока_p36 /lib / python3.6 / importlib / _bootstrap.py: 219: RuntimeWarning: версия 3.5 компиляции модуля 'tenorflow.python.framework.fast_tensor_util' не соответствует версии 3.6 времени выполнения, возвращает f (* args, ** kwds) / home / ec2-user / anaconda3 / envs / tenorflow_p36 / lib / python3.6 / site-packages / h5py / init .py: 36: FutureWarning: преобразование второго аргумента issubdtype из float в np.floatingустарела.В будущем это будет рассматриваться как np.float64 == np.dtype(float).type.из ._conv import register_converters as _register_converters

Печать все еще работала, и я получил результаты, показанные ниже:

3.6.4 1.4.0

Мне интересно, что мне нужносделать, чтобы пакет был согласованным, чтобы я не получал предупреждающие сообщенияСпасибо.

1 Ответ

0 голосов
/ 20 июля 2018

Сегодня экземпляры SageMaker Notebook - это управляемые экземпляры EC2, но пользователи по-прежнему имеют полный контроль над экземпляром Notebook в качестве корневого пользователя.У вас есть все возможности для установки недостающих библиотек через терминал Jupyter.

Чтобы получить доступ к терминалу, откройте свой экземпляр Notebook на домашней странице и щелкните раскрывающийся список в правом верхнем углу: «Новый» -> «Терминал».Примечание. По умолчанию conda устанавливается в корневую среду.

Ниже приведены инструкции, которым вы можете следовать https://conda.io/docs/user-guide/tasks/manage-environments.html по установке библиотек в конкретной среде conda.

В общем случае вам понадобятся следующие команды:

conda env list 

, которые перечисляют все ваши окружения conda

source activate <conda environment name> 

например, источник активирует python3

conda list | grep <package> 

например, список conda |grep numpy list, какие текущие версии пакетов

pip install numpy 

или

conda install numpy 

Примечание. Периодически команда SageMaker выпускает новые версии библиотек в экземпляры Notebook.Чтобы получить новые библиотеки, вы можете остановить и запустить свой экземпляр Notebook.

Если у вас есть рекомендации по библиотекам, которые вы хотели бы видеть по умолчанию, вы можете создать сообщение на форуме под https://forums.aws.amazon.com/forum.jspa?forumID=285.Кроме того, вы можете загрузить свои экземпляры Notebook с помощью конфигураций жизненного цикла для установки пользовательских библиотек.Подробнее здесь: https://docs.aws.amazon.com/sagemaker/latest/dg/API_CreateNotebookInstanceLifecycleConfig.html

...