ML system design: антифрод платежей
Вопрос
Спроектируйте систему обнаружения мошеннических платежей для банка: решение по платежу нужно за 100 мс.
Попробуйте сами
Ответьте вслух за 2 минуты, как на собесе. Потом сверьтесь с тезисами: что прозвучало, а что нет.
Показать ответ и разбор
Коротко
Что должно прозвучать в ответе
Требования: латентность, цена пропуска и ложной блокировки, действия (блок, доп. проверка, разбор аналитиком)
Данные и метки: задержка меток (чарджбэки), selective labels, дисбаланс
Признаки: профиль клиента батчем, скоростные признаки в реальном времени, устройство и граф связей
Модель: бустинг, правила как первая линия, пороги по стоимости, калибровка
Валидация по времени, метрики recall при фиксированной доле блокировок, PR-AUC
Прод: онлайн-инференс, feature store, мониторинг дрейфа, holdout для меток, быстрое переобучение
Что могут спросить следом
- Как учесть, что мошенники адаптируются?
- Что делать, если сервис модели не ответил за 100 мс?
Разбор
Начинаю с требований: решение синхронно за 100 мс, действия градуированы: пропустить, запросить дополнительную проверку, заблокировать и отправить аналитику. Цена пропуска это сумма платежа, цена ложной блокировки это недовольство клиента и нагрузка на поддержку. Метки приходят с задержкой (чарджбэки через недели), мошенничества доли процента, а заблокированные платежи не получают метку, поэтому держу маленький случайный holdout без блокировок. Признаки: профиль клиента, посчитанный батчем (средний чек, типичные мерчанты, география), скоростные признаки в реальном времени из стрима (число платежей за 10 минут, новые устройства, смена IP), признаки устройства, граф связей между картами и устройствами. Первая линия это правила на явные паттерны, затем градиентный бустинг, он быстрый на инференсе. Валидирую по времени, смотрю recall при фиксированной доле блокировок и PR-AUC, порог выбираю по ожидаемым потерям. В проде онлайн-сервис с feature store, фолбэк на правила при таймауте, мониторинг дрейфа признаков и доли блокировок, частое переобучение, потому что мошенники адаптируются.
Ответьте сами, а не прочитайте
В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.