В рамках курса по инженерии машинного обучения для продакшена (MLOps) Эндрю Ын, основатель DeepLearning.AI и один из самых известных экспертов в области ИИ, подробно разбирает ситуации, когда высокая точность на тестовом наборе данных не гарантирует успех продукта. По мнению спикера, инженерная задача заключается не в «красивых цифрах» в отчетах, а в создании систем, реально решающих бизнес-задачи.
🎯 Почему «средней точности» недостаточно для продакшена 0:01
Эндрю Ын утверждает, что работа ML-инженера была бы гораздо проще, если бы единственной целью было достижение высоких показателей на отложенной (holdout) тестовой выборке . Однако в реальных производственных условиях этого недостаточно. Даже если система показывает низкую среднюю ошибку, она может оказаться непригодной для развертывания, если она ошибается на специфических, критически важных примерах .
По словам Ына, средняя точность имеет свойство «уравнивать» все примеры, придавая им одинаковый вес . В реальности же:
- Некоторые группы данных (слайсы) важнее других для бизнеса.
- Ошибки на редких классах могут быть недопустимы с этической или медицинской точки зрения.
- Пользователи по-разному реагируют на ошибки в зависимости от типа своего запроса.
🔍 Кейс веб-поиска: Навигационные и информационные запросы 0:54
Эндрю Ын разделяет поисковые запросы на несколько категорий, чтобы проиллюстрировать разную «цену ошибки» для пользователя :
- Информационные и транзакционные запросы. Например, «рецепты яблочного пирога», «последние фильмы» или «тарифные планы» . В таких случаях пользователь ищет наиболее релевантную информацию или хочет совершить покупку. Если поисковик выдаст «лучший» рецепт на втором или третьем месте, пользователь, скорее всего, проявит снисходительность, так как в сети существует множество хороших вариантов .
- Навигационные запросы. Это запросы с четким намерением перейти на конкретный ресурс: «Stanford», «Reddit» или «YouTube» .
Как считает Ын, в случае навигационных запросов пользователи крайне нетерпимы к ошибкам . Если по запросу «Stanford» поисковая система не выдаст официальный сайт университета (stanford.edu) на первой позиции, она мгновенно начнет терять доверие аудитории . Эти примеры являются непропорционально важными: даже если новый алгоритм улучшает общую среднюю точность поиска, но «ломает» выдачу по горстке навигационных запросов, он не может быть допущен к релизу .
⚖️ Справедливость и работа с ключевыми срезами данных 3:07
Важным аспектом MLOps является анализ производительности модели на «ключевых срезах» (key slices) данных. Эндрю Ын приводит в пример систему одобрения кредитов .
По словам спикера, такая система обязана соответствовать ряду требований:
- Отсутствие дискриминации. Модель не должна ущемлять права заявителей на основе пола, этнической принадлежности, местоположения или языка .
- Соблюдение законов. Во многих странах существуют строгие нормативные акты, запрещающие предвзятость по так называемым «защищенным атрибутам» (protected attributes) .
Даже при высочайшей средней точности модель будет отклонена, если она демонстрирует недопустимый уровень предвзятости в отношении конкретной социальной группы .
Аналогичная логика применима и к e-commerce платформам . Ын подчеркивает, что алгоритм рекомендаций должен быть справедлив не только к пользователям, но и к продавцам:
- Поддержка малых брендов. Если система рекомендует только товары крупных ритейлеров, игнорируя малый бизнес, это может нанести долгосрочный вред экосистеме платформы .
- Охват категорий. Если алгоритм по какой-то причине перестанет рекомендовать электронику (даже если это чуть-чуть повысит общую релевантность выдачи за счет других товаров), продавцы электроники будут справедливо возмущены, что навредит бизнесу .
🏥 Ловушка редких классов и «эффект печати нуля» 6:11
В задачах с несбалансированными данными (skewed data distributions) стандартная метрика точности (accuracy) может быть абсолютно бесполезной. Эндрю Ын приводит классический пример из медицинской диагностики: если 99% населения здоровы, программа, которая всегда выдает результат «здоров» (print 0), будет иметь точность 99% .
Спикер поделился личной историей: однажды его команда обучила огромную нейросеть, которая показала впечатляющие 99% точности. Однако при детальном анализе выяснилось, что сеть просто научилась всегда выдавать ноль .
Другой пример связан с работой Эндрю Ына и Пранава Раджпуркара над диагностикой по рентгеновским снимкам грудной клетки :
- Для распространенных состояний, таких как выпот (effusion), было около 10 000 изображений, что позволяло достичь высокой точности .
- Для редкого состояния, например, грыжи (hernia), было всего около 100 снимков .
С медицинской точки зрения недопустимо, чтобы система пропускала очевидные случаи грыжи. Однако, поскольку этот класс был редким, алгоритм мог полностью игнорировать его, практически не теряя в средней точности на общем тестовом наборе .
🤝 Конфликт инженера и бизнеса: Как найти общий язык 9:21
Эндрю Ын описывает типичный диалог, который он многократно наблюдал в разных компаниях : — ML-инженер: «Я получил отличные результаты на тестах, это работает, давайте внедрять!» — Владелец продукта: «Но это не работает для моего приложения/бизнеса». — ML-инженер: «Но ведь на тестах всё хорошо!»
Спикер призывает инженеров не занимать оборонительную позицию (don't get defensive) . Он напоминает, что сообщество создало отличные инструменты для работы с тестовыми выборками, но цель работы — не цифра, а решение реальной прикладной задачи .
В качестве решения Ын предлагает использовать более глубокий анализ ошибок (error analysis), в том числе по конкретным срезам данных. Это позволит обнаружить и устранить проблемы, которые скрываются за «красивыми» средними показателями.