Betrugserkennung beim maschinellen Lernen: Was Sie wissen müssen [2022]

Veröffentlicht: 2021-01-02

Lebensmittel, Kleidung, Accessoires oder Möbel. Alles, was Sie früher in Geschäften an den belebten Straßen gekauft haben, können Sie jetzt online kaufen. E-Commerce ist eine Multimilliarden-Dollar-Industrie und wächst immer mehr. Selbstverständlich ist auch dies im Griff der kriminellen Welt. Online-Kriminelle sind in allen Online-Sektoren präsent, die Sie nennen können.

Betrugserkennung mit maschinellem Lernen ist möglich, weil die Modelle aus früheren Betrugsdaten lernen können, um Muster zu erkennen und die Legitimität zukünftiger Transaktionen vorherzusagen. In den meisten Fällen ist es aufgrund der Geschwindigkeit und Effizienz der Informationsverarbeitung effektiver als der Mensch.

Einige Arten von Internetbetrug sind:

  • ID-Fälschung. Heutzutage werden Ausweise so gut fabriziert, dass es für Menschen fast unmöglich ist, ihre Legitimität zu überprüfen und Identitätsbetrug zu verhindern.

Durch den Einsatz von KI können verschiedene Merkmale des Ausweises analysiert werden, um ein Ergebnis über die Echtheit des Dokuments zu erhalten. Damit können Unternehmen eigene Sicherheitskriterien festlegen, wenn Anfragen gestellt werden, die bestimmte Ausweisdokumente erfordern.

    • Betrug bei Bankkrediten. Dies kann passieren, wenn eine Person Sie kontaktiert und Ihnen ein Darlehensprogramm mit verdächtig günstigen Konditionen anbietet. Hier wird die Person, die Sie kontaktiert, nach Ihren Bankdaten oder einer Vorauszahlung fragen, ohne über ordnungsgemäße Firmeninformationen zu verfügen oder sogar eine internationale Kontaktnummer zu verwenden. Solche Betrügereien können leicht von KI gehandhabt werden, indem frühere Kreditantragsunterlagen verwendet werden, um Kreditsäumige herauszufiltern.
  • E-Mail-Phishing. Hierbei handelt es sich um eine Art Cyberkriminalität, bei der Benutzern gefälschte Websites und Nachrichten angeboten werden, in denen sie aufgefordert werden, persönliche Daten weiterzugeben. Wenn eine Person nicht zu vorsichtig ist, kann sie vertrauliche Daten eingeben, die sie anfällig für Bedrohungen machen können. Der beste Weg, diesen Betrug zu vermeiden, besteht darin, dass der Benutzer selbst vorsichtig ist, aber die KI kann die Aufgabe übernehmen, betrügerische E-Mails zu finden, indem sie sie mithilfe grundlegender Algorithmen für maschinelles Lernen wie Regression filtert.
  • Kreditkartenbetrug. Dies ist die häufigste Art des Zahlungsbetrugs. Denn alle Daten werden online gespeichert, was Kriminellen und Hackern den Zugriff erleichtert. Auch postalisch verschickte Karten können leicht abgefangen werden. Eine Möglichkeit, solche betrügerischen Transaktionen mithilfe von maschinellem Lernen zu filtern, wird unten erörtert.
  • Identitätsdiebstahl. Machine Learning zur Erkennung von Identitätsdiebstahl hilft dabei, wertvolle Identitätsdokumente wie Reisepässe, PAN-Karten oder Führerscheine in Echtzeit zu überprüfen. Darüber hinaus können manchmal biometrische Informationen erforderlich sein, um die Sicherheit noch weiter zu verbessern. Diese Sicherheitsmethoden erfordern eine persönliche Authentifizierung, was die Wahrscheinlichkeit von Betrug erheblich verringert.

Lesen Sie auch: Gehalt als Machine Learning Engineer in Indien

Modell zur Betrugsvorhersage anhand von Kreditkartendaten

Hier wird ein sehr berühmter Kaggle-Datensatz verwendet, um zu demonstrieren, wie Betrugserkennung mit einem einfachen neuronalen Netzwerkmodell funktioniert.

Importe:

pandas als pd importieren

importiere numpy als np

Tensorflow als tf importieren

Kera importieren

aus sklearn.preprocessing importieren Sie StandardScaler

aus keras.models import Sequential

aus keras.layers import Dense

aus sklearn.model_selection import train_test_split

aus sklearn.metrics import Classification_report

Sehen Sie sich hier den Datensatz an . Die Spalte „ Betragwird wie alle anderen Merkmale normalisiert und die Spalte „ Zeit “ wird entfernt, da sie irrelevant ist.

data= pd.read_csv ( 'kreditkarte.csv' )

data [ 'Menge_norm' ] = StandardScaler () .fit_transform ( data [ 'Menge' ] .values.reshape ( -1 , 1 ))

data= data.drop ([ 'Betrag' ], Achse= 1 )

data= data.drop ([ 'Zeit' ], Achse= 1 )

Daten= Daten [: -1 ]

data.info()

Nach einiger Datenbereinigung enthält unser Datensatz nun insgesamt 28 Merkmale und ein Ziel, die alle Float-Werte haben, die nicht leer sind.

Unser Ziel ist die Klasse -Spalte, die bestimmt, ob es sich bei der jeweiligen Kreditkartentransaktion um Betrug handelt oder nicht. Der Datensatz wird also entsprechend in Zug und Test aufgeteilt, wobei das übliche 80:20-Teilungsverhältnis beibehalten wird. ( random_state ist behoben, um Ihnen zu helfen, Ihre geteilten Daten zu reproduzieren)

X = data.iloc [:, data.columns != 'Klasse' ]

y = data.iloc [:, data.columns == 'Klasse' ]

X_train , X_test , y_train , y_test = train_test_split ( X , y , test_size = 0.2 , random_state= 0 )

Wir verwenden das sequentielle Modell aus der Keras -Bibliothek, um ein neuronales Netzwerk mit 3 dichten Schichten aufzubauen. Die Ausgabeschicht enthält nur ein einzelnes Neuron, das die Sigmoidfunktion verwendet, um entweder eine positive Klasse oder eine negative Klasse zu ergeben.

Das Modell wird dann mit dem Adam-Optimierer kompiliert , obwohl es dringend empfohlen wird, dass Sie verschiedene Werte von Hyperparametern selbst ausprobieren, wie z. B. die Anzahl der Einheiten in jeder Schicht, Aktivierung, Optimierer usw., um zu sehen, was für einen bestimmten Wert am besten funktioniert Datensatz.

model= sequentiell ()

model.add ( Dense ( Einheiten = 16 , Aktivierung = 'relu' , input_dim = 29 ))

model.add ( Dense ( units= 16 , activation = 'relu' ))

model.add ( Dense ( units= 1 , activation = 'sigmoid' ))

Modell. Kompilieren ( Optimizer = 'adam' , loss = 'binary_crossentropy' , metrics = [ 'accuracy' ])

model.fit ( X_train , y_train , batch_size = 32 , Epochen = 15 )

Dies ist das Ergebnis, nachdem das Modell einige Epochen lang ausgeführt wurde.

Wir sehen, dass das Modell sehr schnell eine Genauigkeit von 99,97 % liefert. Unten enthält y_pred die Vorhersagen, die unser Modell anhand der Testdaten gemacht hat, und eine übersichtliche Zusammenfassung seiner Leistung wird gezeigt.

y_pred = model.predict ( X_test )

y_pred = ( y_pred > 0,5 )

print ( Klassifizierungsbericht ( y_test , y_pred ))

Lesen Sie: Projektideen für maschinelles Lernen für Anfänger

Fazit

Auf diese Weise konnten wir erfolgreich ein hochpräzises Modell zur Ermittlung betrügerischer Transaktionen erstellen. Diese sind sehr praktisch für das Risikomanagement.

Wenn Sie mehr über maschinelles Lernen erfahren möchten, sehen Sie sich das PG-Diplom in maschinellem Lernen und KI von IIIT-B & upGrad an, das für Berufstätige konzipiert ist und mehr als 450 Stunden strenge Schulungen, mehr als 30 Fallstudien und Aufgaben bietet, IIIT- B-Alumni-Status, mehr als 5 praktische, praktische Abschlussprojekte und Jobunterstützung bei Top-Unternehmen.

Führen Sie die KI-gesteuerte technologische Revolution an

PG DIPLOM IN MASCHINELLEM LERNEN UND KÜNSTLICHER INTELLIGENZ
Erfahren Sie mehr