

Скоринг для лизинга
Больше чем Gini. Как получить бизнес-эффект в нестандартном финтех-сценарии?
Цели
Разработать стабильную скоринговую модель для предсказания дефолтов, адаптированную к малым выборкам в лизинге
Улучшить финансовый эффект и разработать стратегию, которая значительно сократит время принятия решений по части заявок
Создать интерпретируемый инструмент, усиливающий экспертизу кредитного комитета при ручных верификациях
Метрики
Gini
Доля автоматических решений
Время разработки модели
Подробности
Специфика лизинга: почему здесь не работают банковские шаблоны
Когда речь заходит о машинном обучении в финтехе, многие представляют себе кредитный скоринг в крупном банке: миллионы клиентов, огромные массивы данных, полностью автоматизированные решения. В B2B-лизинге все иначе.
Здесь мы имеем дело с двумя ключевыми реалиями:
- Малые выборки. История по клиентам-юрлицам и ИП несравнима с потоком розничных кредитов: <15 тысяч выдач за несколько лет в нашем кейсе. На таких данных классические ML-подходы могут давать сбой: минимальная нестабильность способна «сломать» модель, значимо уменьшив метрики в продакше в сравнении с ретротестом.
- Решения принимают люди. Финальное «да» или «нет» по большей части сделок за кредитным комитетом — группой экспертов. Они не готовы слепо доверять цифрам из «черного ящика».
В таких условиях привычные цели разработки скоринговой модели обновляются. Она должна стать не единственным источником истины, а помощником для эксперта: автоматически отсеивать совсем безнадежные случаи, надежным клиентам давать «зеленый свет», а по заявкам из «серой зоны» подсвечивать неочевидные риски и предоставлять интерпретирумые выводы.
Прежде чем строить модель: считаем финансовую целесообразность
Любой проект по машинному обучению должен начинаться не с моделей, а с "экономики". Типичный прирост в пару процентных пунктов Gini может приность огромную прибыль для массовых розничных банковских продуктов, в то время как для залоговых продуктов (лизинг можно рассматривать пример неклассического залогового продукта) это может быть далеко не так.
Для демонстрации этой идеи предлагаем найти оптимальные настройки стратегии автоматического принятия решений с помощью модели и ручного андеррайтинга с учетом разных параметров доходности/убыточности продукта:
Интерактив не отражает косвенный финэффект от скорости принятия решения: когда одобрение заявки происходит за несколько секунд, а не часов или даже на следующий рабочий день и за это время клиент мог получить быстрое одобрение у конкрента.
Стабильность > метрики: как построить надежную модель на малых данных
На малых выборках можно получить высокий ROC AUC на одном срезе данных. Гораздо сложнее — обнаружить те же метрики после проверки моделей на «вызревших» дефолтах спустя год.
Feature selection в таком случае требует итерационных ручных проверок, где для каждого признака проверяется не только сила взаимосвзяи с целевой переменной, но и устойчивость во времени.
Например, в ходе анализа мы обнаружили, что признак «Отсутствие информации по числу сотрудников» сильно коррелировал с дефолтом и значимо повышал значениие Gini на ретротесте. Ниже то, что из себя представляла зависимость (значения масштабированы):
Семантика признака и сама зависимость — понятные, однако даже сам факт наличия или отсутствия информации по числу сотрудников — нестабилен. В какой-то момент эти данные перестали поступать из систем и фактически "подтягивались" последние известные значения по прошлым заявкам. Прямое использование такого признака было бы рискованно.
Формально проверив поведение признака 1.5 года спустя в этом и убедились. Стабильность - наш главный приоритет при построении скоринговых моделей.
Загадка «отказников»
Одна из вечных проблем в кредитном скоринге — Reject Inference. Чтобы лучше разделять «сегодняшний» входной поток важно учитывать исторические заявки, отказанные «текущими» моделями.
В ML-сообществе существует ряд подходов к решению проблемы, в частности:
- Забыть про отказников
- Использовать практики хиромантии: extrapolation, fuzzy augmentation
- Оценивать риски отказников на основе данных БКИ о поведения клиентов в других банках
- Организовать «ручеек» и выдавать кредиты малой части потока без скоринга
Мы разработали собственный методы Reject Inference, которые отлично зарекомендовали себя во многих проектах. Но в этом кейсе с учетом особенностей "экономики" сработало самое простое:
- Исключение заявок, отклоненных по жестким хардчекам
- Присвоение оставшимся «отказникам» из серой зоны весов на основе их схожести с клиентами, которые ранее ушли в дефолт
В результате модель, обученная с учетом «отказников» просела на 0.3% Gini на выдачах (что несильно сказалось на финэффекте), но стала находить на историческом потоке отклоненных заявок 87% высокорисковых клиентов (против 4.2% по модели, построенной без учета отказников).
Результат: не просто модель, а воспроизводимый пайплайн
Итогом нашей работы стала не просто модель, а end-to-end пайплайн обучения и развертывания модели, созданный на базе нашего продукта Alt Modeling. В этом решении мы обобщили всю свою скоринговую экспертизу, и успешно применяем продукт для широкого спектра проблем на табличных данных.
Достигнутые результаты
Разработана стабильная во времени скоринговая модель на выборке малого объема
Более четверти заявок проходят автоматическую верификацию за несколько секунд
Обеспечена полная интерпретируемость каждого прогноза, позволяющая кредитному комитету анализировать факторы риска по каждой лизинговой заявке
Предложен механизм Reject Inference, который позволяет при незначительных потерях детектировать клиентов, схожих с историческими «отказниками»