Обзор MLOps

11 мин на чтение

Оригинал

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

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

Жизненный цикл модели машинного обучения

Операции машинного обучения (MLOps) - это все, что необходимо для того, чтобы эта модель стала полезной, включая возможности для автоматизированного конвейера разработки и развертывания, мониторинга, управления жизненным циклом и руководства, как показано выше. Давайте посмотрим на каждый из них.

Конвейер автоматизации

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

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

Мониторинг

Модели машинного обучения обычно работают хорошо при первом развертывании, а затем со временем работают хуже. Как сказал аналитик Forrester, доктор Кьелл Карлсон: «модель AI, как шестилетние дети во время карантина: они нуждаются в постоянном внимании… иначе что-нибудь сломается».

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

Точно так же модель может стать менее применимой из-за изменения условий реального мира - явления, известного как дрейф концепций. Например, COVID-19 отправил в небытие многие прогнозные модели поведения клиентов и поставщиков.

Некоторые компании также отслеживают альтернативные модели (например, разные архитектуры нейросетей или разные гиперпараметры), чтобы увидеть, начинает ли какая-либо из этих «претендентов» работать лучше, чем основная, продуктовая, модель.

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

Управление жизненным циклом

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

Управление

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

В результате организации, использующие процесс принятия решений на основе машинного обучения, вынуждены следить за тем, чтобы их модели никого не дискриминировали и могли объяснить свои решения. Многие поставщики MLOps-решений включают инструменты, основанные на академических исследованиях (например, SHAP и Grad-CAM), которые помогают объяснить решения по модели, и используют различные методы, чтобы гарантировать, что данные и модели не являются предвзятыми. Кроме того, они включают тесты на предвзятость и объяснимость в свои протоколы мониторинга, потому что со временем модели могут стать предвзятыми или потерять объясняющую способность.

Организациям также необходимо постепенно формировать доверие и начинать следить за тем, чтобы текущая производительность, отсутствие предвзятости и объяснимость поддавались аудиту. Для этого требуются каталоги моделей, которые не только документируют все решения по данным, параметрам и архитектуре, но также регистрируют каждое решение и обеспечивают прослеживаемость, чтобы можно было определить, какие данные, модель и параметры использовались для каждого решения, когда модель была переобучена или иным образом изменено и кто внес каждое изменение. Для аудиторов также важно иметь возможность повторять исторические транзакции и проверять границы модели принятия решений с помощью сценариев «что, если».

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

Правительства по всему миру также стремятся регулировать процесс принятия решений на основе обученных моделей, затрагивающих людей. Европейский Союз первым ввел свои правила GDPR и CRD IV в этой сфере. В США несколько регулирующих агентств, в том числе Федеральный резервный банк США и FDA, создали правила, регулирующие принятие финансовых и медицинских решений на основе машинного обучения. Более всеобъемлющий нормативный акт, недавно предложенный “Закон об отчетности и прозрачности данных” 2020 года, намечен на рассмотрение Конгресса США в 2021 году. Правила, скорее всего, доработают до такой степени, что генеральному директору потребуется подтвердить объяснимость и отсутствие предвзятости в своих моделях машинного обучения.

Ландшафт MLOps

В 2021 году, рынок MLOps стремительно растет. По данным аналитической компании Cognilytica,ожидается, что объем рынка составит 4 миллиарда долларов к 2025 году.

В сфере MLOps есть как крупные, так и мелкие игроки. Основные поставщики платформ машинного обучения, такие как Amazon, Google, Microsoft, IBM, Cloudera, Domino, DataRobot и H2O, включают возможности MLOps в свои платформы. По данным Crunchbase, в сфере MLOps есть 35 частных компаний, которые привлекли от 1,8 до 1 млрд долларов финансирования и имеют от 3 до 2800 сотрудников в LinkedIn:

Финансирование ( млн.долл.) Кол-во сотрудников Описание
Cloudera 1000 2803 Cloudera предоставляет корпоративное облако данных для любых данных в любом месте.
Databricks 897 1757 Databricks - это программная платформа, которая помогает своим клиентам унифицировать аналитику для бизнеса, науки о данных и инженерии данных.
DataRobot 750 1105 DataRobot предлагает глобальным предприятиям технологии искусственного интеллекта и услуги по повышению рентабельности инвестиций.
Dataiku 246 556 Dataiku работает как корпоративная платформа искусственного интеллекта и машинного обучения.
Alteryx 163 1623 Alteryx ускоряет цифровую трансформацию за счет объединения аналитики, обработки данных и автоматизированных процессов.
H2O 151 257 H2O.ai - лидер в области ИИ и автоматического машинного обучения с открытым исходным кодом, цель которого - демократизировать ИИ для всех.
Domino 124 232 Domino - это ведущая в мире корпоративная платформа для анализа данных, обеспечивающая более 20% компаний из списка Fortune 100.
Iguazio 72 83 Платформа Iguazio Data Science Platform позволяет разрабатывать, развертывать и управлять приложениями искусственного интеллекта в масштабе и в режиме реального времени.
Explorium.ai 50 96 Explorium предлагает платформу для анализа данных, основанную на расширенном обнаружении данных и разработке функций.
Algorithmia 38 63 Algorithmia - это решение для развертывания и управления моделями машинного обучения, которое автоматизирует MLOps для организации.
Paperspace 23 37 Paperspace поддерживает приложения следующего поколения, созданные на основе графических процессоров.
Pachyderm 21 32 Pachyderm - это платформа для анализа данных корпоративного уровня, которая делает реальностью объяснимый, воспроизводимый и масштабируемый AI/ML.
Weights and Biases 20 58 Инструменты для отслеживания экспериментов, повышения производительности моделей и совместной работы с результатами
OctoML 19 37 OctoML меняет способы оптимизации и развертывания моделей машинного обучения разработчиками для своих нужд ИИ.
Arthur AI 18 28 Arthur AI - это платформа, которая отслеживает продуктивность моделей машинного обучения.
Truera 17 26 Truera предоставляет предприятиям платформу Model Intelligence для анализа машинного обучения.
Snorkel AI 15 39 Snorkel AI нацелен на практическое применение ИИ с помощью Snorkel Flow: платформы данных прежде всего для ИИ предприятия
Seldon.io 14 48 Платформа развертывания машинного обучения
Fiddler Labs 13 46 Fiddler позволяет пользователям создавать прозрачные, объяснимые решения ИИ.
run.ai 13 26 Run:AI разрабатывает автоматизированную технологию распределенного обучения, которая виртуализирует и ускоряет глубокое обучение.
ClearML (Allegro) 11 29 Экспериментальный менеджер ML/DL и решение с открытым исходным кодом MLOps-решение для управления жизненным циклом продукта
Verta 10 15 Verta создает программную инфраструктуру, чтобы помочь группам корпоративного анализа данных и машинного обучения (ML) разрабатывать и развертывать модели машинного обучения.
cnvrg.io 8 38 cnvrg.io - это платформа для анализа данных с полным стеком, которая помогает командам управлять моделями и строить конвейеры машинного обучения.
Datatron 8 19 Datatron предоставляет единую платформу управления моделями для машинного обучения.
Comet 7 19 Comet.ml - это платформа машинного обучения, разработанная, чтобы помочь специалистам-практикам и командам ИИ создавать надежные модели машинного обучения.
ModelOp 6 39 Управление, мониторинг и управление всеми моделями предприятия
WhyLabs 4 15 WhyLabs - это компания, занимающаяся наблюдением и мониторингом ИИ.
Arize AI 4 14 Arize AI предлагает платформу, которая объясняет и устраняет неполадки производственного ИИ.
DarwinAI 4 31 Технология генеративного синтеза DarwinAI «ИИ, создающая ИИ» обеспечивает оптимизированное и понятное глубокое обучение.
Mona 4 11 Mona - это платформа мониторинга SaaS для систем, управляемых данными и искусственным интеллектом.
Valohai 2 13 Управляемая платформа машинного обучения, которая позволяет специалистам по обработке данных создавать, развертывать и отслеживать модели машинного обучения.
Modzy 0 31 Безопасная платформа ModelOps для обнаружения, развертывания, управления и управления машинным обучением в любом масштабе - более быстрое получение прибыли.
Algomox 0 17 Трансформация, основанная на искусственном интеллекте
Monitaur 0 8 Monitaur - это компания-разработчик программного обеспечения, которая обеспечивает возможности аудита, прозрачности и управления для компаний, использующих программное обеспечение для машинного обучения.
Hydrosphere.io 0 3 Hydrosphere.io - платформа для автоматизации операций AI/ML.

Многие из этих компаний сосредоточены только на одном сегменте MLOps, таком как конвейер автоматизации, мониторинг, управление жизненным циклом или руководство. Некоторые утверждают, что использование нескольких лучших в своем классе продуктов MLOps лучше для проектов в области науки о данных, чем монолитные платформы. А некоторые компании создают продукты MLOps для вертикальной интеграции. Например, Monitaur позиционирует себя как лучшее в своем классе решение для управления, которое может работать с любой платформой. Monitaur также создает специализированные решения по управлению MLOps для регулируемых отраслей, таких как страхование. (Полное раскрытие информации: я инвестор в Monitaur).

Есть также целый ряд MLOps проектов в открытым исходным кодом, в том числе:

  • MLFlow управляет жизненным циклом ML, в том числе эксперименты, воспроизводимость и развертывание, включает в себя реестр моделей;
  • DVC управляет контролем версий для проектов Ml, чтобы сделать их общедоступными и воспроизводимыми;
  • Polyaxon имеет возможности для экспериментирования, автоматизации жизненного цикла, командной разработки и развертывания, а также реестр моделей
  • Metaflow - это бывший проект Netflix по управлению конвейером автоматизации и развертыванием.
  • Kubeflow имеет возможности для автоматизации рабочих процессов и развертывания в контейнерах Kubernetes.

2021 год обещает стать интересным годом для MLOps. Скорее всего, мы увидим быстрый рост, колоссальную конкуренцию и, скорее всего, некоторую консолидацию.