Как стать автором
Обновить

Машинное обучение в микрофинансах: строим скоринговую модель для клиентов с пустой кредитной историей

Время на прочтение8 мин
Количество просмотров15K
Всего голосов 34: ↑23 и ↓11+12
Комментарии59

Комментарии 59

МФК “До Зарплаты”

Это где берёшь 20 тысяч рублей кредита и через месяц отдаёшь 29 тысяч? Или через год 44 тысячи?
Пишите ещё, обязательно.
Я вот сижу и удивляюсь отваге (или безумству) автора.
Спасибо :)
На самом деле опасаюсь, что читатели не оценят статью, из за негатива, который появился вокруг МФО в предыдущие годы. Но хочется быть честным, и поэтому мне кажется важным указывать какие именно данные использовались при моделировании.

Касательно преамбулы:
А почему это не дают кредит при именно отсутствии истории, а не её негативности? Ведь, человек мог кредиты не брать не потому что ему их не давали, в потому что он просто живёт всегда в плюсе и никогда их не просил, до поры до времени или пока его не обязала сама ситуация (когда покупка доступна только в кредит, например)? Считаю, что эту неточность в формулировке стоит поправить.

Согласен с вами, пустая кредитная история (ки) не единственный фактор мешающий получению кредита. Но если ки есть, пусть и негативная, то это уже другая совокупность заемщиков, и по ним ключевыми будут признаки из ки. А вот когда она пустая, то ту найти факторы для оценки сложно. Про скоринговую модель для таких клиентов я и стараюсь написать.
НЛО прилетело и опубликовало эту надпись здесь
НЛО прилетело и опубликовало эту надпись здесь

Почему финансово не грамотным сразу? Есть много вариантов, когда кредит на пару дней под пару процентов, или овернайт финансово выгоден. Это без учёта формирования положительной кредитной истории.

Это места где нужно быть сумасшедшим, что брать деньги на месяц, а не на пару дней.
Это где берёшь 20 тысяч рублей кредита и через месяц отдаёшь 29 тысяч? Или через год 44 тысячи?
Пишите ещё, обязательно.
Это все равно как автосалон описать в виде места где «берешь кучу железа за 2млн и становишься инвалидом попав в дтп»©
МФО это где человек может взять 20к и через 3 дня их вернуть заплатив за их использование 200р или 600р вернув через 6 дней если не успел, вместо того что бы ходить по друзьям выклянчивая эту же сумму, а потом рисковать дружбой и нарушенным словом в случае если через 3 дня вернуть не успел. Многим действительно проще не клянчить, а просто взять… а если не успел отдать, то не краснеть, а просто заплатить сверху.

p.s.: По самой статье — мы бы сказали, что показана белая небольшая верхушка айсберга оценки, которая показывается органам, когда надо объяснить как оценивается заемщик. Желательно со ссылками на СМИ, мол так все и происходит, для чего и публикация. Сами в кредитной теме с 2007 года, разрабатывали сервис онлайн кредитования, работал пока все не дозарегулировали так, что мелкому бизнесу там стало нечего ловить и как по нам — описанные авторам критерии оценки теряются на фоне погрешности настолько, что практического смысла в плане оценки заемщика не имеют вообще.

Но у 90% клиентов есть информация о количестве запросов кредитной истории за год, квартал, месяц, неделю, день, час. Таким образом, можно оценить потребность в займе в текущий момент и потребность в займе в исторической перспективе. Количество заявок на заем, поданное за короткий промежуток, добавляет информации о психотипе заемщика. (подал ли он одну заявку и ждет решения, а затем подает вторую при отказе. В этом случае будет мало займов за последний час, но много за последний день. Или заемщик подает заявки в разные организации и ждет решения от всех сразу.)
Вот только достаточно подать заявку где-нибудь на кредитый продукт, как количество запросов из 0 сразу станет штук 20, т.к. Вас сразу начнут пробивать несколько банков и куча мфо на предмет выгодности всучить кредит. Абсолютно типичная ситуация.
Спасибо за поддержку и за развернутую, конструктивную критику!
Действительно, после вступления в силу 1 января изменений о микрофинансовой деятельности, рынок сильно меняется. Но может это и к лучшему? Возможно микрофинансы начнут воспринимать более позитивно? Надеюсь на это.
Эта статья описывает построение модели только для клиентов с пустой КИ. Конечно модели для заемщиков с сформированной кредитной историей или для постоянных клиентов, содержат намного больше факторов. И эти факторы устойчивые и предсказательно сильные.
Но если этот заем первый для клиента, то больше факторов просто негде взять. Есть множество статей про использование соц сетей но тут проблема с использованием данных. Нужно чтобы клиент согласился на обработку информации содержащейся у него на страничке.
Я сейчас работаю над второй частью статьи. Там покажу цифры по оценке заемщиков.
Вы правы на счет сильного шума в данных, но все же они позволяют выделить сегмент клиентов, выдавать займы которым экономически целесообразно.
Мне кажется, в модели забыты 2 важных вещи: праздники и цены на товары первой необходимости.
И как вы работаете со 152-ФЗ? Получали свидетельство оператора данных?
Спасибо за конструктив. Цены на товары первой необходимости учитывались при группировке регионов. Праздники сложно учесть, так как данные собраны за небольшой период. Нужно хотя бы два три года, чтобы такой фактор оценить.
Со 152-ФЗ все как положено.
Это хорошо, что вы соблюдаете федеральный закон, за повторное нарушение которого деятельность может быть приостановлена.

Расскажите, пожалуйста, остаются ли у вас персональные данные гражданина, отозвавшего разрешение на обработку персональных данных?
Если гражданин добропорядочный, и нет необходимости в использовании персональных данных для осуществления правосудия, то не остаются.
Уже неплохо. В зависимости от вашей оценки гражданина вы порой соблюдаете ФЗ.
А из архивных копий вы же тоже удаляете персональные данные?

Я к чему клоню — мне кажется, что МФО не любят больше РКН. И тут подружить жабу с гадюкой будет довольно интересно.
мне кажется, что МФО не любят больше РКН. И тут подружить жабу с гадюкой будет довольно интересно.


Не совсем понятно, что вы имеете ввиду.
Может расскажите более развернуто?

объясните пожалуйста, как праздники могут повлиять на то отдаст человек кредит или нет?

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

Это с одной стороны. С другой из-за праздников часты сбои в графиках выплаты зарплаты.

Точно подмечено.
Особенно влияют наши любимые зимние и весенние каникулы, по 7-10 дней. :)
Нет кредитной истории — не дают кредиты, не дают кредиты — нет кредитной истории. Замкнутый круг какой-то. Что делать?


Продолжать! Продолжать не брать кредиты, особенно микро.
НЛО прилетело и опубликовало эту надпись здесь
Это воинская профессия.
Стрело́к — первичная воинская должность военнослужащего в формированиях Вооружённых Сил Российской Федерации
Также желательно предоставление контактных данных двух близко знакомых людей.

Это незаконно.
Можно, правда дать левые контакты. Big data это не увидит :)
Заполнение контактной информации является добровольным.
Заемщик понимает, что указывая дополнительную контактную информацию он повышает свои шансы на одобрение займа. Поэтому поля часто заполнены.
Заполнение контактной информации является добровольным

Это не имеет значения, т.к. дополнительные контакты — это не контакты заемщика.

К примеру, Иванов приходит брать заем и оставляет свои контактные данные, а также добровольно предлагает МФК записать контакты своих двух друзей Петрова и Сидорова.
Так вот, МФК нарушит закон, если запишет контакты Петрова и Сидрова, т.к. они не давали МФК своего согласия на обработку их персональных данных (ПД).

МФК может записать только контакты Иванова, т.к. он даст свое согласие на обработку своих ПД.

Если когда-нибудь, ненароком, МФК позвонит Петрову или Сидорову, то они могут потребовать удалить свои ПД в базе МФК, а также подать жалобу в госорган (Роскомнадзор вроде?) на нарушение закона о ПД.
Я не юрист и не разбираюсь во всех тонкостях этого вопроса, но думаю вы правы.
Однако уверен, что хранение и обработка бинарного признака заполнил клиент дополнительные данные или нет, не противоречит закону.
В любом случае спасибо вам за предостережение.
Если данные третьих лиц не сохраняются и не обрабатываются, а обрабатывается только факт наличия этих данных, то нарушения 152 ФЗ со стороны МФО нет.
Не совсем так. Здесь МФО цепляются за два момента позволяющие обходить этот момент.
Во-первых, в форме заявки обычно написано, что заемщик предоставляет данные Иванова с его согласия и/или по его поручению.
Во-вторых, есть нюанс — «телефон и фио его владельца» это ПД, а вот «телефон и фио человека с которым по нему можно связаться» уже не ПД.
Курс рубля имеет стабильный нисходящий тренд. В необработанном виде такой фактор лучше не использовать. Через определенный промежуток времени значения признака выйдут за рамки попавших в обучающую выборку данных и будут неверно интерпретированы моделью.


И не только поэтому. Time series почти всегда коррелирует с другим time series, если в них есть тренд.

Такие признаки, как пол, возраст, семейное положение, наличие детей не используете?
Большое спасибо. Описал эти признаки и забыл вынести в итоговый список (исправил)
Пол не используем, с оглядкой на Базель III, думаю и у нас со временем что то похожее будет.
Наличие детей на прямую не используется, вместо него используется количество совместно проживающих членов семьи.
1. Профессии: контролер — указано дважды на графике.
2. Профессии: директор (по вашему же описанию) является подклассом класса руководитель, но вынесен в отдельную категорию.
3. Профессии: на графике не приведена шкала по оси ординат. Если же показатели даны относительные, то указаний на это в тексте нет. Шкала в идеале и должна быть относительной, так как мы не можем гарантировать одинаковое количество представителей разных классов профессий.
4. Профессии: категория специалист. Специалист-медик и специалист-разработчик это принципиально разные зарплаты, в отличие от медсестры частной клиники и государственной, например. Такая категория малоинформативна.

5. Кластеризация. Согласно визуализации — сомнительна. Или пробовать другие виды визуализации, или не показывать ее результаты совсем (если результаты кластеризации таки принесли прирост в предсказании). В таком виде она не информативна.

6. Курс рубля. Хорошо, что он не абсолютный. Но был ли поиск других вариантов, перед использованием указанного? Почему не отношение курса прошлого месяца к текущему? Или не разность? Также покажет тенденцию и ее величину. Иногда в моделях полезно использовать несколько вариантов одновременно. Если использовали и это не дало результатов, хотелось бы видеть это в тексте.

7. Курс рубля. Визуализация дефолта. График не информативный. Единственный вывод, который можно сделать из него, не перечитывая формулировку величины измерения, это то, что при стабильном курсе рубля дефолт минимален. Но что происходит при изменении курса? Надо несколько раз перечитать как вы считали, чтобы понять, что нарисовано. И моя цель была понять, как аналитику. Но у бизнеса, который будет смотреть на эту диаграмму, может просто не хватить терпения/навыков, чтобы понять этот график.

8. Визуализация. Стиль и оформление. Узнаю графики из стандарного матплотлиба (поправьте меня). Здесь очень многое стоит написать, но коммент итак длинный. Если коротко: для целей показать это другим аналитикам и тем более бизнесу, визуализацию всех пунктов так делать не стоило бы.
Очень приятно, что вы подробно читали мою публикацию.
Пункты 1-4:
Профессии на графике взяты из сырых данных, то есть это самые часто встречающиеся варианты, указанные клиентами. Поэтому возможно проскочили повторения. Перед подачей в модель профессии распределяются по 5 категориям.
Данные конечно же относительные (количество дефолтных клиентов данной профессии, деленное на общее количество клиентов данной профессии), но конкретные значения на некоторых осях пришлось удалить, коммерческая тайна к сожалению.
пункт 5: Кластеризация действительно дает прирост показателей. Постараюсь нарисовать более информативный график.
Пункт 6: Было проверено много вариантов, в статье приводится вариант, дающий максимальный прирост AUC модели. Хотел написать о процессе выбора, но стройного текста не получилось, решил привести конечный результат.
Пункт 7: Обязательно поправлю график.
Пункт 8: Вы правы это стандартный матплотлиб.
В целом спасибо за профессиональный взгляд, постараюсь учесть ваши замечания и сделать публикацию лучше.
Профессии на графике взяты из сырых данных, то есть это самые часто встречающиеся варианты, указанные клиентами.

ИМХО (+практика): на этом этапе уже нужна предобработка и исключение таких вещей. Иначе о информативности не очень можно говорить.
И уже не к графику, а к сбору данных: лучше, чтобы клиенты выбирали из списка, а не писали от руки. Будут данные чище.

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


категории были сравнимого размера? Если нет, то была ли проверка на то, можно ли вообще сравнивать данные из таких категорий? (пример: 1000 врачей и всего 7 ИП-шников. Тогда данные по ИП-шникам брать нельзя.)

И еще к кластеризации: перед ее выполнением делалась ли оценка на то, есть ли там предварительно подозрение на кластеры? (та же статистика Хопкинса)
ИМХО (+практика): на этом этапе уже нужна предобработка и исключение таких вещей. Иначе о информативности не очень можно говорить.
И уже не к графику, а к сбору данных: лучше, чтобы клиенты выбирали из списка, а не писали от руки. Будут данные чище.

Согласен с вами. Но изначально данные собирались таким способом. Можно попробовать начать собирать выпадающим списком, нужно оценить не повлечет ли это усложнение заполнения анкеты.

категории были сравнимого размера? Если нет, то была ли проверка на то, можно ли вообще сравнивать данные из таких категорий? (пример: 1000 врачей и всего 7 ИП-шников. Тогда данные по ИП-шникам брать нельзя.)

Самая малочисленная категория 73 записи, самая многочисленная 340 записей.
И еще к кластеризации: перед ее выполнением делалась ли оценка на то, есть ли там предварительно подозрение на кластеры? (та же статистика Хопкинса)

В этом случае действовал исходя из влияния на показатели модели, экспериментальным путем. Чуть позже сделаю оценку и добавлю в статью, спасибо за замечание.
не вдаваясь в суть бизнеса, «докопаюсь» до скользящей медианы. вопроса два: 1) чем был продиктован выбор именно этого показателя? (почему не среднее??? в любом учебник по статистике вы найдете именно сглаживание по средней, медиана — это одно единственное значение, НЕ являющееся типичным для совокупности, соответственно сравнивать с этим значением что-либо — означает привносить в анализ дополнительный шум) и 2) чем объясните пилообразный график? (я могу объяснить его только использованием в качестве базы сравнения медианы).
Пробовал оба значения, признак с использованием медианы дает больший прирост показателей, поэтому остановился на нем. Да и медиана более устойчива к выбросам.

Пилообразный вид, возможно вы правы. Думаете это плохо в контексте скоринга?
кстати, а на переобучение как-то проверяли? а то прирост в показателях модели тоже может быть «искусственным улучшением»
При обучении модели тренировочную выборку разделял на train test, проверял AUC и F1 на test. Затем проверял эти же метрики на отложенном test сете, который разделен временным промежутком с тренировочным.
отложенный тест-сет, отлично) спасибо за ответ
и ещё: без коэффициентов корреляции достоверность выводов, сделанных автором в ходе исследования, находится на уровне «радио ОБС». как говорится, «а чем докажешь?»
Постараюсь в следующей статье привести убедительную доказательную базу. Надеюсь, получится.
Привет! Меня зовут Марк, я data scientist в компании Devim. Недавно мы запустили модель для скоринга заемщиков МФК “До Зарплаты”, у которых отсутствует кредитная история.


Можно было бы написать интереснее. Примерно так: «Привет! Меня зовут Марк, я data scientist в компании Devim. Да-да, Devil Instant Money! Вы всё правильно поняли — я работаю на Сатану и мы выдаём микрокредиты до зарплаты» :)

Вот даже не знаю завидовать ли коллегам, оставшимся в бизнесе. "В наше время" модели, вернее матрицы принятия решений кредитовать или нет, а если да то сколько, были куда проще и формировались аналитика на основе данных из РСУБД, а мы, программисты, их имплементировали. От нас приветствовалось обратная связь, если обнаружили какие-то тренды или, наоборот, какие-то ограничения или разрешения приводили к недооценке или переоценка рисков. Работа со скорингом представляла треть интересных задач, с продуктами вторую, с архитектурой треть. Всего интересных хорошо если половина. С таким скорингом, кажется, интересных задач меньше будет.


Кстати, ав него можно внести внезапно возникший фактор риска, типа если какой то персональный фактор должен блокировать выдачу? Не ждать, пока научится, что таким людям не давать, а запретить директивно.

Кстати, ав него можно внести внезапно возникший фактор риска, типа если какой то персональный фактор должен блокировать выдачу? Не ждать, пока научится, что таким людям не давать, а запретить директивно.

Вы правы. Это хорошая практика и такие правила существуют. Но их сложно найти и работают они на 1-2% клиентов.

Иногда их искать не надо, они ломятся в реальность каждого. Например, какие-то политические решения. Факторы, которые были незначащими, становятся стоп-факторами. И человеку это становится очевидным почти сразу же как осознает новости.

Мне кажется, что при таких грабительских процентах какой-либо анализ потенциального заемщика не нужен вообще. Можно просто тупо выдавать всем, никому не отказывая (см. фильм «Всегда говори Да»).
Один из 100 человек расплатиться полностью — это уже покроет убытки по всем остальным 99. А дальше — поток чистой прибыли начиная со второго расплатившего заемщика.
Анализ заемщиков, время, оборудование, зарплата дата-сэйтистов… — это все лишние расходы. Всё это нужно убрать. И давать кредиты всем подряд.
Завтра же в такую щедрую контору приведут караван помытых бомжей и МФО обанкротится.
Ладно, тогда нужен только один фильтр. Простой.
Пример простого фильтра: самая прибыльная страховая компания Баффета продает страховки на автомобиль только государственным и муниципальным служащим.
С 28 января вступили в силу ограничения от центробанка, которые делают предложенную бизнес модель экономически нецелесообразной. А с 1 Июля вступят в силу новые ограничения. Так что уже сейчас микрозайм это полезный финансовый инструмент, для многих категорий пользователей.

Там не 10000% в день и хорошо если половина платит.

Написано, что вы финансовый аналитик, а такие глупости пишите.
А аргументировать можете? А то даже интересно стало в чем же глупость.
Мне кажется, что при таких грабительских процентах

Если не трогать неадекватных коллекторов, а смотреть исключительно на специфику бизнеса МФО по сравнению с кредитом в банке получим следующее:
1. Суммы очень маленькие. У банка самый минимум по кредиту выше самой высокой суммы в большинстве МФО. Если смотреть на средние суммы кредита, вообще получается разница в 1-3 порядка.
2. Срок займа катастрофически мал. Помним же про классический срок кредита в 5 лет. или 1825 дней. Даже если рассматривать займ в МФО на 30 дней, что само по себе достаточно много, получается, что займ по сроку будет всего 1.6% от банковского.
3. Процент займов, когда заёмщик не возвращает деньги гораздо выше. Тут причин несколько, начиная от особенностей контингента, который пользуется услугами МФО, и заканчивая позицией «обману этих уродов и буду молодец».
При всё этом затраты времени на одного клиента у компании сопоставимы с банковскими. То есть потратив на одного человека те же 20 минут, компания заработает не много длинных денег, а немного коротких.
Почему для постоянных клиентов или при покупке абонемента делают скидку? Потому что получив суммарно чуть меньше денег, компания получит их гарантированно, а не с какой-то вероятностью. Такая же ситуация тут, слишком много рисков.
Один из 100 человек расплатиться полностью — это уже покроет убытки по всем остальным 99

Включаем математику. Чтобы один расплатившийся покрыл убытки от остальных 99, процент по займу должен покрывать тело займа 99 людей. Банально при займе у всех в 1000 рублей, Проценты должен составлять как минимум 1000*99=99000 руб. или 9900%. Причём это только чтобы выйти в ноль и не % годовых, а фиксированный процент независимо от срока займа, например тот же месяц или вообще неделя.
*SARCASM* Это конечно же менее грабительский процент чем 2 % в день или 780% в год. *SARCASM*
Отличный комментарий.
Хотелось бы добавить, что максимальная сумма начислений тело займа*2.5, с 1 Июля будет тело займа*2, а с 1 января 20го, тело займа*1.5.
Логично. Разве что математика у вас за уши сильно притянута. Так и не понял с какого потолка был взят этот один расплатившийся из ста.
Потому что Accounter изначально написал
Один из 100 человек расплатиться полностью — это уже покроет убытки по всем остальным 99
mark-rtb, чем Вы заполняете пропуски в данных? например, если он заполняет анкету и там данные для заполнения не обязательны.
Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации

Истории