Skip to content

MehmetcanMutlu/Fraud-Detection-Analysis

Repository files navigation

IEEE-CIS Fraud Detection Project

Proje Hakkında

Bu proje, finansal işlemlerde kredi kartı dolandırıcılığını (fraud) tespit etmek amacıyla geliştirilmiştir. IEEE-CIS veri seti kullanılarak, milyonlarca işlem arasından dolandırıcıları yakalayan bir Makine Öğrenmesi modeli kurulmuştur.

Büyük ölçekli ve dengesiz (imbalanced) veri setleri üzerinde çalışılmış, Feature Engineering teknikleri ile ham veri anlamlı hale getirilmiştir.

Kaggle Performans Yolculuğu (Final)

Proje boyunca uygulanan stratejiler ile model performansı adım adım zirveye taşınmıştır. Ensemble Learning yöntemi ile Public Score'da 0.92 barajı aşılmıştır.

Versiyon Yöntem Public Score Private Score Sonuç
v1.0 Base XGBoost 0.9102 0.8528 Başlangıç
v2.0 XGBoost + Optuna 0.9061 0.8597 Stabilizasyon
v3.0 Feature Engineering 0.9155 0.8632 Zeka Katıldı
v4.0 Ensemble (XGB + LGBM) 0.9269 0.8810 ZİRVE (Final Model)

Sonuç: Farklı algoritmaların (XGBoost ve LightGBM) güçlerinin birleştirilmesi (Ensembling), modelin hata oranını ciddi ölçüde düşürmüş ve Private Score'da %2'ye yakın dev bir artış sağlamıştır.

Teknik Not: v3 sürümünde eklenen Aggregation Features (Ortalamadan sapma analizleri) ve Frequency Encoding (Sıklık analizleri) sayesinde model, dolandırıcılık kalıplarını çok daha net tespit etmiştir.

Analiz: v2 modelinde Public Score hafif düşmesine rağmen, gerçek veri setini temsil eden Private Score artmıştır. Bu durum, Optuna optimizasyonunun modeldeki ezberlemeyi (overfitting) azalttığını ve modelin gerçek hayatta daha başarılı olacağını göstermektedir.

  • Local ROC-AUC: 0.9708 (Eğitim sırasındaki validasyon skoru)

Modelin "Dolandırıcıyı" Yakalama Kriterleri (Feature Importance)

Modelimiz, işlemleri analiz ederken aşağıdaki özelliklere dikkat etmektedir. Grafikte dolandırıcılığı en çok ele veren faktörler görülmektedir:

Feature Importance Grafiği

🛠️ Kullanılan Teknolojiler ve Yöntemler

  • Python: Ana geliştirme dili
  • XGBoost: Sınıflandırma modeli
  • Pandas & NumPy: Veri işleme ve manipülasyon
  • Matplotlib & Seaborn: Veri görselleştirme
  • İleri Seviye Teknikler:
    • Data Leakage Prevention: Time-series split ve Index Slicing yöntemleri
    • Class Imbalance Handling: scale_pos_weight optimizasyonu
    • Modular Architecture: src/ klasörü altında temiz kod yapısı

Kurulum

Projeyi kendi bilgisayarınızda çalıştırmak için:

# 1. Repoyu klonlayın
git clone [https://github.com/MehmetcanMutlu/Fraud-Detection-Analysis.git](https://github.com/MehmetcanMutlu/Fraud-Detection-Analysis.git)

# 2. Gerekli kütüphaneleri yükleyin
pip install -r requirements.txt

# 3. Kaggle veri setlerini 'input' klasörüne indirin.

# 4. Modeli eğitin ve tahmin üretin
python3 submission.py

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages