Этап исследований и разработок (НИОКР) построения модели ИИ для решения бизнес-проблем характеризуется быстрым исследованием и итерацией. Все на столе, и эксперименты поощряются, от понимания того, как сформулировать проблему, до определения того, как наиболее эффективно использовать имеющиеся данные, до обнаружения архитектуры модели с наилучшей производительностью.

В отличие от этого, этап операционализации разработки модели ИИ требует, чтобы модель была полностью охарактеризована, давала воспроизводимые результаты и была стабильной для интеграции в процессы автоматизации. Передовые методы управления версиями моделей и инструменты контроля версий необходимы для успешного преодоления этого разрыва между исследованиями и разработками и производственным проектированием.

Основы контроля версий

В практике контроля версий нет ничего нового. Какой разработчик не заинтересован в отслеживании и управлении модификациями своих программных приложений? Из-за большого количества преимуществ, связанных с внедрением этих методов, существуют экосистемы программных инструментов и приложений, чтобы упростить контроль версий. Отраслевым стандартом для этого является Git, при этом доступен ряд размещенных программных продуктов на основе Git, включая GitHub, GitLab и Bitbucket.

Хотя эти решения необходимы для управления сложными программными проектами, их самих по себе недостаточно. В экосистеме науки о данных возникают новые проблемы, которые выходят за рамки управления версиями кода программного обеспечения и требуют инноваций для решения. Например:

Проблема. При разработке моделей ИИ часто возникают очень большие артефакты модели, которые превышают возможности традиционного программного обеспечения для контроля версий.

Решение. Такие технологии, как хранилище больших файлов Git (Git LFS), позволяют расширять Git для размещения очень больших файлов без исходного кода.

Проблема. Топливом для модели ИИ являются данные, однако наборы данных огромны, и хранение нескольких обработанных версий одного и того же набора данных может быть непомерно чрезмерным.

Решение. Такие технологии, как Data Version Control, предоставляют Git-подобные примитивы для эффективного хранения необработанных и обработанных наборов данных и управления версиями.

Ключевой вывод. Создание команды, хорошо разбирающейся в принципах управления версиями, поможет вам успешно внедрить новые инструменты управления версиями для обработки данных.

Отслеживание экспериментов с контролем версий кода и данных

На этапе НИОКР быстрая разработка имеет много преимуществ, позволяющих быстро исследовать идеи без больших затрат. Однако если этот процесс станет беспринципным, это может привести к потере знаний, дублированию усилий и дорогостоящему техническому долгу.

К счастью, строгий код модели и управление версиями данных (даже на этапе экспериментов) могут служить летописью окаменелостей для итеративного процесса, необходимого для создания высокоэффективных моделей ИИ. Таким образом, разработчики могут:

  1. Сохранять и распространять институциональные знания о модели ИИ, особенно когда над моделью одновременно работают несколько разработчиков.
  2. Пересмотрите и воспроизведите производительность различных версий модели после того, как она была оставлена ​​без присмотра через некоторое время.
  3. Убедитесь, что модель находится в состоянии, которое можно легко перевести в производственную среду.

Ключевой вывод. Проактивный подход к отслеживанию экспериментов и версии моделей упрощает процесс достижения устойчивой ценности моделей ИИ. В области отслеживания экспериментов такие инструменты, как MLFlow и SageMaker, являются хорошими инструментами для оценки.

Развертывание ИИ и управление версиями модели

Чтобы опираться на передовой опыт управления версиями, подход Modzy охватывает методы управления версиями на всех уровнях. Мы не только используем исходный код и версии данных в процессе разработки моделей, но также предоставляем универсальный шаблон для моделей ИИ, который включает уникальные идентификаторы (UID) и версии для каждой модели на платформе Modzy.

Это обеспечивает единый репозиторий исходного кода для разработки и выпуска нескольких версий модели ИИ. Каждая из этих версий модели имеет собственное полное описание и записанное состояние кода. Это огромная победа для скорости разработки. Это также упрощает процесс воспроизводимого обновления и изменения моделей.

Такое управление версиями модели полезно не только для ускорения разработки внутренней модели, но и имеет решающее значение, когда речь идет об управлении ИИ и его возможности аудита. Поскольку все модели, развернутые через платформу Modzy, упакованы и настроены для управления версиями таким образом, каждое предсказание модели может быть связано с моделью и ее историей разработки, источником данных, процедурой обучения и исходным кодом.

Ключевой вывод. Современные методы управления версиями являются основополагающим компонентом для построения правильного конвейера ModelOps для вашей организации.

Практика контроля версий, последовательно применяемая на всем пути от исследований и разработок до производственного развертывания модели ИИ, является основой для создания надежного конвейера ModelOps. Широко доступные специализированные технологии упрощают внедрение этих лучших практик как никогда. Придерживаясь этих принципов, внедрение управления версиями моделей в область науки о данных обеспечивает качество, стабильность и возможность аудита моделей.

Обязательно ознакомьтесь с другими блогами из этой серии:

Максимальное использование данных и уменьшение ошибок: создание правильного процесса подготовки данных для ИИ

Модельное обучение: наши любимые инструменты в сарае

Первоначально опубликовано на https://www.modzy.com 15 апреля 2021 г.