Традиційний скоринг (FICO, НБКІ) оцінює лише одного з п'яти позичальників із тонким кредитним файлом — інші отримують відмову або високу ставку. За даними FICO, охоплення thin file рідко перевищує 30%. ML-моделі з альтернативними даними дозволяють захопити нелінійні сигнали: наприклад, регулярні поповнення депозиту або стабільну підписку на сервіси. Ми маємо 8+ років досвіду вбудовування таких моделей у production — це дає приріст Gini на 15–25 п.п. відносно регресії. За нашими спостереженнями, ML-скоринг скорочує кількість пропущених дефолтів у 2-3 рази порівняно з традиційними методами, а економія на ризикових втратах може становити до 25% від портфеля прострочки. Окупність зазвичай настає протягом першого року завдяки зниженню втрат.
Які дані роблять модель точнішою?
Традиційні кредитні дані — історія платежів, завантаженість ліміту, запити. Без них не обійтися, але їх недостатньо для thin file.
Альтернативні джерела:
- Транзакції через Open Banking (стабільність отримання та витрат, накопичення).
- Телефонні метадані (регулярність поповнень, оператор).
- Поведінка в браузері (за згодою позичальника).
- Підтверджена зайнятість.
Порівняння підходів:
| Критерій | Традиційний скоринг | ML-скоринг |
|---|---|---|
| Gini (тільки кредитні дані) | 0.50-0.60 | 0.58-0.75 |
| Охоплення thin file | 20-30% | 60-80% |
| Адаптація до макроекономіки | раз на рік | динамічне калібрування |
| Alerts: пропущені дефолти | 15-20% | 5-10% |
ML-скоринг з альтернативними даними не просто покращує метрики — він дає бізнесу доступ до нових сегментів клієнтів, які раніше були виключені. Зокрема, ML-скоринг охоплює в 3 рази більше thin-file позичальників порівняно з традиційним скорингом.
Як ми будуємо production-ready модель?
Використовуємо LightGBM з часовим сплітом (TimeSeriesSplit), калібрування ізотонічною регресією та аудит fairness. Також застосовуємо fine-tuning гіперпараметрів за допомогою Optuna для досягнення максимального Gini. Приклад пайплайну:
import lightgbm as lgb
from sklearn.model_selection import TimeSeriesSplit
from sklearn.calibration import CalibratedClassifierCV
credit_features = ['dpd_30d','dpd_60d','dpd_90d','utilization','num_accounts']
transaction_features = ['avg_income_3m','income_stability','gambling_ratio']
all_features = credit_features + transaction_features
model = lgb.LGBMClassifier(n_estimators=500, learning_rate=0.01, num_leaves=63,
min_child_samples=50, colsample_bytree=0.7,
class_weight='balanced', random_state=42)
tscv = TimeSeriesSplit(n_splits=5)
scores = cross_val_score(model, X[all_features], y, cv=tscv, scoring='roc_auc')
calibrated_model = CalibratedClassifierCV(model, method='isotonic', cv=3)
Після калібрування модель видає коректні ймовірності дефолту, що критично для прийняття кредитних рішень.
Explainability: чому відмова?
Кожна відмова супроводжується SHAP-розкладанням — топ-3 негативних фактори та їхній числовий внесок.
import shap
explainer = shap.TreeExplainer(model)
shap_values = explainer.shap_values(X_single)
negative = sorted(zip(features, shap_values[1]), key=lambda x: x[1])[:3]
# Вивід: висока завантаженість лімітів, короткий стаж, прострочки 24м
Це обов'язкова вимога для регуляторів (ECOA, GDPR). Ми гарантуємо compliance з будь-якими місцевими нормами.
Fairness: як не допустити дискримінації?
ML-моделі можуть відтворити історичні зсуви. Обов'язкові кроки:
- Disparate Impact: approval rate за групами не повинен відрізнятися >20%
- Equalized Odds: TPR/FPR однакові для всіх груп
- Proxy detection: адреса не повинна бути proxy на етнічність
Ми використовуємо adversarial debiasing та рев'юфінг — це частина нашої експертизи. Додатково проводимо fairness-аудит зі звітом, який можна надати регулятору.
Моніторинг: коли перенавчати модель?
Після деплою відстежуємо PSI (Population Stability Index). При PSI > 0.25 — перенавчання. Також робимо vintage analysis: порівнюємо дефолти когорт за місяцями видачі. У кризу динамічно калібруємо baseline default rate.
| Метрика | Норма | Дія |
|---|---|---|
| PSI | <0.10 | Немає |
| PSI | 0.10-0.25 | Повідомлення, аналіз дрейфу |
| PSI | >0.25 | Перенавчання моделі |
| Vintage trend | зростання дефолтів у молодих когортах | Корекція baseline |
Докладніше про моніторинг дрейфу
Ми налаштовуємо автоматичні алерти на відхилення PSI та дрейф ознак. До дашборду включені графіки розподілу передбачень за місяцями, а також метрики стабільності для кожної ознаки. Це дозволяє оперативно реагувати на зміни в поведінці позичальників.Покроковий процес впровадження ML-скорингу
- Аудит даних та feature engineering (2–4 тижні). Оцінюємо доступні кредитні та альтернативні джерела.
- Розробка baseline-моделі на історичних даних (2–3 тижні). Перевіряємо приріст Gini.
- Оптимізація гіперпараметрів та fine-tuning моделі (1–2 тижні). Використовуємо Optuna.
- Калібрування ймовірностей та fairness-аудит (1 тиждень).
- Інтеграція в IT-інфраструктуру (API або батч-скорінг) та деплой (3–6 тижнів).
- Налаштування моніторингу PSI, vintage та fairness (1–2 тижні).
- A/B-тест та фінальне налаштування (4–8 тижнів).
Що входить у нашу роботу з ML-скорингу?
- Аудит доступних даних та feature engineering (включаючи альтернативні джерела)
- Розробка baseline-моделі та фінальної production-версії
- Інтеграція моделі у вашу IT-інфраструктуру (API, батч-скорінг)
- Дашборди моніторингу PSI, vintage та fairness
- Повна документація та навчання команди (2-3 дні воркшопів)
- Підтримка на етапі A/B-тесту та першого місяця після деплою
Строки та вартість
Строки: від 4 до 8 місяців залежно від обсягу даних та вимог до регуляторного review. Пілотний проєкт на 2-3 місяці дозволяє швидко перевірити гіпотези. Економія на ризикових втратах від впровадження ML-скорингу зазвичай окупає проєкт протягом першого року. Зв'яжіться з нами для аудиту ваших даних та розрахунку точної вартості впровадження.
Чому варто почати з пілоту?
Пілот на 2-3 місяці дає:
- Перевірку приросту Gini на ваших даних
- Оцінку ефекту від альтернативних даних
- Прототип моделі для внутрішньої презентації
- Розуміння обсягу робіт для повного впровадження
Отримайте консультацію — оцінимо потенціал ML-скорингу на ваших даних. Зв'яжіться з нами для запуску пілотного проєкту.







