Anti-Money Laundering with Graph Neural Networks
Capstone Project | TD Bank & Columbia University
We developed machine learning models to detect suspicious financial transactions for anti-money laundering (AML) efforts using a large, real-world-inspired financial dataset. Our team focused on both traditional feature-based models and advanced graph-based deep learning techniques to capture complex transaction behaviors across accounts.
Key Contributions:
Led 6-person team for development of a Graph Isomorphism Network (GINe) using PyTorch Geometric to learn representations from transaction graphs.
Engineered edge- and node-level features such as temporal gaps, port sequences, and node centrality to improve detection accuracy.
Built a scalable pipeline for data preprocessing, feature extraction, and model training.
Conducted ablation studies and implemented weighted loss functions to address class imbalance and improve precision-recall performance.
Benchmarked performance against a XGBoost classifier using tabular features and SHAP analysis for interpretability.
Tech Stack:
Python, PyTorch Geometric, XGBoost, CatBoost, SHAP, scikit-learn