This is a machine learning project that aims to build a model for detecting credit card fraud. The dataset used for this project contains information about credit card transactions, including the transaction amount, the time of the transaction, and various other features. The goal of this project is to train a model that can accurately predict whether a given transaction is fraudulent or not.
The dataset used for this project is the Credit Card Fraud Detection dataset from Kaggle. The dataset contains 284,807 transactions, of which 492 are fraudulent. The dataset is highly imbalanced, with fraudulent transactions accounting for only 0.172% of the total transactions. The dataset can be downloaded from the following link: https://www.kaggle.com/mlg-ulb/creditcardfraud.
Several machine learning models were trained and evaluated on this dataset, including logistic regression, decision tree, random forest, and XGBoost. The XGBoost model performed the best, with a precision of 0.988, recall of 0.806, F1-score of 0.888, and AUC-ROC of 0.976.
The implementation of the machine learning models was done using Python and several libraries, including scikit-learn, XGBoost, and Pandas. The Jupyter Notebook containing the implementation code can be found in the root directory of this repository.
In the future, we plan to explore other machine learning models and techniques for detecting credit card fraud, including unsupervised learning and deep learning approaches. Unsupervised learning can be useful for anomaly detection, which is a key aspect of detecting fraud. Deep learning models, such as convolutional neural networks and recurrent neural networks, have shown promising results in other areas of fraud detection and could be adapted for use in credit card fraud detection.
In this project, we have shown that machine learning can be an effective tool for detecting credit card fraud. The XGBoost model we trained achieved high precision, recall, F1-score, and AUC-ROC, indicating that it is a reliable predictor of fraudulent transactions.