XGBoost ๊ธฐ๋ฐ์ Imbalanced Data ์ต์ ํ๋ก Fraud Recall 87% ๋ฌ์ฑ
๐ก๏ธ Building FraudShield: Credit Card Fraud Detection with Imbalanced Data
AI ์์ฝ
Context
์ ์ฒด ํธ๋์ญ์ ์ค 0.17%์ ๋ถ๊ณผํ ๊ทน์์ Fraud ๋ฐ์ดํฐ๋ก ์ธํ ๋ฐ์ดํฐ ๋ถ๊ท ํ ๋ฌธ์ ๋ฐ์. ๋จ์ Accuracy ์งํ ์ฌ์ฉ ์ 99.8%์ ๊ฐ์ง ์ฑ๋ฅ ์์น๊ฐ ๋์ถ๋์ด ์ค์ ํ์ง ์ฑ๋ฅ์ ์๊ณกํ๋ ํ๊ณ ์กด์ฌ.
Technical Solution
- PCA ๋ณํ๋ ์ต๋ช ํ ํผ์ฒ๋ฅผ ํ์ฉํ ํจํด ํ์ต ๊ธฐ๋ฐ์ ๋ถ๋ฅ ์ฒด๊ณ ์ค๊ณ
- Imbalanced Data ํด๊ฒฐ์ ์ํด XGBoost์ scale_pos_weight ํ๋ผ๋ฏธํฐ๋ฅผ ํตํ ๊ฐ์ค์น ์กฐ์
- ์ ๋ฐํ ๋ชจ๋ธ ํ๊ฐ๋ฅผ ์ํด Accuracy๋ฅผ ๋ฐฐ์ ํ๊ณ Precision, Recall, F1 Score ์ค์ฌ์ Metric ์ฒด๊ณ ๋์
- Label ๊ธฐ๋ฐ์ Supervised Learning๊ณผ Anomaly Detection ๋ฐฉ์์ Isolation Forest ์ฑ๋ฅ ๋์กฐ ๋ถ์
- SHAP ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ๋์ ํ์ฌ ๋ธ๋๋ฐ์ค ๋ชจ๋ธ์ ์์ฌ๊ฒฐ์ ๊ณผ์ ์ ๋ํ Explainability ํ๋ณด
- Streamlit ๊ธฐ๋ฐ์ ๋์๋ณด๋ ๊ตฌํ์ ํตํ ์ค์๊ฐ ์์ธก ๋ฐ ๋ฆฌ์คํฌ ๋ ๋ฒจ ๊ฐ์ํ
Impact
- XGBoost ๋ชจ๋ธ ์ ์ฉ์ ํตํด Recall 0.87, Precision 0.71, F1 Score 0.78 ๋ฌ์ฑ
- Unsupervised ๋ฐฉ์(Isolation Forest) ๋๋น F1 Score ์ฝ 2.6๋ฐฐ ์ฑ๋ฅ ํฅ์ ํ์ธ
Key Takeaway
ํฌ์ ๋ฐ์ดํฐ์ ํ๊ฒฝ์์๋ ๋จ์ ์ ํ๋๊ฐ ์๋ Recall ์ค์ฌ์ ํ๊ฐ ์งํ ์ค๊ณ๊ฐ ํ์์ ์ด๋ฉฐ, Label ๋ฐ์ดํฐ ์กด์ฌ ์ Anomaly Detection๋ณด๋ค Supervised Learning์ ์ฑ๋ฅ ์ฐ์๊ฐ ๋๋ ทํจ.
์ค์ฒ ํฌ์ธํธ
1. ๋ฐ์ดํฐ ๋ถ๊ท ํ ์ฌํ ์ scale_pos_weight ๋ฑ ํด๋์ค ๊ฐ์ค์น ์กฐ์ ํ๋ผ๋ฏธํฐ ๊ฒํ
2. ๋ถ๋ฅ ์๊ณ์น ์ค์ ์ Precision-Recall Trade-off ๋ถ์์ ํตํ ์ต์ ์ง์ ๋์ถ
3. ๋ชจ๋ธ์ ์ ๋ขฐ์ฑ ํ๋ณด๋ฅผ ์ํด SHAP ๋ฑ XAI(Explainable AI) ๋๊ตฌ ๋์ ๊ฒํ