Fraude opsporen met ML-classificatie
In deze oefening zie je wat er gebeurt als je in plaats daarvan een simpel machinelearningmodel gebruikt op onze creditcarddata.
Denk je dat je die resultaten kunt verbeteren? Onthoud: je voorspelde 22 van de 50 fraudegevallen en had 16 false positives.
Met dat in gedachten gaan we een Logistic Regression-model implementeren. Als je de cursus over supervised learning in Python hebt gevolgd, ben je met dit model bekend. Zo niet, dan is dit een goed moment om dat op te frissen. Maak je geen zorgen: je wordt stap voor stap door de structuur van het machinelearningmodel geleid.
De variabelen X en y zijn beschikbaar in je werkruimte.
Deze oefening maakt deel uit van de cursus
Fraudedetectie in Python
Oefeninstructies
- Splits
Xenyin training- en testdata, waarbij je 30% van de data voor testen bewaart. - Fit je model op je trainingsdata.
- Verkrijg de door het model voorspelde labels door
model.predictuit te voeren opX_test. - Maak een classificatierapport waarin je
y_testmetpredictedvergelijkt, en gebruik de gegeven confusion matrix om je resultaten te controleren.
Praktische interactieve oefening
Probeer deze oefening eens door deze voorbeeldcode in te vullen.
# Create the training and testing sets
X_train, X_test, y_train, y_test = train_test_split(____, ____, test_size=____, random_state=0)
# Fit a logistic regression model to our data
model = LogisticRegression()
model.fit(____, ____)
# Obtain model predictions
predicted = model.predict(____)
# Print the classifcation report and confusion matrix
print('Classification report:\n', classification_report(____, ____))
conf_mat = confusion_matrix(y_true=y_test, y_pred=predicted)
print('Confusion matrix:\n', conf_mat)