Как быстро отладить учебный скрипт SageMaker? - PullRequest
0 голосов
/ 23 января 2019

При выполнении учебного задания по ML в Amazon SageMaker учебный сценарий «развертывается» и получает обучающий экземпляр ML, который занимает около 10 минут для раскрутки и получения необходимых данных.

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

После внесения изменений в учебный сценарий, чтобы исправить его, мне нужно развернуть и запустить его, который займет еще около 10 минут.

Как я могу выполнить это быстрее или сохранитьучебный экземпляр запущен?

Ответы [ 2 ]

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

Если вы используете TF, MXNet, Pytorch или Chainer, локальный режим действительно является гораздо более быстрым способом итерации. Еще более быстрое решение состоит в том, чтобы кодировать и отлаживать на своем локальном компьютере набор игрушечных данных, убедившись, что код обучения / прогнозирования работает правильно, прежде чем переносить его в SageMaker. Вы даже можете использовать те же контейнеры, что и в SageMaker, так как они все с открытым исходным кодом, например https://github.com/aws/sagemaker-tensorflow-container.

Если вы используете пользовательский контейнер, то вы также можете работать локально, прежде чем отправить его в ECR и использовать его с SageMaker.

Если вы используете встроенный алгоритм, нет другого выбора, кроме обучения / прогнозирования с экземплярами, управляемыми SageMaker. Однако в этом случае вы не пишете код ML, поэтому риск возникновения проблем меньше:)

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

Кажется, что вы выполняете задание на обучение с использованием одной из сред SageMaker. Учитывая это, вы можете использовать функцию «локального режима» SageMaker, которая будет запускать ваше учебное задание (в частности, контейнер) локально в экземпляре вашего ноутбука. Таким образом, вы можете перебирать свой скрипт, пока он не заработает. Затем вы можете перейти к удаленному обучающему кластеру, чтобы при необходимости обучить модель по всему набору данных. Чтобы использовать локальный режим, вы просто устанавливаете тип экземпляра на «локальный». Более подробную информацию о локальном режиме можно найти по адресу https://github.com/aws/sagemaker-python-sdk#sagemaker-python-sdk-overview и в блоге: https://aws.amazon.com/blogs/machine-learning/use-the-amazon-sagemaker-local-mode-to-train-on-your-notebook-instance/

...