Я советую вам заглянуть в бумажную фабрику . Он копирует и запускает шаблон ноутбука, используя nbconvert под капотом. Основным преимуществом papermill я считаю то, что вы можете легко параметризировать блокноты и передавать параметры через словарь python. Затем копии шаблона сохраняют историю того, что было выполнено, и результаты.
Ваш код будет выглядеть примерно так:
import papermill as pm
pm.execute_notebook(
'lemmatize-input-data.ipynb',
'lemmatize-input-data-####.ipynb'
)
Если #### быть чем-то вроде datetime.now () или чем-то еще, что вы хотели бы отличать ноутбуки по мере их выполнения.
Поскольку записные книжки предназначены для использования в качестве живых документов, вы хотите ограничить количество внешних зависимостей, которые могут привести к критическим изменениям, если записная книжка изменится, и вам необходимо будет повторно выполнить ее на определенный момент времени. Papermill решает эту проблему путем создания снимка того, что было выполнено в то время.
Обновление для получения дополнительной информации:
Я бы обновил записную книжку jupyter, чтобы вместо кода скрипта содержался код python. Записная книжка будет выполнять ячейка за ячейкой и действовать как скрипт. Это также позволяет вам печатать и отображать промежуточные и конечные значения в блокноте, если это необходимо. Когда бумажная фабрика копирует и выполняет шаблон записной книжки, все выходные данные будут отображаться и сохраняться в записной книжке. Это удобно для любых сгенерированных графиков.
Papermill также обладает функциональностью, которая затем объединяет данные в разных ноутбуках. См. здесь для хорошей статьи, обобщающей бумагу в целом. Papermill был разработан Netflix, и у них есть хорошая статья о философии здесь , в которой они ссылаются на машинное обучение.
С учетом всего вышесказанного, бумажная фабрика может использоваться для простого документирования каждого шага обучения вашей модели машинного обучения в Sagemaker. Затем, используя возможности агрегирования papemrill, вы можете графически видеть, как со временем изменилась ваша модель.