Многие компании внедряли машинное обучение рывками, приобретая и разрабатывая модели, алгоритмы, инструменты и сервисы под конкретные задачи. Этот подход неизбежен на старте, когда бизнес только узнает о возможностях технологий. Но в результате получается сборная солянка из изолированных, запускаемых вручную, нестандартизированных процессов и компонентов. Как следствие, появляются неэффективные громоздкие сервисы, которые приносят меньше пользы, чем могли бы, или полностью блокируют дальнейшее развитие.
Команда VK Cloud перевела статью о значимости стандартизации и автоматизации ML-процессов и как с этим поможет подход MLOps.
Зачем нужен MLOps
Если компания планирует масштабировать ML-приложения на уровень всей компании, необходимо автоматизировать и стандартизировать инструменты, последовательность действий и рабочие процессы. Важно быстро создавать и запускать модели машинного обучения, тратить меньше времени на обучение и мониторинг моделей вручную, и больше — на инновации, которые приносят компании пользу и прибыль.
Разработчикам нужен доступ к данным, на которых строятся их ML-модели, для работы с разными направлениями бизнеса и прозрачного использования одного и того же стека технологий. Иными словами, чтобы организовать эффективную и гибкую работу ML-моделей, нужно перенять передовые практики разработки программного обеспечения. В контексте машинного обучения это прежде всего MLOps. Это набор методов разработки, которые обеспечивают эффективную и гибкую работу моделей.
MLOps нужен для автоматизации повторяющихся действий дата-сайентистов и ML-инженеров — от разработки и обучения модели до ее деплоймента и эксплуатации. Автоматизируя все эти этапы, компании получают гибкость, а пользователи и заказчики — удобство работы, скорость и надежность машинного обучения. Эти автоматизированные процессы помогают снизить риски и освободить разработчиков от рутинных задач, выделив им больше времени для инноваций. Все это сказывается на конечном результате: согласно данным глобального исследования, проведенного McKinsey в 2021 году, компании, которым удалось масштабировать проекты на базе ИИ, могут увеличить свою прибыль на 20%.
«Компании, успешно развивающие сложные ML-решения, не так уж редко придумывают разные ML-инструменты в отдельных областях бизнеса», — говорит Винсент Дэвид (Vincent David), старший директор подразделения по машинному обучению компании Capital One. «Но часто можно заметить параллели: разные ML-системы немного по-разному делают похожие вещи. Компании, старающиеся извлечь максимум из своих инвестиций в машинное обучение, объединяют и усиливают свои лучшие ML-решения. В итоге они разрабатывают стандартизированные, фундаментальные, доступные для всех инструменты и платформы — и в конечном счете создают решения, которые выгодно отличаются от других на рынке».
MLOps тесно завязан на сотрудничестве дата-сайентистов, ML и SRE-инженеров, которое должно обеспечить системную воспроизводимость, мониторинг и эксплуатацию ML-моделей. В последние несколько лет Capital One разработали передовые практики MLOps, применяющиеся во всей отрасли. В этих решениях уравновешены потребности разных пользователей, применяются стеки облачных технологий и фундаментальные платформы, сделан упор на Open-Source-инструменты и достигнут нужный уровень Governance и доступности данных и моделей.
Как отвечать потребностям всех пользователей
Обычно ML-приложения эксплуатируют пользователи двух видов: технические эксперты (дата-сайентисты и ML-инженеры) и нетехнические эксперты (бизнес-аналитики). У этих групп пользователей разные задачи:
- техническим экспертам часто нужна полная свобода действий, чтобы использовать все доступные инструменты и создавать модели в тех или иных целях;
- всем остальным нужны простые в использовании инструменты, с помощью которых можно получить доступ к необходимым данным для создания ценности в собственных рабочих процессах.
При этом нужно как-то создать единообразные последовательности действий и рабочие процессы, подходящие для обеих групп. Винсент Дэвид рекомендует для этого встречаться с командами по проектированию приложений и предметными экспертами, работающими с разными сценариями использования.
«Чтобы разобраться в этих проблемах, мы рассматриваем определенные кейсы: так пользователи получают решения, полезные для их работы в частности и для компании в целом. Суть в том, чтобы понять, как создавать нужные функции, находя компромисс между потребностями бизнеса и разных стейкхолдеров в рамках одного предприятия».
Общий стек технологий
Совместная работа команд разработчиков — важнейший элемент успешного MLOps. Но организовать может быть трудно, если у каждой команды отдельный стек технологий. Благодаря унифицированному технологическому стеку разработчики могут стандартизировать и, подобно кубикам лего, многократно использовать в моделях компоненты, признаки и инструменты.
«Это упрощает сочетание разных функций, так что разработчикам не приходится тратить время на переход с одной модели или системы на другую».
Облачный стек позволяет использовать преимущества облачной модели распределенных вычислений. Он по требованию предоставляет разработчикам инфраструктуру, непрерывно подтягивая новые функции и сервисы. Решение Capital One комплексно перейти в публичное облако значительно повлияло на скорость и эффективность разработки. Теперь код выпускают в продакшен гораздо чаще, а ML-платформы и модели можно использовать в компании по многу раз.
Экономия времени с Open-Source-инструментами
Open-Source-инструменты машинного обучения — основной ингредиент мощной облачной платформы и унифицированного стека технологий. Они избавляют компании от необходимости тратить драгоценные технические ресурсы на изобретение колеса, что позволяет создавать и развертывать модели с высокой скоростью.
Дэвид рассказывает, что в дополнение к Open-Source-инструментам и пакетам Capital One также разрабатывает и выпускает собственные решения. Например, для работы с потоками данных, которые невозможно отслеживать вручную из-за большого объема, в Capital One создали Open-Source-инструмент для профилирования данных. Он с помощью машинного обучения выявляет и защищает конфиденциальные данные, такие как номера банковских счетов и кредитных карт. Кроме того, Capital One недавно выпустили библиотеку rubicon-ml, которая помогает собирать и хранить информацию об обучении и выполнении моделей, поддерживает поиск по моделям и их повторное выполнение. Разработка и выпуск собственных Open-Source-решений позволяет создавать гибкие ML-функции, назначение которых могут модифицировать как ее сотрудники, так и другие компании. Все это делает компанию органичной частью Open-Source-сообщества.
Доступность данных и высокий приоритет Governance
Типичная ML-система включает две среды:
- аналитическую — хранилище данных, с которым могут работать пользователи;
- эксплуатационную — обработку данных в реальном времени.
Для многих компаний интервал задержки между этими средами — серьезная проблема. Если дата-сайентистам и инженерам нужен доступ к данным из продакшен-среды почти в реальном времени, важно настроить необходимые механизмы контроля.
Так что ML-разработчикам нужно организовать интеграцию и доступ к обеим средам, не жертвуя качеством Governance.
«В идеальном мире компании добиваются полной интеграции между хранилищами данных в продакшен-среде и аналитическими средами. Это обеспечивает работу всех механизмов контроля и Governance-фреймворков, которые нужны дата-сайентистам, инженерам и другим стейкхолдерам, участвующим в поддержке и развитии модели», — объясняет Дэвид.
Управление и Governance ML-модели одинаково важны. В ходе машинного обучения, когда исходные данные постепенно меняются, модели начинают дрейфовать. Из-за этого инженерам нужно отслеживать мониторинг и корректировать дрейф.
MLOps-практики помогают автоматизировать управление и обучение моделей и связанные с ними рабочие процессы. Когда компания переходит на MLOps, она для каждого сценария машинного обучения определяет, какие параметры и как часто нужно отслеживать и какой дрейф допустим без повторного обучения модели. После этого она настраивает инструменты, чтобы автоматически выявлять триггеры и переобучать модели с выбранной периодичностью.
Когда машинное обучение только появилось, компании гордились своей способностью разрабатывать новые уникальные решения для разных направлений бизнеса. Но сегодня они стремятся к хорошо управляемому, гибкому масштабированию ML-решений, справляющемуся с постоянными обновлениями источников данных, ML-моделей, признаков, пайплайнов и других многочисленных аспектов жизненного цикла ML-модели. С таким потенциалом MLOps в области стандартизированных, воспроизводимых и адаптируемых процессов в крупномасштабных ML-средах компаниям открывается светлое будущее корпоративного машинного обучения.
Команда VK Cloud развивает ML Platform. Она помогает построить процесс работы с ML-моделями от дизайна до деплоя, контролировать качество экспериментов и моделей. Новым пользователям даем бонус 3000 рублей на тестирование.
tothelimbo
Респект вам.