This article discusses a step-by-step machine learning project in Python for credit card fraud detection. The author highlights the challenges surrounding credit card fraud, such as defining “fraud” and the imbalance in the dataset. They also explore business questions related to amount and time in transaction classes. The author covers exploratory data analysis techniques and the importance of correlation matrices. They also discuss different models, including Artificial Neural Networks, XGBoost, Random Forest, CatBoost, and LigthGBM. Ultimately, XGBoost performed the best in identifying fraudulent transactions. The article was originally published on Towards AI.