Преглед

*Кога за последен път сте дали пари назаем на приятел, но той никога не ви е върнал, така че сте решили просто да им ги оставите?*

Банките, от друга страна, не могат просто да заемат пари и да забравят за тях. Как банките знаят дали парите, които дават на клиенти, ще бъдат върнати? Те всъщност не знаят, но могат да се опитат да предскажат резултата въз основа на миналите поведенчески характеристики на клиента. Но върху кои характеристики трябва да се съсредоточат?

Този проект анализира горния проблем, като се съсредоточава върху кой модел и функции трябва да бъдат приоритетни, за да се предвиди дали клиентът на кредитна карта ще изпълни задълженията си (не може да изплати) или не. Подходът използва *инженерство на функции*, ​​което включва обработка и трансформиране на необработени данни в 12 подходящи функции. След това тези функции се използват в различни модели, за да се определи най-надеждният метод, който банкерите да използват.

Проектът заключава, че математическият метод „SHAP“ е ефективен модел за определяне на съответните характеристики в избрания набор от данни. Въпреки че моделът превъзхожда други методи, той не е перфектен. По този начин по-нататъшното инженерство може да помогне да се избегне обобщаването на характеристиките. В крайна сметка констатацията е добра основа за банкерите да изградят модел, който може да предскаже дали клиентът няма да изпълни задълженията си и да смекчи потенциалните финансови рискове.

Предистория на проекта

Избраният набор от данни за този проект се нарича „По подразбиране набор от данни за клиенти на кредитни карти“ (DCC), импортиран от Kaggle.

Резюме на набора от данни

„Този ​​набор от данни съдържа информация за плащания по подразбиране, демографски фактори, кредитни данни, история на плащанията и извлечения за сметки на клиенти с кредитни карти в Тайван от април 2005 г. до септември 2005 г.“

Първоначална мисъл

Предоставените характеристики са демографските данни и моделите на плащане на потребителите на кредитни карти и следователно са подходящи за целта на този проект. Въпреки това колко надеждна е прогнозата зависи от модела и функциите, които се използват.

Подходи към проекта

Справяне с липсващи данни

Представете си колко разочаровани биха били банкерите, ако обядът липсва от работния им график. По същия начин ние обикновено не искаме да имаме липсващи данни в нашия набор от данни. За щастие наборът от данни на DCC не съдържа липсващи стойности.

Предварителна обработка на данните

Сега си представете колко разочаровани биха били банкерите, ако разносвачът произволно разпредели обяда им. Някои може да са вегетарианци, докато други вероятно имат други диетични ограничения. Това важи и за нашия набор от данни, който се състои от различни типове данни. За да проведем инженеринг на функции, искаме да групираме характеристиките в техните свързани типове, като „числови“, „двоични“ и „категорични“.

Базов модел

За да определим колко надеждни са прогнозите, ние изчисляваме прогнозен резултат въз основа на средните общи характеристики. Надяваме се да използваме модели с резултати, по-високи от 0,777.

Внедряване

За да определим най-ефективния модел, ние пускаме набора от данни през различни модели, за да изчислим и сравним важността на всяка характеристика. Тези модели включват:

  1. Логистична регресия: често се използва за двоични стойности. Ние го използваме тук, защото отговорът на това дали клиентите ще продължат или не е „да“ или „не“. Ние също използваме този модел, за да намерим вероятността за резултата, след което повтаряме процеса няколко пъти, за да уловим средната стойност и стандартното отклонение на тази вероятност за всички клиенти.
  • Фигура 1. показва, че прогнозираната точност за този модел е 0,777. Така че може би пускането на набора от данни през по-сложни модели може да подобри резултата.

2. Други модели: Някои други сложни модели, които могат да се използват, са `RandomForestClassifier`, `Gradient Boost` и `LightGBM`. „Фигура 1.“ е обобщение на всички резултати за всеки модел.

  • Резултатът за обучение показва колко добре моделът отговаря на набора от данни, който е обучен от модела. Междувременно резултатът за валидиране оценява колко надеждни са прогнозите.

Сред всички LightGBM има най-висок резултат, но може да бъде малко *прекален*. Това се определя въз основа на това колко близо или далеч са един от друг влакът и резултатите за валидиране.

*Например, ако банкерите са очаквали обяд на обяд и храната е била доставена в точния час, те не могат да приемат, че тя винаги ще пристигне в точния момент за следващата поръчка. Ние наричаме тази прекалено оптимистична ситуация „недостатъчно оборудване“. Междувременно, ако храната е доставена много по-рано или по-късно от очакваното, ние считаме това за „прекомерно оборудване“*

Интерпретиране на данните

След като изберем модела LightGBM, ние определяме най-подходящите характеристики за прогнозата. За да направим това, ние използваме принудителен график, наречен SHAP, за да помогнем да визуализираме важността на характеристиките. „Фигура 2.“ показва, че червените характеристики водят прогнозата до 1 (по подразбиране = да), докато сините характеристики я отдалечават от 1.

В обобщение, сумата в извлеченията по сметки (през август 2005 г.) и сумите в предишни извлечения вероятно ще доведат до висока прогноза за „да“. Междувременно лимитираното салдо и някои суми на сметки биха довели до по-ниска прогноза.

Ограничения и недостатъци

Не забравяйте, че избраният модел не е идеален. Характеристика 3. е матрица, която показва броя на правилните прогнози (6702 и 428) спрямо грешните прогнози (350 и 1520). Големият брой фалшиви прогнози предполага, че нашият модел все още може да бъде подобрен.

Въпреки че настоящият модел би представлявал добра основа, подобрения могат да бъдат направени, ако има време и ресурси, като например по-добра машина за изпълнение на код. Сложен метод за проектиране на функции може да ни помогне да изследваме различни комбинации от функции. Например, може да помислим за „женски_развод“, а не за „пол“ и „брак“. Този подход би ни позволил да разпределим важността на характеристиките въз основа на техните характеристики, вместо да комбинираме всички в едно и да приемем, че теглото е еднакво. По този начин помогнете за намаляване на фалшивите прогнози.

Окончателни изводи

Проектът заключава, че методът `SHAP` и LightBGM са ефективни модели за определяне на съответните характеристики за избрания набор от данни. Това предполага, че сумата по сметките и предишните извлечения вероятно ще помогне да се определи дали клиентът няма да изпълни задълженията си.

Тъй като е изградена върху сравнително проста техника за проектиране на функции, по-нататъшната обработка може да помогне за класифицирането на клиентите в подтипове като „женена_жена“ или „университетски_мъж“. В крайна сметка SHAP е много интерпретируем модел, тъй като прави сравняването на важността на всяка функция много по-лесно.