Erkennung von Kreditkartenbetrug: Ein praktisches Projekt

May 10 2023
Entdecken Sie: Der World Payment Report 2022 unterstreicht das schnelle Wachstum bargeldloser Transaktionen und die Bedeutung der Wertschöpfungsketten für B2B-Zahlungen sowie kleiner und mittlerer Unternehmen. Außerdem wird erwartet, dass es in den kommenden Jahren zu einem stetigen Wachstum bargeldloser Transaktionen kommen wird, wie unten beschrieben. Obwohl es vielversprechend erscheinen mag, haben auch betrügerische Transaktionen zugenommen.

Entdecken:

  • Die Bedeutung der Erkennung von Kreditkartenbetrug verstehen
  • Einführung in den Datensatz „Kreditkartenbetrugserkennung“ für das Projekt
  • Aufbau robuster Betrugserkennungsmodelle
  • Bewertung der Modellleistung
  • Modellergebnisse interpretieren und analysieren

Der World Payment Report 2022 unterstreicht das schnelle Wachstum bargeldloser Transaktionen und die Bedeutung der Wertschöpfungsketten für B2B-Zahlungen sowie kleiner und mittlerer Unternehmen. Darüber hinaus wird erwartet, dass es in den kommenden Jahren zu einem stetigen Wachstum bargeldloser Transaktionen kommen wird (siehe unten).

Weltzahlungsbericht 2022

Obwohl es vielversprechend erscheint, haben auch betrügerische Transaktionen zugenommen. Trotz der Einführung von EMV-Smartchips geht durch Kreditkartenbetrug immer noch ein erheblicher Betrag verloren.

Spotlight: Verlustprognose für US-Kartenzahlungsbetrug im Jahr 2022

Wie können wir das Risiko minimieren? Obwohl es verschiedene Techniken gibt, um Verluste zu verringern und Betrug zu verhindern, werde ich Sie durch meinen Ansatz führen und meine Erkenntnisse mit Ihnen teilen.

I. Über den Datensatz

Der Datensatz „ Credit Card Fraud Detection “ auf Kaggle ist ein äußerst unausgewogener Datensatz, der Kreditkartentransaktionen europäischer Karteninhaber im September 2013 enthält. Der Datensatz umfasst insgesamt 284.807 Transaktionen, von denen nur 492 betrügerisch sind, was den Datensatz äußerst unausgewogen macht. Der Datensatz umfasst 28 Merkmale, bei denen es sich um numerische Werte handelt, die durch PCA-Transformation erhalten werden, um die Vertraulichkeit sensibler Informationen zu wahren. Das Ziel dieses Datensatzes besteht darin, ein Modell zu erstellen, das betrügerische Transaktionen in Echtzeit genau erkennen kann, um betrügerische Aktivitäten zu verhindern und die Verluste für Karteninhaber und Banken zu reduzieren. Dieser Datensatz wurde in der maschinellen Lernforschung häufig verwendet, um verschiedene Klassifizierungsalgorithmen und -techniken für den Umgang mit unausgeglichenen Datensätzen zu bewerten.

II. Explorative Datenanalyse

Nachdem die Daten nun verfügbar sind, können wir einige Überprüfungen der Spalten Time, Amountund durchführen.Class

1. Zeit

Abbildung 1: Zeitverteilung (Sekunden)

Aus der Darstellung können wir erkennen, dass die Zeitfunktion eine bimodale Verteilung mit zwei Spitzen aufweist, was darauf hindeutet, dass es zwei Zeiträume im Laufe des Tages gibt, in denen Kreditkartentransaktionen häufiger stattfinden. Der erste Höhepunkt tritt bei etwa 50.000 Sekunden (ungefähr 14 Stunden) auf, während der zweite Höhepunkt bei etwa 120.000 Sekunden (ungefähr 33 Stunden) auftritt. Dies deutet darauf hin, dass es möglicherweise ein Muster im Timing von Kreditkartentransaktionen gibt, das für die Betrugserkennung nützlich sein könnte.

2. Betrag

Abbildung 2: Mengenverteilung

Anhand des Diagramms können wir erkennen, dass die Verteilung des Betragsmerkmals stark nach rechts verzerrt ist und einen langen Ausläufer nach rechts aufweist. Dies weist darauf hin, dass es sich bei der Mehrzahl der Transaktionen um geringe Beträge handelt, während es bei einigen Transaktionen extrem hohe Beträge gibt. Dies lässt darauf schließen, dass der Datensatz einige Ausreißer in Bezug auf die Transaktionsbeträge enthält. Daher kann es beim Erstellen eines Modells zur Betrugserkennung erforderlich sein, Ausreißer in der AmountFunktion zu behandeln, beispielsweise durch die Verwendung einer Protokolltransformation oder robuster statistischer Methoden.

3. Klasse (Betrug | Nichtbetrug)

Abbildung 3: Betrügerische vs. nicht betrügerische Transaktionen

Aus der Darstellung können wir erkennen, dass der Datensatz stark unausgewogen ist, wobei die überwiegende Mehrheit der Transaktionen nicht betrügerisch ist (Klasse 0) und eine relativ kleine Anzahl von Transaktionen betrügerisch ist (Klasse 1). Dies weist darauf hin, dass im Datensatz ein Klassenungleichgewichtsproblem vorliegt, das sich auf die Leistung eines auf diesem Datensatz trainierten Modells auswirken kann. Beim Erstellen eines Modells zur Betrugserkennung kann es erforderlich sein, Techniken wie Oversampling, Undersampling oder Klassengewichtung zu verwenden, um das Klassenungleichgewichtsproblem zu lösen.

III. Datenverarbeitung

Um sicherzustellen, dass es in den Daten keine signifikante Kollinearität gab, wurde die Heatmap verwendet.

Abbildung 4: Korrelations-Heatmap

Aus der Heatmap lässt sich erkennen, dass es keine starken positiven oder negativen Korrelationen zwischen Variablenpaaren im Datensatz gibt. Die stärksten Zusammenhänge finden sich:

  • Zeit und V3, mit einem Korrelationskoeffizienten von -0,42
  • Betrag und V2, mit einem Korrelationskoeffizienten von -0,53
  • Betrag und V4, mit einem Korrelationskoeffizienten von 0,4.

IV. Modellieren

Der Datensatz „ Credit Card Fraud Detection “ enthält Kreditkartentransaktionen, die als betrügerisch oder nicht betrügerisch gekennzeichnet sind. Der Datensatz ist unausgewogen und benötigt daher ein Modell, das betrügerische Transaktionen genau erkennen kann, ohne nicht betrügerische Transaktionen fälschlicherweise zu kennzeichnen.

Um bei Klassifizierungsproblemen zu helfen, standardisiert StandardScaler Daten, indem es ihnen einen Mittelwert von 0 und eine Standardabweichung von 1 gibt, was zu einer Normalverteilung führt. Diese Technik funktioniert gut, wenn es um eine große Bandbreite an Mengen und Zeit geht. Um die Daten zu skalieren, wird der Trainingssatz verwendet, um die Anpassung zu initialisieren. Anschließend werden die Trainings-, Validierungs- und Testsätze skaliert, bevor sie in die Modelle ausgeführt werden.

Der Datensatz wurde in 60 % für Training, 20 % für Validierung und 20 % für Tests aufgeteilt . Um den unausgeglichenen Datensatz auszugleichen, wurde eine zufällige Unterabtastung verwendet, um die Anzahl der betrügerischen Transaktionen abzugleichen. Es wurden logistische Regressions- und Random-Forest-Modelle verwendet, und es wurden gute Ergebnisse erzielt.

Die am häufigsten verwendeten Modelle für den Datensatz „Kreditkartenbetrugserkennung“ sind logistische Regression, Naive Bayes, Random Forest und Dummy Classifier.

  • Die logistische Regression wird aufgrund ihrer Interpretierbarkeit und Fähigkeit, große Datenmengen zu verarbeiten, häufig zur Betrugserkennung eingesetzt.
  • Naive Bayes wird häufig zur Betrugserkennung verwendet, da es Datensätze mit einer großen Anzahl von Funktionen verarbeiten und schnelle Vorhersagen liefern kann.
  • Random Forest wird häufig zur Betrugserkennung verwendet, da es komplexe Datensätze verarbeiten kann und weniger anfällig für Überanpassung ist.
  • Der Dummy Classifier ist ein einfacher Algorithmus, der als Benchmark zum Vergleich der Leistung anderer Modelle dient.

V. Modellbewertung

In diesem Abschnitt werden die folgenden Metriken besprochen: Genauigkeit, Rückruf, Präzision und F1-Score.

Abbildung 5: ML-Modelle bewerten
  • Genauigkeit ist der Anteil korrekter Vorhersagen, die das Modell macht. Bei unausgeglichenen Datensätzen kann es jedoch irreführend sein.
  • Recall sagt uns, wie viel Prozent der betrügerischen Transaktionen das Modell korrekt identifiziert hat. Beim besten Modell liegt der Recall bei 89,9 %, was ein guter Ausgangspunkt ist.
  • Precision sagt uns, wie viel Prozent der vorhergesagten betrügerischen Transaktionen tatsächlich betrügerisch waren. Im besten Modell wurden 97,8 % aller betrügerischen Transaktionen erfasst, was eine gute Kennzahl ist.
  • Der F1-Score kombiniert Recall und Precision in einer Metrik als gewichteten Durchschnitt der beiden und berücksichtigt dabei falsch-positive und falsch-negative Ergebnisse. Es ist viel effektiver als Genauigkeit für unausgeglichene Klassen.
  • Abbildung 6: Ergebnisse der Modellbewertung

1. ROC-Ergebnisse

Der ROC misst die Klassifizierungsleistung bei verschiedenen Schwellenwerten. Ein höherer AUC-Wert (Area Under the Curve) bedeutet, dass das Modell Betrug/Nichtbetrug besser vorhersagen kann.

ROC-Kurve: Ein leistungsstarkes Tool zur Betrugserkennung im Marketing
Abbildung 7: ROC-Kurven für Out-of-Sample-Daten

Die Grafik zeigt AUC-Werte für logistische Regression und Random Forest. Hohe Werte sind gut. Die Punkte auf der Kurve stellen Schwellenwerte dar. Wenn Sie sich nach rechts bewegen, werden mehr True Positives, aber auch mehr False Positives erfasst. Die idealen Schwellenwerte liegen bei 0,842 für die logistische Regression und 0,421 für Random Forest. Bei diesen Schwellenwerten erfassen wir die optimale Menge an betrügerischen Transaktionen und halten gleichzeitig die Anzahl falsch positiver Ergebnisse gering. Die Verwirrungsmatrix kann die Auswirkungen jedes Modells visualisieren.

2. Verwirrungsmatrix – Logistische Regression

Abbildung 8: Verwirrungsmatrix – Logistische Regression

Das Modell erfasste 88 von 98 betrügerischen Transaktionen und markierte 1.678 normale Transaktionen als betrügerisch, wobei ein Schwellenwert von 0,842 im Out-of-Sample-Testsatz verwendet wurde. Dies ähnelt Situationen, in denen die Bank ohne vorherige Ankündigung eine Bestätigungstext sendet, nachdem die Karte in einem anderen Staat verwendet wurde.

3. Verwirrungsmatrix – Random Forest

Abbildung xxx: Verwirrungsmatrix – Random Forest

Bei einem Schwellenwert von 0,421 verhält sich das Random-Forest-Modell ähnlich wie das Logistic-Regression-Modell. Es identifiziert 88 von 98 betrügerischen Transaktionen korrekt, weist aber im Vergleich zum logistischen Regressionsmodell auch auf einen Rückgang normaler Transaktionen als betrügerisch hin. Insgesamt weisen beide Modelle eine gute Leistung auf.

Abschluss

Die Erkennung betrügerischer Kreditkartentransaktionen ist in der heutigen Gesellschaft von entscheidender Bedeutung. Unternehmen nutzen unterschiedliche Methoden, um diese Vorfälle zu erfassen, und es ist faszinierend zu sehen, wie sie damit umgehen. Es macht Spaß, Anomalien zu finden, daher hat die Durchführung dieses Projekts viel Spaß gemacht. Ich hoffe, dass die Ergebnisse gut erklärt wurden, und danke fürs Lesen!

Verweise

  • Kaggle-Projekt – HIER
  • Github Repo – HIER
  • Kaggle-Datensatz – HIER
  • LESEN SIE MEHR –
    Reproduzierbares maschinelles Lernen zur Erkennung von Kreditkartenbetrug – Praktisches Handbuch

Geben Sie dem Artikel 50 Klatschen

Folge mir

Lesen Sie weitere Artikel auf Medium

Verbinden Sie sich in den sozialen Medien Github | Linkedin | Kaggle

#CreditCardFraudDetection #DataScience #MachineLearning #FraudPrevention #DataAnalysis