Что такое MLOps? (Часть 1)

Моя цель - предложение широкого ассортимента товаров и услуг на постоянно высоком качестве обслуживания по самым выгодным ценам.

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

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

Что такое MLOps?

MLOps — это набор процедур, направленных на последовательное и эффективное внедрение и поддержку моделей машинного обучения (ML), используемых в производстве. Само слово представляет собой сочетание, обозначающее "Machine Learning (Машинное обучение)” и процесс непрерывной разработки "DevOps" в области программного обеспечения.

Модели машинного обучения оцениваются и совершенствуются в изолированных экспериментальных системах. Когда алгоритмы готовы к запуску, MLOps практикуется у Data Scientists — Специалистов по анализу данных, DevOps и инженеров машинного обучения для внедрения алгоритма в производственные системы.

Преимущества MLOps

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

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

Масштабируемость: MLOps также обеспечивает огромную масштабируемость и управление, позволяя осуществлять надзор, контроль, управление и мониторинг тысяч моделей для непрерывной интеграции (CI), непрерывной доставки (CD) и развертывания.

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

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

Простота развертывания высокоточных моделей — Технология MLOPs позволяет пользователям легко и уверенно развертывать высокоточные модели. Она использует преимущества автономной масштабируемости, управляемых кластеров CPU и GPU и облачного распределенного обучения. Вы можете быстро собирать модели, гарантируя отличное качество на каждом этапе с помощью профилирования и проверки этих моделей, а также переносить модели в производственную среду с помощью управляемого развертывания.

Этапы MLOps

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

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

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

Мониторинг - Сервисы и приложения искусственного интеллекта (ИИ) быстро становятся неотъемлемым аспектом деятельности любой компании. Команды ML должны добавлять данные, код и отслеживать данные на предмет проблем с качеством, проверять модели на предмет дрейфа концепций и повышать точность моделей, используя, в частности, подходы AutoML и ансамбли. Этот этап включает в себя мониторинг модели и инфраструктуры.

Архитектурный дизайн MLOps

Ниже показан сквозной референс-дизайн для MLOps. Важно отметить, что жизненный цикл MLOps — это итеративный, а не линейный процесс. Неудачный тест или проблема с компиляцией являются примерами условий для возврата к более ранней стадии DevOps. MLOps наследует условия DevOps и добавляет новые, такие как автономная проверка модели и дрейф модели, уникальные для машинного обучения.

Типы инструментов MLOps

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

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

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

У MLOps есть доступ ко всем этим возможностям. Ваше решение должно основываться на ваших индивидуальных целях, внутренних знаниях и финансовых ограничениях.

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

Заключение

В этой статье мы рассказали вам о MLOps и его преимуществах. Вы даже познакомились с архитектурным дизайном MLOps и различными этапами от подготовки данных до мониторинга.

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

Всех желающих приглашаем на открытый урок «Профессия Data Science: пишем свою первую нейронную сеть».

Источник: https://habr.com/ru/company/otus/blog/653921/


Интересные статьи

Интересные статьи

Получив рабочий прототип (начало здесь) системы дистанционного обучения, включающий следующие виды заданий: тест, диалог, редактирование документа, деловая игра (квест), автопроверка решений по ключев...
Сегодня, 28 марта 2021 года, у нас есть возможность увидеть восход полной «Луны червя» (Worm Moon). Сегодняшняя Луна особенно огромна, потому что она ближе к Земле, чем большинство осталь...
Я давно знаком с Битрикс24, ещё дольше с 1С-Битрикс и, конечно же, неоднократно имел дела с интернет-магазинами которые работают на нём. Да, конечно это дорого, долго, местами неуклюже...
Продолжаем нашу подборку интересных материалов (первая часть, вторая часть). На этот раз один образовательный курс Техносферы, выступление про модульное тестирование и одна передача из ток-шо...
На протяжении нескольких лет я пытался разобраться в картах нормалей и в проблемах, которые обычно возникают при работе с ними. Большинство найденных объяснений было слишком техническим, непо...