Phát hiện gian lận tài chính là bài toán phải đối mặt với sự mất cân bằng dữ liệu cực đoan, trong đó các giao dịch gian lận thông thường chỉ chiếm chưa tới $2\%$ tổng lưu lượng giao dịch thực tế. Các phương pháp oversampling cổ điển như SMOTE dễ làm méo mó các phân phối đa phương thức phức tạp giữa các thuộc tính liên tục và phân loại.
Dự án này triển khai một hệ thống Deep Active Learning hoàn chỉnh được đánh giá nghiêm ngặt trên tập dữ liệu chuẩn quy mô lớn IEEE-CIS Fraud Detection.
Kiến trúc Hệ thống
flowchart LR
Raw[Dữ liệu Bảng Mất cân bằng] --> GAN[Conditional WGAN-GP]
GAN --> Synthetic[Tập mẫu Gian lận Giả lập]
Synthetic --> RL[Tác tử Học tăng cường PPO]
RL -->|Hàm thưởng: Delta AUC-PR| Decision{Chấp nhận / Loại bỏ}
Decision --> Balanced[Tập Huấn luyện Mở rộng Tối ưu]
Balanced --> XGB[Mô hình Phân loại XGBoost]
1. Conditional WGAN-GP (Bộ sinh dữ liệu)
- Ứng dụng Wasserstein GAN with Gradient Penalty (WGAN-GP) đảm bảo tính liên tục 1-Lipschitz và ngăn chặn hiện tượng sụp đổ mode (mode collapse) trên dữ liệu bảng.
- Xử lý các đặc trưng dạng phân loại (categorical) thông qua cơ chế Gumbel-Softmax có điều chỉnh nhiệt độ, cho phép lan truyền gradient ngược qua discriminator trong khi vẫn giữ nguyên tính chất rời rạc của các trường dữ liệu.
2. Lọc mẫu bằng Học tăng cường (PPO Filter)
- Thay vì bổ sung toàn bộ mẫu sinh giả lập một cách máy móc, tác tử Proximal Policy Optimization (PPO) đánh giá tuần tự từng batch mẫu tổng hợp.
- Môi trường Gymnasium tùy biến tính toán hàm thưởng theo độ tăng hiệu năng biên (marginal performance reward):
- Mạng chính sách (policy network) học cách chủ động loại bỏ các mẫu ngoại lai (hallucinations) và nhiễu tại vùng ranh giới quyết định.
3. Bộ phân loại Gradient Boosted (XGBoost)
- Đóng vai trò là công cụ phân loại chính nhờ khả năng chống chịu tốt trước hiện tượng dịch chuyển khái niệm (temporal concept drift) theo thời gian trong luồng giao dịch.
Kết quả Thực nghiệm (Temporal Holdout Test)
Đánh giá theo phân chia thời gian thực nghiêm ngặt (Huấn luyện: Tháng 1–5, Kiểm thử: Tháng 6):
| Chiến lược Thực thi | n_train | n_fraud (train) | AUC-PR | AUC-ROC | F1-Score | Recall @ FPR=0.1% |
|---|---|---|---|---|---|---|
| XGBoost Thuần (Baseline) | 500,071 | 14,615 | 0.5834 | 0.8912 | 0.5317 | 0.6234 |
| SMOTE Oversampling | 971,541 | 486,085 | 0.6112 | 0.8958 | 0.5589 | 0.6501 |
| WGAN-GP Thuần | 614,615 | 128,959 | 0.6389 | 0.9021 | 0.5872 | 0.6743 |
| WGAN-GP + Lọc mẫu RL | 534,261 | 48,605 | 0.6721 | 0.9087 | 0.6143 | 0.7089 |