Какие задачи решались в рамках антифрода
Что проверяют
Понимаете ли вы, чем антифрод отличается от обычной классификации: редкий класс, запоздалые метки, противник, который подстраивается, и цена ошибки в обе стороны. Следом обычно спрашивают, как выбирали порог и сколько ложных срабатываний было допустимо.
Как отвечать
Рассказывайте про свой проект по каркасу: какой фрод ловили, откуда метки, как устроено решение, как измеряли. Задачи в антифроде обычно такие:
- скоринг в реальном времени: транзакция или регистрация получает решение за десятки миллисекунд, поэтому признаки посчитаны заранее, а модель лёгкая, чаще бустинг;
- признаки скорости и связей: число операций по карте за последние N минут, новое устройство или геолокация, общие телефоны и устройства у разных аккаунтов. Графовые признаки хорошо ловят сети дропов;
- правила плюс модель: правила закрывают известные схемы и требования регулятора, модель ловит новое. Решение часто трёхуровневое: пропустить, отправить на ручную проверку, заблокировать;
- разметка: чарджбэки приходят через недели, поэтому свежие данные не размечены, и это нужно учитывать при обучении и оценке;
- для инженера данных: потоковый расчёт признаков на Kafka и Flink, одна логика признаков в обучении и в проде, корректность на момент события без заглядывания в будущее.
Метрики: PR-AUC, precision и recall на рабочем пороге, доля заблокированных честных клиентов и загрузка ручной проверки. Порог выбирается по стоимости: пропущенный фрод против потерянного клиента и часов аналитиков.
Если в антифроде вы не работали, скажите прямо и перенесите близкий опыт: поиск аномалий, скоринг, работа с дисбалансом классов.
Где спотыкаются
Называют accuracy 99%. При доле фрода в десятые доли процента такой результат даёт модель, которая пропускает всех подряд.
Делят выборку случайно и не учитывают задержку меток. На валидации модель блестит, а в проде проседает.
Приводят «снизили фрод на 30%» без объяснения, как считали. Мошенники могли просто уйти в другой канал, а без контрольной группы эффект модели не отделить.