Теперь Кью работает в режиме чтения

Мы сохранили весь контент, но добавить что-то новое уже нельзя
Машинное обучение, анализ данных  · 6 мая 2022

Neptune.ai - организация экспериментов в одну строчку кода

Neptune.ai - это хранилище метаданных MLOps, реестр моделей и организация экспериментов.
Что означает термин "хранилище метаданных"?
Хранилище метаданных машинного обучения является важной частью стека MLOps, которое занимается управлением метаданными построения модели. Оно позволяет легко регистрировать, хранить, отображать, упорядочивать, сравнивать и запрашивать все метаданные, созданные в течение жизненного цикла модели машинного обучения.
О каких метаданных идет речь?
  1. Метаданные эксперимента и обучения модели
Можно регистрировать все, что происходит во время запуска ML, в том числе:
  • Метрики
  • Гиперпараметры
  • Кривые обучения
  • Исходный код экспериментов и файлы конфигурации
  • Результаты (изображения, таблицы и т. д.)
  • Диагностические диаграммы (матрица ошибок, кривая ROC и т. д.)
  • Лог консоли
  • Лог оборудования
  1. Метаданные артефактов
Для наборов данных, результатов или моделей можно регистрировать:
  • Ссылки на источники данных или модели (облачное хранилище, файловая система)
  • Хэш набора данных
  • Предварительный просмотр набора данных/результатов (заголовок таблицы, скриншоты папки с изображениями)
  • Описание
  • Имена столбцов признаков (для табличных данных)
  • Кто создал/изменил
  • Дата последнего изменения
  • Размер набора данных
  1. Метаданные моделей
  • Бинарный файл модели или местоположение модели
  • Версии данных
  • Ссылки на записанные эксперименты по обучению моделей
  • Кто обучал модель
  • Описания моделей и примечания
  • Ссылки на информационные панели наблюдения (Grafana)
Подробнее о том, что ещё можно хранить можно посмотреть здесь.
Для чего можно использовать хранилище метаданных?
  1. Для систематизации экспериментов - отслеживать, систематизировать и сравнивать все, что нужно, в экспериментах по машинному обучению.
  2. Для реестра моделей - вести прозрачный учёт моделей, получать доступ в любой момент к модели и её метаданным
Как начать работу?
  1. Первый шаг - бесплатная регистрация по ссылке: https://neptune.ai/register
  2. Далее нужно установить библиотеку на локальном компьютере:
! pip install neptune-client
  1. Затем создать эксперимент и передать учетные данные:
import [[[neptune.new](http://neptune.new)]([http://neptune.new](http://neptune.new))]([[http://neptune.new](http://neptune.new)]([http://neptune.new](http://neptune.new))) as neptune
run = neptune.init(project="common/colab-test-run", api_token="ANONYMOUS")
  1. После этого можно журналировать всё, что связано с моделями машинного обучения, экспериментами и данными, в том числе:
  • исходный код и файлы конфигурации;
  • параметры и показатели;
  • использование оборудования и журналы консоли;
  • графики производительности и интерактивные визуализации;
  • веса моделей;
  • и многое другое.
Как всё сделать ещё проще?
Не писать код для журналирования самостоятельно. В библиотеке фреймворка Neptune.ai уже реализовано более 25 интеграций со всеми основными платформами машинного обучения, чтобы сделать работу еще проще:
  • PyTorch и PyTorch Lightning;
  • TensorFlow/Keras и TensorBoard;
  • Scikit-Learn, LightGBM и XGBoost;
  • Optuna, Scikit Optiimize и Keras Tuner;
  • Bokeh, Altair, Plotly и Matplotlib;
  • и др
Рассмотрим эту возможность на примере модели регрессора RandomForestRegressor из библиотеки Scikit-Learn. Добавив в свой код всего одну строчку (не считая импорт библиотеки neptune и регистрацию эксперимента) можно получить:
Пример кода здесь.
Полезные ссылки:
Документация: https://docs.neptune.ai/