Skip to content

Latest commit

 

History

History
47 lines (36 loc) · 3.58 KB

README.md

File metadata and controls

47 lines (36 loc) · 3.58 KB

Research in Machine Learning algorithms in Credit Card Fraud Detection

FYP

This is a research project collaborated with Cardzone Sdn Bhd, which aims to investigate Data Mining and Machine Learning techniques and identifies potential solutions in detecting fraudulent transactions

Outcomes

As a result of the literature study and discussion, Naïve Bayesian, Decision Tree, Frequent Pattern-growth (FP-growth) and Classification using Frequent Patterns have been selected as Data Mining and Machine Learning algorithms for fraud detection.

The justification for selected algorithm also take into the account of the requirements by the company, such as:

  • Decision Tree -- Able to provide fraud rules, which can be embedded into the rule engine
  • Naïve Bayesian -- Able to provide probability, such as how probable is the transaction is a fraud
  • FP-growth -- To mine frequent patterns out from the fraud dataset.
  • Classification using Frequent Patterns -- From all of the fraud and non-fraud frequent patterns, generate Association Rules, which then use it as a rule classifier model to classify fraudulent transaction.

⚠️ Due to the Privacy and Confidentiality of customers data, the original dataset that primarily used for train and test Machine Learning models will not be share out.

Outlines

  • Java -- Contains training and testing for all of the algorithms mentioned. Deployment of models also in this directory
  • Python -- Contains Exploratory Data Analysis and Visualization for both benchmark and original dataset. A preprocessing script also available for the original dataset
  • R -- Contains training and testing for all of the algorithms mentioned. R code is the primary code base for this research project

Dataset used

  • creditcard.csv -- Taken from Kaggle as a benchmark dataset
  • cz_authtxn.csv -- Original dataset that gotten from Cardzone Sdn Bhd
  • preprocessed_dataset.csv -- Preprocessed dataset from the original dataset

Built With

Sample Machine Learning model test performance

Sample Machine Learning model test performance

Inspect test set with truth value and predicted value

Inspect test set

Deployment

IBM Watson was chosen as it allows building custom Machine Learning models from scratch and also provide APIs for calling the model to make on-demand online predictions. Once the model deployed as PMML on IBM watson, it will return a JSON result states its probability fraud value

Live Online Prediction

Live Online Prediction

Authors