Gerçek Hayat #4 - %99,83 Doğruluk, Sıfır Yakalama | Dolandırıcılık Tespiti 💳
Otonom Kafa
0:00 / 0:00
Gerçek Hayat #4 - %99,83 Doğruluk, Sıfır Yakalama | Dolandırıcılık Tespiti 💳
8 просмотров · 2 дня назад
Otonom Kafa
35 подписчиков
8 просмотров · 2 дня назад
📌 284.807 gerçek kart işlemi, bunların sadece 492'si dolandırıcılık (binde 1,7). "Hepsi temiz" diyen bir model %99,83 doğruluk alır ve tek bir dolandırıcıyı bile yakalayamaz. Doğruluğun hiçbir şey ölçmediği yerde ne yaparız?
Yeni bir algoritma yok: Lojistik Regresyon, sınıflandırma metrikleri ve SMOTE zaten rehberde vardı (1.2, 1.8, 1.9). Bu bölümde onları gerçek banka verisinde deniyoruz ve sonucu euro cinsinden ölçüyoruz.
⏱️ Bölümler:
00:00 %99,83 doğruluk, sıfır yakalama
00:42 Kesinlik ve duyarlılık; ROC-AUC tuzağı
01:22 Üç strateji: varsayılan, sınıf ağırlığı, SMOTE
02:03 Kütüphaneler ve veri
02:34 stratify neden şart?
02:56 Üç hattı kurmak
03:26 Eğitim ve euro cinsinden ölçüm
03:56 Ağırlıklandırmanın faturası
04:15 Ya sadece eşiği indirsek?
04:39 PR eğrileri
04:57 Çalıştırma
06:43 ROC-AUC neyi saklıyor?
07:28 Başa baş noktası: alarm başına 3,79 €
08:21 SMOTE gerekli miydi?
📊 Videodaki sayılar ölçümdür, 8 Ekim 2026:
Üç strateji, test kümesi 85.443 işlem / 148 dolandırıcılık:
• Varsayılan — kesinlik 0,850 · duyarlılık 0,615 · ROC-AUC 0,957 → 7.862 € kurtardı, 16 yanlış alarm
• Sınıf ağırlıklı — kesinlik 0,067 · duyarlılık 0,878 · ROC-AUC 0,968 → 14.650 € kurtardı, 1.807 yanlış alarm
• SMOTE + Lojistik — kesinlik 0,065 · duyarlılık 0,878 · ROC-AUC 0,967 → 14.650 €, 1.885 yanlış alarm
🎯 ROC-AUC neyi saklıyor? Üç modelin ROC-AUC'si 0,957 / 0,968 / 0,967 — neredeyse aynı. Oysa kesinlikleri arasında 13 kat, yanlış alarm sayıları arasında 113 kat fark var. Aynı veri, aynı tahminler; değişen tek şey hangi metriğe baktığınız. ROC-AUC bu kadar dengesiz veride iyimser görünür çünkü yanlış pozitifi 85.000 temiz işleme bölüyor.
💰 Başa baş noktası — bu kararı metrik veremez. Sınıf ağırlıklandırma ekstra 6.789 € kurtarıyor ama ekstra 1.791 yanlış alarm üretiyor. Alarm başına 3,79 €. Bir müşteriyi aramak bundan pahalıysa ağırlıklandırma zarar ettiriyor. Teknik değil, iş kararı.
⚡ SMOTE gerekli miydi? Defterde olmayan bir ölçüm daha yaptım: sınıf ağırlıklı model 0,878 duyarlılığı 1.807 yanlış alarmla alıyor. Düz modelde hiçbir şey değiştirmeden sadece eşiği 0,01'e indirince duyarlılık 0,824 oluyor ve yanlış alarm yalnızca 203. Yani %89 daha az yanlış alarmla neredeyse aynı yakalama. SMOTE da sınıf ağırlığı da aslında eşiği örtülü biçimde kaydırmaktan ibaretti.
⚠️ SMOTE'u mutlaka hat (pipeline) içinde kullanın. Testten önce uygularsanız sentetik örnekler test kümesine sızar ve skorlarınız sahte şekilde yükselir. Videoda imblearn'in Pipeline'ı bu yüzden kullanılıyor.
📓 Colab defteri: https://colab.research.google.com/dri...
📊 Veri: Credit Card Fraud Detection (ULB Machine Learning Group / Worldline). Gizlilik nedeniyle özellikler PCA ile dönüştürülmüştür.
🐍 Python · pandas · scikit-learn · imbalanced-learn
Bu seri, ML/DL rehberindeki yöntemleri gerçek veri setlerinde uyguluyor.
#MakineOgrenmesi #Python #DengesizVeri #SMOTE #DolandiricilikTespiti #LojistikRegresyon #VeriBilimi #ScikitLearn #GercekVeri #ROCAUC