Разработка программного обеспечения для автоматического кредитного скоринга на основе машинного обучения

Создание программного обеспечения для автоматизации кредитоспособности лица, на основе модели полученной при машинном обучении. Анализ автоматической оценки надежности клиента и увеличение эффективности работы банка в области кредитования населения.

Рубрика Программирование, компьютеры и кибернетика
Вид статья
Язык русский
Дата добавления 10.08.2018
Размер файла 41,0 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Размещено на http://www.allbest.ru/

Национальный исследовательский университет «Высшая школа экономики»

РАЗРАБОТКА ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ ДЛЯ АВТОМАТИЧЕСКОГО КРЕДИТНОГО СКОРИНГА НА ОСНОВЕ МАШИННОГО ОБУЧЕНИЯ

Котенев Даниил Дмитриевич

В качестве объекта для машинного обучения выступают данные о заемщике, которые представлены в виде csv файла с двадцатью полями. Выходным параметром модели будет являться вероятность дефолта, то есть решение по кредиту. О клиенте доступная следующая основная информация:

· Возраст - целочисленный признак;

· Работа - категориальный признак: административная, рабочий класс, организатор, домохозяйка, менеджер, на пенсии, самозанятый, обслуживание, студент, технический работник, безработный, неизвестно;

· Семейное положение - категориальный признак;

· Образование - категориальный признак: 4, 6 или 9 классов школы, среднее, средне-профессиональное, высшее, неизвестно;

Также есть такие признаки как есть ли у клиента непогашенный кредит, долг по оплате дома, непогашенный займ, тип связи который использовался для контакта с клиентом, месяц, день недели и длительность последнего сеанса связи. В файле с данными присутствуют и такие атрибуты как количество дней после последней связи с клиентом, количество сеансов связи с ним, успешность предыдущих маркетинговых кампаний, индекс занятости, индекс потребителя, индекс покупательской способности, европейская межбанковская ставка предложения и др.

Прежде чем обучать предсказательную модель необходимо провести преобработку данных. Как можно увидеть из их описания, в них довольно много категориальных признаков, а их нельзя использовать в прямом виде в модели машинного обучения. Для этого используется категоризация признаков. Она заключается в том, что категориальные признаки кодируются численными значениями, например, в one-hot кодировании признак разбивается на несколько в соответствии с количеством категорий, затем каждому из них присваивается 0 или 1 [1].

Подобный подход эффективен при небольшом количестве категорий у признака, иначе атрибутов становится слишком много и модель медленно обучается и получается слишком громоздкой. Таким образом наиболее эффективным способом предобработки данных будет следующее: признаки о работе, образовании, семейном положении, месяце и дне последней встречи с клиентом были отброшены в связи либо незначительным влиянием на результат кредитного скоринга, либо из-за излишней трудности обработки. Впоследствии некоторые из вышеперечисленных признаков были возвращены, но это лишь ухудшало точность модели, следовательно можно сделать вывод что признаки были отброшены верно. К оставшимся атрибутам было применено one-hot кодирование для их корректного использования при обучении предсказательной модели.

В качестве метода машинного обучения был выбран классификатор на основе градиентного бустинга [2]. Его алгоритм в общих чертах заключается в следующем: сначала происходит начальная инициализация параметров. Затем для каждой итерации рассчитывается градиент функции потерь в текущей точке и после этого задается итеративное приближение на основе рассчитанного градиента. Следующим шагом является обновление весов и параметров модели после приближения и переход к следующей итерации. После подбора таких гиперпараметров как количество алгоритмов для композиции и скорость обучения при помощи кросс-валидации было установлено, что оптимальными значениями для них являются 300 и 0.1 соответственно. После обучения предсказательной модели нужно оценить ее эффективность. Для этой цели была использована метрика AUC-ROC, которая равнозначно учитывает ошибки всех типов и часто применятся для оценки эффективности моделей кредитного скоринга [1]. Вместе с исходными данными для обучения есть тестовая выборка для проверки результатов построения модели. Выбранная метрика была рассчитана несколько раз с применением кросс-валидации и ее среднее значение получилось равное 94.7%. По результатам обучения модели был построен график уменьшения ее ошибки в зависимости от количества алгоритмов в композиции, который приведен на рисунке 1.

Рис. 1. График зависимости ошибки от количества алгоритмов в композиции

Из графика видно, что ошибка резко сокращается вначале, а затем линейно уменьшается. Может показаться, что 300 алгоритмов в композиции это мало и можно увеличить их количество, чтобы еще уменьшить ошибку. Однако стоит учитывать, что основным недостатком градиентного бустинга является склонность к переобучению, поэтому не стоит использовать слишком большую композицию алгоритмов, иначе при обучении точность будет очень высокая, но на новых данных модель будет крайне неэффективна. программный обеспечение автоматизация кредитование

Таким образом, при помощи алгоритмов машинного обучения была построена модель, которая оценивает надежность клиента в области розничного кредитования. Полученная точность в 94.7% является высоким показателем для моделей такого типа, более того модель устойчива к переобучению, что было проверено при тестировании при помощи другой выборки и кросс-валидации гиперпараметров.

Библиографический список

1. Воронцов К. В. Машинное обучение (курс лекций).

2. Friedman J. Greedy Function Approximation: A Gradient Boosting Machine. -- IMS 1999 Reitz Lecture.

Аннотация

В данной статье было разработано программное обеспечение для автоматической оценки кредитоспособности лица на основе модели полученной при машинном обучении. Разработанная система имеет точность в 94.7% на тестовой выборке, что является высоким показателем. Данная программа позволит автоматически оценивать надежность клиента, а, следовательно, увеличит эффективность работы банка в области кредитования населения.

Ключевые слова: Python, градиентный бустинг, интеллектуальный анализ данных, кредитный скоринг, машинное обучение, программирование, финансы

Размещено на Allbest.ru


Подобные документы

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.