--- name: credit-model-validation-banking description: Автоматизация процесса валидации моделей кредитного риска в банковской сфере. Используется для полного цикла валидации - от загрузки pickle модели и анализа данных до генерации детального отчета с метриками (AUC, Gini, Recall, Precision, F1, KS, PSI, CSI), визуализациями и соответствием регуляторным требованиям Казахстана. --- # Валидация моделей кредитного риска Этот skill автоматизирует полный процесс валидации моделей машинного обучения для оценки кредитного риска в банковской сфере. ## Цель Провести независимую валидацию модели кредитного риска, включая: - Анализ качества и предобработки данных - Оценку производительности модели на новых данных - Проверку стабильности модели во времени - Генерацию полного отчета о валидации - Проверку соответствия регуляторным требованиям ## Когда использовать Используйте этот skill когда необходимо: - Провести валидацию новой или обновленной модели кредитного риска - Проверить модель на новых данных (не использованных при разработке) - Сгенерировать отчет о валидации для регуляторов - Провести код-ревью модели разработки - Проверить стабильность существующей модели ## Процесс валидации ### 1. Инициализация валидации Начать с создания структуры проекта валидации с помощью скрипта init_validation_project.py. Скрипт создаст необходимые директории для данных, результатов и конфигурации. ### 2. Загрузка и проверка модели Использовать скрипт load_and_inspect_model.py для безопасной загрузки pickle модели и извлечения метаданных. Скрипт проверяет тип модели, параметры, список признаков, версии библиотек и предупреждения о безопасности. ### 3. Анализ качества данных Провести автоматический анализ предобработки данных с помощью data_quality_check.py. Проверки включают пропущенные значения, выбросы, распределения признаков, корректность типов данных, наличие необходимых признаков, дубликаты и дисбаланс целевой переменной. ### 4. Расчет метрик производительности Рассчитать все ключевые метрики модели используя calculate_metrics.py: - AUC-ROC (Area Under ROC Curve) - Gini коэффициент (2*AUC - 1) - KS статистика (Kolmogorov-Smirnov) - Recall (Чувствительность, TPR) - Precision (Точность) - F1-score (Гармоническое среднее Precision и Recall) - Accuracy (Общая точность) - Specificity (Специфичность, TNR) - Confusion Matrix (Матрица ошибок) ### 5. Анализ стабильности (PSI/CSI) Проверить стабильность модели во времени с помощью stability_analysis.py. Анализ включает PSI для каждого признака (PSI < 0.1 стабильная популяция, 0.1 ≤ PSI < 0.25 умеренное изменение, PSI ≥ 0.25 значительное изменение), CSI для скоров модели, сравнение распределений признаков и временной анализ. ### 6. Бизнес-метрики Рассчитать бизнес-метрики для разных порогов отсечения с помощью business_metrics.py: - Approval Rate (процент одобрений) по порогам - Bad Rate (процент дефолтов среди одобренных) - Expected Loss (ожидаемые потери) - Оптимальный порог (максимизация F1 или бизнес-метрики) ### 7. Визуализация результатов Генерировать все необходимые графики с помощью generate_visualizations.py: - ROC-кривая с AUC - Precision-Recall кривая - Confusion Matrix (тепловая карта) - KS статистика график - Распределение скоров (Good vs Bad) - Калибровочная кривая - Feature Importance (если доступно) - PSI по признакам (bar chart) - Lift Chart и Gain Chart ### 8. Код-ревью Проанализировать код разработки модели (если доступен): проверить воспроизводимость (random seeds), валидировать split данных (train/test), проверить предобработку (pipelines), оценить качество кода (PEP8, документация), проверить версионирование зависимостей. Использовать references/code_review_checklist.md как гайд. ### 9. Соответствие регуляторным требованиям Проверить модель по чеклисту регуляторных требований с помощью regulatory_compliance.py. Проверка включает требования Национального Банка Казахстана для моделей кредитного риска. ### 10. Генерация финального отчета Автоматически сгенерировать полный отчет о валидации с помощью generate_validation_report.py. Структура отчета включает: Глоссарий, Абстракт, Методология валидации, Цель моделей, Разработка моделей, Объем валидационных данных, Результаты валидации моделей, Визуализация результатов, Confusion Matrix, PSI анализ, Интерпретация результатов, Код-ревью, Заключение и рекомендации, Соответствие регуляторным требованиям, Рекомендации. ## Интерактивный режим Для пошагового процесса с объяснениями использовать interactive_validation.py. Скрипт проведет через каждый этап, задаст вопросы о специфике модели, покажет промежуточные результаты, позволит корректировать параметры и сгенерирует отчет в конце. ## Bundled Resources ### Scripts (scripts/) - init_validation_project.py - Инициализация проекта - load_and_inspect_model.py - Загрузка pickle модели - data_quality_check.py - Анализ качества данных - calculate_metrics.py - Расчет метрик производительности - stability_analysis.py - PSI/CSI анализ - business_metrics.py - Бизнес-метрики - generate_visualizations.py - Создание графиков - regulatory_compliance.py - Проверка compliance - generate_validation_report.py - Генерация отчета - interactive_validation.py - Интерактивный режим - utils/ - Вспомогательные утилиты ### References (references/) - validation_checklist.md - Полный чеклист валидации - kz_regulator_checklist.md - Требования НБ РК - metrics_guide.md - Подробное описание метрик - code_review_checklist.md - Гайд по код-ревью - interpretation_guide.md - Интерпретация результатов ### Assets (assets/) - report_template.docx - Шаблон отчета Word - plots_styles.json - Стили для графиков - glossary.yaml - Глоссарий терминов ## Примеры использования ### Пример 1: Быстрая валидация Проведи валидацию модели PD_Retail_v2.pkl на данных validation_q4_2025.csv ### Пример 2: Полная валидация с отчетом Выполни полную валидацию модели согласно регуляторным требованиям НБ РК. Модель: models/pd_model.pkl, Данные: data/validation_2025_h1.csv. Нужен полный отчет на русском языке. ### Пример 3: Анализ конкретной проблемы Модель показывает низкий Gini на новых данных. Помоги найти причину - проверь PSI по признакам и stability. ### Пример 4: Код-ревью Проведи код-ревью разработки модели в файле model_development.py ## Best Practices 1. Всегда сохраняйте исходные данные - не перезаписывайте raw данные 2. Используйте version control - храните config.yaml в git 3. Документируйте отклонения - если модель не прошла валидацию 4. Проверяйте воспроизводимость - результаты должны повторяться 5. Храните артефакты - все графики и метрики для аудита 6. Обновляйте чеклист - при изменении регуляторных требований ## Ограничения - Pickle модели должны быть безопасными (проверка перед загрузкой) - Данные должны содержать все признаки, использованные при обучении - Для PSI анализа нужны данные обучающей выборки - Большие модели (>1GB) могут требовать дополнительной памяти