AWS SageMaker Training Job не сохраняет вывод модели - PullRequest
0 голосов
/ 10 февраля 2020

Я выполняю учебную работу на SageMaker. Задание не полностью выполнено и достигает условия остановки MaxRuntimeInSeconds. Когда работа останавливается, документация говорит, что артефакт все еще будет сохранен. Я прикрепил статус прогресса моей тренировочной работы ниже. Похоже, учебная работа закончена правильно. Однако выходная папка S3 пуста. Есть идеи, что здесь происходит не так? Данные обучения находятся в том же ведре, поэтому в них должно быть все необходимое.

status progression

Ответы [ 2 ]

0 голосов
/ 05 марта 2020

Если превышено MaxRuntimeInSeconds, то загрузка модели выполняется только наилучшим образом и действительно зависит от того, сохранил ли алгоритм какое-либо состояние до /opt/ml/model до его завершения.

Двухминутный период ожидания между С 15:33 до 15:35 на этапе Stopping означает максимальное время между SIGTERM и SIGKILL сигналом, отправляемым в ваш алгоритм (см. SageMaker do c для получения более подробной информации ). Если ваш алгоритм перехватывает SIGTERM, он должен использовать его в качестве сигнала для изящного сохранения своей работы и завершения работы до того, как платформа SageMaker принудительно убьет его с помощью сигнала SIGKILL через 2 минуты.

Учитывая, что период ожидания в Stopping шаг - ровно 2 минуты, а также тот факт, что Uploading шаг начался в 15:35 и завершился почти сразу же в 15:35. Вероятно, ваш al go не воспользовался предупреждением SIGTERM и что ничего не сохранено в /opt/ml/model. Чтобы дать вам четкий ответ относительно того, действительно ли это так, создайте сообщение на форуме SageMaker , и команда SageMaker может отправить вам личное сообщение, чтобы собрать подробности о вашей работе.

0 голосов
/ 18 февраля 2020

Судя по прогрессии состояния, загрузка тренировочного образа завершена в 15:33 UT C, и к этому времени условие остановки было инициировано на основе указанного вами параметра MaxRuntimeInSeconds. С тех пор требуется 2 минуты (с 15:33 до 15:35) для сохранения любого доступного артефакта модели, но в вашем случае процесс обучения вообще не происходил. Единственное, что было сделано, - это загрузка предварительно созданного изображения (содержащего алгоритм ML). Пожалуйста, обратитесь к следующим строкам из документации, в которой говорится, что сохраняемая модель зависит от состояния, в котором находится процесс обучения. Возможно, вы можете попытаться увеличить MaxRuntimeInSeconds и снова запустить задание. Кроме того, проверьте MaxWaitTimeInSeconds значение, которое вы установили, если оно есть. Оно должно быть равно или больше MaxRuntimeInSeconds.

Пожалуйста, найдите выдержки из AWS документации :

"Алгоритмы обучения, предоставляемые Amazon SageMaker, автоматически сохраняют промежуточные результаты модельной учебной работы, когда Эта попытка сохранить артефакты является наилучшим вариантом, поскольку модель может не находиться в состоянии, из которого она может быть сохранена. Например, если обучение только началось, модель может быть не готова к сохранению. "

...