m@ksim.pro
К списку статей
ИИ 3 мин чтения

Когда хорошая модель портится: дрейф, обнаружение и бизнес-цена

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

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

Это называется дрейфом модели. Он распространён, медленен настолько, чтобы быть невидимым без целенаправленного отслеживания, и предотвратим.

Два типа дрейфа

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

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

Оба типа в большинстве случаев развиваются постепенно, что делает их лёгкими для упущения.

Почему дрейф невидим без мониторинга

Продакшн ML-модель, в отличие от сервера, не выдаёт ошибок, когда её производительность ухудшается. Она продолжает выдавать результаты. Результаты выглядят правдоподобно. Система продолжает работать.

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

Что требует мониторинг на практике

Поймать дрейф можно, отслеживая две вещи:

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

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

Минимальная рабочая система мониторинга

Для начала не нужна сложная MLOps-платформа. Практический минимум для бизнес-модели в продакшне:

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

Вопрос переобучения

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

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

К списку статей
Контакт

Если эта статья отозвалась - напишите. Я отвечаю лично.

Telegram