Мониторинг моделей машинного обучения

Практическое руководство по количественной оценке дрейфа концепций для моделей машинного обучения

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

Производительность модели необходимо отслеживать в режиме реального времени, чтобы обнаруживать любые проблемы с производительностью, которые повлияют на работу конечного пользователя. Без него о проблемах сообщается только тогда, когда они уже начали влиять на чистую прибыль или если пользователи начинают жаловаться.

В этом руководстве мы изложим ключевые принципы, лежащие в основе эффективных стратегий мониторинга:

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

Метрики точности нельзя использовать для мониторинга моделей.

Золотым стандартом мониторинга моделей машинного обучения является отслеживание точности в режиме реального времени. Однако в большинстве случаев это невозможно по следующим причинам:

  • Модельное вмешательство
  • Большая задержка между предсказанием и доступностью наземной метки истинности
  • Необходимость маркировки людей

Для большинства моделей машинного обучения показатели точности нельзя вычислить в реальном времени.

Модельное вмешательство

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

Это можно смягчить, имея небольшой набор данных, для которых вы запускаете модель, но не влияете на прогноз. Хотя это позволит вам вычислять показатели точности, это происходит за счет ухудшения работы пользователей или потери дохода, а в некоторых случаях это невозможно (например, при обнаружении мошенничества с кредитными картами).

Задержка между предсказаниями и истиной

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

Если точность - единственный показатель, используемый для отслеживания производительности модели, проблемы не будут обнаружены до 3 месяцев после того, как они начали возникать.

Маркировка человека

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

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

Режимы отказа моделей

Прежде чем мы начнем определять систему мониторинга, важно рассмотреть основные причины, по которым производительность модели может ухудшаться с течением времени. Чтобы не упустить этот пост, мы не будем рассматривать проблемы, которые можно отслеживать с помощью существующих решений для мониторинга (память, задержка и т. Д.).

Через несколько лет производства все модели сломаются.

Возможные виды отказов можно разделить на две категории:

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

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

Критические изменения данных

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

  • % отсутствующих значений
  • Количество категорий
  • Статистическое распределение - мин., Макс., Среднее, квантили и т. Д.
  • % слов вне словарного запаса

Хотя эти одномерные метрики несколько грубоваты, они обнаруживают большинство проблем, которые могут возникнуть в процессе сбора данных.

Эффективный способ дополнить эту стратегию мониторинга - определить ключевые сегменты, за которыми необходимо более внимательно следить. Определяя ключевые срезы и отслеживая для них метрики, вы можете обнаруживать проблемы, которые затрагивают только часть клиентов и которые были бы потеряны в шуме глобальных метрик, которые вы отслеживаете. Slack, например, определил срезы мониторинга для своих 10 крупнейших клиентов, поскольку проблемы с производительностью в первую очередь затронут этих клиентов [1].

Изменения в поведении

Поведенческие изменения бывает труднее обнаружить, особенно когда метки достоверности недоступны. Для отслеживания полезно использовать два набора показателей:

  • % прогнозируемых ярлыков
  • Дрейф концепции

Быстрое изменение в распределении предсказанных меток обычно указывает на проблему. Если базовый уровень транзакций, обнаруженных как мошенничество, составляет 2%, внезапный скачок до 10% транзакций, отмеченных как мошеннические, требует более тщательного расследования.

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

Количественная оценка дрейфа концепций

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

Количественная оценка дрейфа концепций - непростая задача и все еще остается открытым вопросом для исследования. Существующие методы можно разделить на два основных подхода:

  • Метрики на основе расстояния
  • Классификаторы доменов

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

Метрики на основе расстояния

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

Распространенной метрикой является метрика Вассерштейна, также известная как расстояние земных движителей или расстояние Мальлоу. Хотя вычисления для одномерных распределений очень эффективны с точки зрения вычислений [2], для многомерных распределений необходимо вычислять приблизительные расстояния [3].

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

Исходя из имеющихся у вас ресурсов, вы можете количественно оценить смещение концепции одним из следующих способов:

  • Вычисление метрики Вассерштейна для каждой переменной и их агрегирование.
  • Вычисление единой метрики Вассерштейна, рассматривая ваши входные переменные как возникающие из единого многомерного распределения.

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

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

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

Многомерные показатели Вассерштейна:
Вычисление точных многомерных показателей Вассерштейна требует значительных ресурсов. Однако недавние достижения сделали вычисление приближений намного более эффективным. См. [2], чтобы узнать больше.

Классификаторы доменов

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

Более формально подход таков:

  • Начните с определения двух наборов данных, например набора данных A, содержащего сегодняшние входные объекты, и набора данных B, содержащего вчерашние данные.
  • Объедините два набора данных и создайте столбец, определяющий, к какому набору данных принадлежит строка.
  • Разделите этот набор данных на обучающий и тестовый.
  • Обучите классификатор на обучающем наборе данных, который попытается различить, к какому набору данных принадлежит строка.
  • Вычислите ошибку этой модели на тестовом наборе данных и используйте формулу: concept drift = 2 * (1 — 2 * error)

Хотя этот подход позволяет обнаруживать изменения корреляции между переменными, он имеет несколько недостатков:

  • Выбор правильного классификатора домена зависит от варианта использования (деревья с градиентным усилением, SVM, двунаправленный LSTM и т. Д.)
  • В вычислительном отношении дорого
  • Мониторинг модели с помощью модели

Требования высокого уровня

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

  • Задержка: какова задержка между возникновением проблемы?
  • Непрерывная оценка. Будете ли вы регулярно маркировать прогнозы для вычисления показателей точности?
  • Смещение концепций: Как вы будете рассчитывать смещение концепций?
  • Журналы. Как вы будете получать доступ к журналам для отладки проблем?

Как только эти требования будут выполнены, вы можете приступить к созданию своей системы мониторинга.

Заключение

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

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

Ссылки:

[1] Инструменты, наблюдаемость и мониторинг моделей машинного обучения

[2] Автоэнкодер Sliced-Wasserstein: неловко простая генеративная модель

[3] Обобщенные отрезанные расстояния Вассерштейна

Первоначально опубликовано на www.stakion.io 27 мая 2020 г.