Авторы: Рикардо Морейра, Марко О. П. Сампайо, Уго Феррейра

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

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

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

В этом сообщении блога мы опишем технические детали системы Feature Investigation и то, как она позволяет Feedzai и ее клиентам точно и быстро обнаруживать дрейф данных и проблемы в их системах, основанных на оценке рисков. Подробнее читайте в нашей статье с AutoML Workshop in KDD’22. В следующем посте мы опишем инновационные визуализации, призванные помочь пользователю исследовать поведение каждой функции.

Системный Обзор

На рисунке ниже мы представляем схематический обзор системы Feature Investigation. Он состоит из трех основных компонентов:

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

Мы опишем первые два компонента более подробно в следующих разделах. Но сначала быстрый обход.

Что такое движущиеся гистограммы?

Прежде чем вдаваться в подробности об этапах Build Reference и Evaluate Target, имеет смысл сначала представить то, что мы называем Движущиеся гистограммы, основной строительный блок решения Feature Investigation. Проще говоря, движущиеся гистограммы — это всего лишь способ представления распределения признаков во времени. В системе Feature Investigation мы используем представления гистограмм в качестве среды для сравнения распределений признаков.

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

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

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

Путеводитель по периодам полураспада

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

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

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

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

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

Справочник по сборке

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

Для каждого признака строится общая эталонная гистограмма, характеризующая распределение данных за этот период. Учитывая, что мы обычно хотим оценить целевые данные в значительно более короткие сроки, чем эталонные (например, в течение одной недели после развертывания модели машинного обучения, а не через несколько месяцев), мы сравниваем распределение каждой функции в эталоне с его распределением. в более короткие промежутки времени, на разных временных шагах. Для выполнения этого сравнения мы используем меру расхождения (например, Колмогоров-Смирнов, Вассерштейн или Дженсен-Шеннон). Вычисляя это значение на различных временных шагах, мы затем получаем гистограмму значений расхождения для каждого признака.

Оценить цель

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

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

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

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

Исследование на практике

Пример 1

Чтобы понять, как система Feature Investigation работает на практике, мы наблюдаем за результатами при введении искусственного дрейфа в общедоступный набор реальных данных. Для этого анализа мы рассмотрели 26 характеристик, состоящих из суммы транзакции и производных агрегатов, таких как средняя сумма по карте за определенный период. Искусственный дрейф заключается в случайном преобразовании 10% сумм транзакций из их значений в долларах в центы в течение одного месяца в результате ошибок человека или системы.

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

Как показано ниже, в течение одного месяца распределение сумм транзакций существенно меняется. Сплошные цветные линии представляют значения p для различных конфигураций периода полураспада (HL) + меры расходимости (Div). Пунктирные линии показывают значения p, если бы не было искусственного дрейфа. Наконец, горизонтальная красная линия представляет собой пороговое значение, используемое для срабатывания тревоги.

Мы наблюдаем, что, как и предполагалось, значения p начинают уменьшаться сразу после начала искусственной инъекции и, наоборот, увеличиваются, как только она заканчивается. Для выбранного порога две из конфигураций (зеленая и оранжевая) вызовут тревогу раньше и на более длительный период времени в случае оранжевой. В зависимости от выбранной конфигурации система Feature Investigation способна обнаружить проблему в течение нескольких часов или дней.

Для зеленой конфигурации на изображении ниже показаны две тепловые карты, представляющие p-значения различных функций с течением времени для случаев без (слева) и с (справа) искусственным дрейфом. Это показывает, как система Feature Investigation может обнаруживать проблему не только в исходной функции (сумма транзакции), но и в производных агрегатах.

Пример 2

Приведенный выше пример демонстрирует способность системы Feature Investigation обнаруживать искусственно созданную проблему данных в реальном наборе данных. Но как насчет данных с реальными дрейфами данных и проблемами?

Один из клиентов Feedzai, европейское банковское учреждение, использовал Feature Investigation для сравнения данных, используемых для обучения модели ML для выявления мошенничества, с более новыми производственными данными. Запустив его всего за один день, они обнаружили, что некоторые функции существенно различаются между двумя периодами по двум основным причинам:

  1. Неработающие функции: некоторые функции имели совершенно другой набор значений в рабочей версии или вообще не имели значений. Это указывало на проблемы с приемом данных, о которых ранее банк не знал.
  2. Дрейф данных: некоторые функции имели разное распределение в рабочей среде из-за разных моделей поведения. Среди них были наиболее важные функции, используемые для обучения модели машинного обучения в производстве в банке. Это свидетельствовало о том, что пришло время переобучить модель с более актуальными обучающими данными.

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

Заключение

Feature Investigation — это новая гибкая и легкая система, разработанная Feedzai, которая обнаруживает дрейф данных, отслеживая распределение нескольких функций во времени. Он использует экспоненциальные движущиеся гистограммы, чтобы гарантировать низкое потребление вычислительных ресурсов и памяти, а также выдает предупреждения о значительном дрейфе функций на основе многомерного статистического теста, основанного на данных. Для получения более подробной информации не забудьте ознакомиться с нашей статьей с AutoML Workshop in KDD’22.

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

Благодарим Беатрис Мальвейро, Жоао Палмейро, Жоао Торреса, Хавьера Переса, Жоао Асенсао и Педро Бизарро.