Продуктовое мышление в MLOps и метрики оценки ML-модели

MLOPS развертывание ML в production примеры курсы обучение, курсы машинного обучения для дата-инженеров, обучение ML MLOps, обучение инженеров Machine Learning, Школа Больших Данных Учебный Центр Коммерсант

Сегодня посмотрим на MLOps с точки зрения организационного и технического управления, решив вопрос о подходе к разработке ML-системы, а также рассмотрим метрики ее оценки перед развертыванием в production.

Управленческий MLOps: 2 подхода к разработке системы Machine Learning

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

  • фокус на продукте (Product first);
  • фокус на модели Machine Learning (Model first).

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

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

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

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

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

Можно сказать, что подход Model first работает хорошо в следующих ситуациях:

  • R&D, когда в ходе фундаментальных исследований ищутся возможности новых алгоритмов;
  • поиск сложных взаимосвязей и закономерности в больших данных, что тоже носит исследовательский характер;
  • пользовательские модели, когда бизнес-задача настолько новая, что нужно много экспериментировать, построив несколько моделей, чтобы определить потенциал и ограничения будущего продукта;
  • Proof-of-Concept, когда нужно продемонстрировать заинтересованным сторонам потенциал ML-модели c с помощью простого доказательства концепции.

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

Метрики MLOps перед развертыванием модели в production

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

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

Метрика точности вычисляет, сколько раз модель сделала правильный прогноз по всему набору данных. Это надежно, если набор данных сбалансирован по классам, т.е. каждый класс имеет одинаковое количество выборок. В реальности датасеты сильно несбалансированы по классам, что часто делает эту метрику нежизнеспособной. Например, если набор данных бинарного класса содержит 90 и 10 выборок в классах 1 и 2 соответственно, модель, которая предсказывает только «класс 1», и, независимо от выборки, будет точной на 90%. Точность вычисляет, сколько раз модель сделала правильный прогноз по всему набору данных. Однако, назвать такую ML-модель хорошим предиктором нельзя.

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

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

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

Например, существующая модель имеет оценку F1, равную 90%, а новая недавно обученная модель достигает 92%. Однако, сразу внедрять новую модель в производство без тщательного анализа слишком беспечно. Необходимо оценить задержку и пропускную способность, чтобы производительность ML-системы оставалась в приемлемых границах. Под задержкой понимается продолжительность обработки запроса, т.е. время ожидания после подачи запроса в систему, а пропускная способность представляет собой количество записей, которые могут быть обработаны системой в течение заданного периода времени. К примеру, если необходимо обрабатывать 100 000 образцов в день, и каждый из них должен быть обработан в течение 5 секунд, очень важно включить эти расчеты в метрики оценки до переноса модели машинного обучения в производственную среду.

Помимо этого, MLOps-инженер также оценивает эффективность утилизации потребляемых ресурсов. Даже если ML-модель демонстрирует превосходную производительность с точки зрения основных показателей и скорости, она может быть невыгодная с точки зрения экономики из-за высокого потребления программно-аппаратных мощностей. Предположим, инстанс AWS EC2 имеет 50 ГБ дискового пространства, а текущая модель занимает 5 ГБ. Потенциально можно создать 10 копий модели. Однако, если она демонстрирует улучшение метрики F1 на 3%, но требует 10 ГБ дискового пространства, возможны только пять реплик. Возникает вопрос: действительно ли нужно это улучшение? Скорей всего, нет, поскольку общая пропускная способность всей системы машинного обучения снизится. Здесь же можно упомянуть еще один важный ресурс – оперативную память. Если записи постоянно накапливаются в одном списке, со временем ML-система может потреблять избыточно много памяти, что приведет к ее нестабильности и повышению стоимости эксплуатации.

Чтобы внедрить оценки метрики ML-системы перед ее производственным развертыванием, этот процесс можно разбить на следующие этапы:

  • создать согласованный набор тестов, который остается неизменным и служит основой для оценки каждой новой версии ML-модели;
  • вычислять типовые метрики (F1, точность, полнота, производительность) сразу, как только модель развернута в тестовой среде, одновременно отслеживая потребление памяти и ЦП;
  • измерять задержку ML-системы и ее пропускную способность.

В идеале этот процесс следует автоматизировать, включая управление версиями эксперимента. Лучше всего сделать это используя современные MLOps-инструменты, такие как MLflow, Kubeflow, BentoML и другие средства, о которых мы писали здесь и здесь. При этом, помимо технической стороны вопроса, стоит помнить и об организационной, выбирая наиболее оптимальный подход. Продуктовое мышление поможет ML-специалистам сосредоточиться на бизнес-целях и потребностях пользователей, а модельное – улучшать алгоритмы в ходе исследований и экспериментов. Объединить эти подходы, взяв лучшее из каждого можно, используя MLOps-концепцию.

Как внедрить MLOps-идеи и инструменты в реальные проекты аналитики больших данных и машинного обучения, вы узнаете на специализированных курсах в нашем лицензированном учебном центре обучения и повышения квалификации для разработчиков, менеджеров, архитекторов, инженеров, администраторов, Data Scientist’ов и аналитиков Big Data в Москве:

Я даю свое согласие на обработку персональных данных и соглашаюсь с политикой конфиденциальности.

Источники

  1. https://blaza-matt.com/mlops-what-is-a-product-first-vs-model-first-mindset-41a44ab8b988
  2. https://medium.com/@stefanmii/evaluating-model-performance-key-metrics-to-assess-before-transitioning-to-production-345ee51241d0
  3. https://www.v7labs.com/blog/f1-score-guide
Поиск по сайту