Katman VIII · Performans, Genelleme & Validasyon · 22 / 23
Cross-Validation & Model Seçim Çerçevesi
bu bölümün sorusu
Tek bir train/test bölmesi bir sayı verir; o sayı kullandığımız rastgele tohumla değişir. Cross-validation daha güvenilir bir tahmin üretir — ama kredi verisi için hangi yöntem, neden doğrudur?

tek bölme neden yetersiz: varyans ve kontaminasyon riski

Veriyi bir kez rastgele ikiye böldüğümüzde, test performansı o bölmenin şansına bağlı olur. İyi bir örneklem çekersek iyi görünür, kötü örneklem çekersek kötü. Cross-validation, bu bölmeyi birden fazla kez tekrarlayarak ortalamanın varyansını düşürür ve daha güvenilir performans tahmini verir.

Ama kredi verisi için daha büyük bir sorun var: zamansal kontaminasyon. Veriyi rastgele böldüğünüzde, test grubundaki Ocak 2019 gözlemi, eğitim grubundaki Ocak 2021 gözlemiyle komşu olabilir. Model gelecekten beslenerek öğrenir — look-ahead bias'ın CV versiyonu. Zamansal veriler için walk-forward (ilerleyen pencere) tek geçerli yöntemdir.

Standart k-fold, verilerin bağımsız ve özdeş dağılımdan (i.i.d.) geldiğini varsayar. Kredi verisi temporal olarak bağımlıdır — bu varsayım ihlal edilir. Yanlış CV yöntemi, aşırı iyimser performans tahmini üretir.

artifact — walk-forward validasyon görselleştirici

60 aylık (2019–2023) kredi verisi. Rastgele k-fold modunda: her satırda test ayları (coral) eğitim aylarına (teal) karışmış — gelecek bilgisi eğitime sızıyor. Walk-Forward modunda: her iterasyonda eğitim her zaman testten önce — zamansal bütünlük korunuyor.

interactive — validasyon pencere görselleştirici
katman VIII · bölüm 22
Yöntem
Walk-Forward
zamansal bütünlük korunuyor
Eğitim Pencereleri
5 iter.
genişleyen pencere
OOT Holdout
6 ay
son dönem, hiç kullanılmadı
Kontaminasyon
0 ay
gelecek → geçmiş sızma
Walk-forward validasyon, eğitim penceresini her iterasyonda genişleterek gerçek deployment senaryosunu taklit eder: her dönem, geçmişin tamamı kullanılarak model kurulur ve bir sonraki dönem test edilir. Sonuçların ortalaması, OOT performansının önyargısız bir tahminidir.

CV türleri ve doğru kullanım alanları

YöntemNasıl ÇalışırDoğru DurumBankacılık
Standart k-fold Veri k parçaya rastgele bölünür, her parça sırayla test olur i.i.d. veri, sınıf dengesi önemli değil Uygun değil — temporal bağımlılık ihlali
Stratified k-fold Her fold'da sınıf dağılımı (default oranı) korunur Dengesiz sınıf, i.i.d. veri Sınırlı — temporal sorun çözülmez
Walk-Forward Her iterasyonda eğitim ← test, zaman sıralı Temporal bağımlı, zaman serisi verisi Doğru tercih — IRB/IFRS9 tutarlı
Nested CV Dış döngü: performans. İç döngü: hiperparametre Model seçimi + hiperparametre optimizasyonu birlikte En sağlam; temporal nested CV ideal

Nested CV neden önemli? Hiperparametreyi (örn. ağaç derinliği) CV sonucuna bakarak seçip aynı CV fold'larıyla performansı raporlamak, test setinin dolaylı olarak eğitime sızmasıdır. Dış fold (performans), iç fold'lardan (parametre seçimi) tamamen izole olmalıdır.

IRB bağlantısı: EBA ve BDDK kılavuzları, modelin validasyonunun eğitime dahil olmayan veri üzerinde yapılmasını şart koşar. Walk-forward nested CV bu gereksinimi matematiksel olarak en temiz şekilde karşılar. OOT validasyonu tek bir walk-forward iterasyonunun özel halidir — farkı yalnızca ölçekte.

tipik hata

Yaygın yanılgı: "5-fold CV AUC=0.84 çıktı, modeli deploy edebiliriz." Standart 5-fold CV, kredi verisinde temporal kontaminasyon içerir. Hiperparametreyi CV'ye bakarak seçtiyseniz, rapor ettiğiniz AUC sistematik olarak yüksektir. Doğru adım sırası: walk-forward nested CV ile model seçimi → ayrı, dokunulmamış OOT seti üzerinde final değerlendirme.

İkinci yanılgı: OOT seti performansını "geliştirmek" için geri dönmek. OOT veri seti model geliştirme kararlarına girdiği an, artık test seti değildir. Tek kullanımlık validation seti "bak ne kadar iyi" için değil, "gerçekten ne kadar iyi" için vardır.

Katman VIII'in son bölümü: PSI ve popülasyon stabilitesi — modelin zamanla nasıl izleneceği.
Sıradaki bölüm · Katman VIII · 23
PSI, Popülasyon Stabilitesi & Drift