Lemorzsolódás elemzése biztosítási környezetben - Dmlab

Lemorzsolódás elemzése biztosítási környezetben

Nagy-Rácz István

2014.02.06. • olvasási idő:

Csapatunkban nagy hagyománya van és mára támogatott dologgá vált, hogy tagjaink különböző adatbányászati versenyekben vesznek részt.

A legjobb helyezésekről és az ezekhez kapcsolódó versenyekről a blogon is igyekeztünk beszámolni, a legfontosabb szakmai tapasztalatokat összefoglalva. A jövőben minden ilyen beszámolót egy interjú keretében mutatunk be, így a legfontosabb tapasztalatokat minden esetben meg tudjuk veletek osztani. Ha valakinek eszébe jut olyan kérdés, amit szívesen megkérdezne még, azt nyugodtan írja meg kommentben.

Elsőként egy meghívásos Kaggle versenyen elért nagyszerű helyezésről szeretnénk írni. A Kaggle platformot már nem kell senkinek bemutatni a blogunkat rendszeresen olvasók közül. A meghívásos versenyek sajátosságai, hogy ezeken nem indulhat bárki a rendszer regisztrált felhasználói közül, csak azok, akik már bizonyos minőségi kritériumnak megfelelnek (helyezések, top%-os helyek száma stb.). Nagy Gábor kollégánknak sikerült elhozni egy másik versenyzővel együtt a harmadik helyet.

Ezt a versenyt a Deloitte írta ki és a megoldandó üzleti cél az ügyfelek lojalitásának megértése volt. Egy biztosítótársaság ügyfeleinél kellett előrejelezni a lemorzsolódást a következő 12 hónapban a lemorzsolódás időpontjával együtt.

 

Hányadik lettél a versenyen?

Harmadik lettem egy amerikai versenyzővel párban.

Hányan indultak a versenyen?

37-en. Ez egy Master’s Challange volt, ami azt jelenti, hogy csak a Kaggle Master státusszal rendelkező versenyzők vehettek részt rajta eleve.

Mi volt a probléma, amit meg kellett oldani?

Churn előrejelzés 12 hónapra előre. Minden hónapra meg kellett határozni a valószínűséget, hogy a szerződéshez kapcsolódó ügyfél lemorzsolódik-e vagy sem.

Miért döntöttél úgy, hogy nevezel?

Mert Master vagyok és jó volt a díj. Szeretem az osztályozós feladatokat, sok változóval.

Milyen adatelőkészítési műveleteket csináltál?

A teljes adathalmaz kb. 3.5GB volt, amit memóriában nem lehetett kezelni. Rengeteg adatelőkészítési és transzformációs trükköt bevetettem, a végső modellben 400 változó volt a kiinduló 120-hoz képest. A verseny jellege miatt erről többet nem tudok mondani.

Milyen modelleket használtál?

Gradient Boosting főleg.

Mi volt a legérdekesebb/legfontosabb/legmeglepőbb felismerés az adatokban?

Volt pár osztályváltozó, ahol nagyon magas volt a churn (>70%). Nem lehetett tudni ezek milyen szerződéseket jelölnek, mert anonimizálva voltak az adatok, ezért nem tudom pontosan, hogy mit jelölnek ezek. Voltak erős változók, amik jók voltak a tanuló adathalmazon, de rontották a végső modell eredményét az ismeretlen validációs halmazon.

Milyen eszközöket használtál?

Python-t, mint mindig 🙂 A pandas, sklearn framework elég jól működött. A pajtásom R-ben dolgozott, ezért jól kiegészítettük egymást.

Tanulságok a verseny kapcsán?

A feature engineering jó dolog, érdemes használni. Tranzakciós adatokat érdemes pivotálni id-re és időre, hogy az időszeletkékből érdekes feature-öket generáljunk.