Menu sluiten

Hoe een algoritme in staat is om creditcardfraude te detecteren.

AI

Creditcardfraude detecteren

Een algoritme is in staat om zichzelf aan te leren verbanden te ontdekken tussen variabelen in een dataset en het geleerde vervolgens real-time toe te passen. Dat kunnen bijvoorbeeld verbanden zijn tussen een visueel beeld en een afwijking hierin (denk aan een röntgen-foto in het medisch vakgebied), of tussen persoonskenmerken en aankoopgedrag. Het opsporen van fraude behoort ook tot de mogelijkheden. Relai heeft een algoritme gebouwd om crecitcardfraude real-time op te sporen.

Fraude kent vele gedaantes.

Creditcardfraude is een vorm die op steeds grotere schaal voorkomt. Alleen al in Groot-Brittannië wordt de schade door dit type fraude geschat op 600 miljoen euro per jaar.

Het opsporen van creditcardfraude is dan ook van groot belang. Door het ontwikkelen van een specifiek algoritme zijn wij in staat om frauduleuze creditcard transacties op te sporen. Onze aanpak volgde het Relai 7-stappenplan.

Stap 1: Plan van Aanpak

In overleg met de opdrachtgever bepalen we wat het eindresultaat moet zijn; in dit geval ‘het real-time herkennen van frauduleuze transacties.’ Ook wordt besproken hoe de dataset eruit ziet en welke mogelijkheden dat biedt voor analyse. Uiteraard bespreken we ook zaken als doorlooptijd; kosten; rapportage en vertrouwelijkheid met de opdrachtgever en wordt dit vastgelegd.

Stap 2: Data analyse

We onderzoeken de dataset en we brengen precies in kaart welke variabelen zich in die dataset bevinden. Deze dataset bestaat uit 285.000 creditcard transacties en kent een zekere onbalans. Dit houdt in dat slechts een heel klein deel van de transacties frauduleus is nl. 0,17%. Dit aantal is op zich te weinig om het algoritme te laten leren. Om het algoritme toch goed te kunnen trainen combineren we dan ook een aantal technieken, zoals oversampling en undersampling.

Stap 3: Data cleaning

Na deze fase bestaat de dataset uit cases die vrij zijn van ‘smetten’, zoals onbruikbare of foutieve waarden of variabelen, waardoor een foutvrije analyse mogelijk wordt.

Stap 4: Prototype

In deze fase testen we het algoritme. Hierbij gaat het om ‘precisie’ en ‘recall’. Precisie houdt in dat we kijken naar de hoeveelheid correct gekozen positieve classificaties. Dus hoeveel van de fraude classificaties die het algoritme selecteert, zijn nu ook daadwerkelijk fraude. Recall geeft aan hoe gevoelig het model is. Dit vertaalt zich naar hoeveel van alle frauduleuze transacties het model in staat was correct te herkennen.

Een goed model maximaliseert de gevoeligheid, zonder veel aan precisie in te boeten. Oftewel, een goed model herkent zoveel mogelijk frauduleuze transacties, zonder fouten te maken in de classificatie.

Stap 5: Finale model

Het algoritme stellen we af om een optimum te bereiken tussen teveel transacties aanmerken als frauduleus (false positives) en frauduleuze transacties niet herkennen (false negatives). Dit gebeurt in samenspraak met de klant.

Stap 6: Implementatie

Nu blijkt dat het algoritme precies doet wat het hoort te doen, is het gereed om te worden geïnstalleerd binnen de systemen van de opdrachtgever. Deze stap is maatwerk omdat elke klant verschillende systemen en eisen (bijv. op het gebied van privacy) heeft. Als het systeem draait, wordt elke nieuwe creditcard-transactie op hetzelfde moment dat deze transactie plaatsvindt door het algoritme gescreend op fraude. Het spreekt voor zich dat hierdoor onmiddellijk ingrijpen mogelijk is.

Stap 7: Nazorg

De omgeving verandert steeds; in dit geval kan gesteld worden dat criminelen steeds slimmer worden en frauduleuze transacties telkens op een andere manier uitvoeren. Gelukkig kan het algoritme hierin eenvoudig meebewegen door middel van updates.

Conclusie

Er worden dagelijks zo veel creditcard transacties uitgevoerd, dat deze onmogelijk allemaal door mensen handmatig bekeken kunnen worden. Een algoritme heeft geleerd welke transacties mogelijk frauduleus zijn en filtert deze transacties eruit. Deze transacties worden vervolgens aan een specialist voorgelegd om te controleren of de transactie daadwerkelijk frauduleus is of niet.

Vrijwel alle classificatiesystemen hebben een soortgelijke werking: het algoritme filtert razendsnel met grote nauwkeurigheid en consistentie om de resultaten vervolgens door mensen te laten interpreteren en/of beoordelen.

De volledige case inclusief code is hier te vinden.