Kısa Cevap
Veri sızıntısı (data leakage), test setinin model geliştirme sürecini herhangi bir biçimde etkilemesi durumudur ve raporlanan performansı yapay olarak şişirir. Medikal görüntü çalışmalarında en sık görülen biçim, aynı hastanın farklı kesit veya çekimlerinin hem train hem test setine düşmesidir; bu, hasta-düzeyi değil görüntü-düzeyi split yapıldığında ortaya çıkar ve AUC'yi tipik olarak 0.05 ile 0.25 arasında yapay yükseltir. Preprocessing'in tüm veri üzerinde yapılması (normalizasyon, feature seçimi, oversampling), zaman serisinde geleceğin geçmişe sızması ve test setinin hiperparametre seçiminde kullanılması diğer yaygın kaynaklardır. FDA ve TRIPOD-AI, sızıntısız iç validasyona ek olarak, modelin geliştirme sürecine hiç dahil olmamış bağımsız bir external/multi-site test setinde değerlendirilmesini bekler.
Serteser Danışmanlık, bir medical-AI tıbbi cihazı geliştirip hakemli uluslararası bir dergide yayınlamış bir biyomedikal mühendis (BME MSc) tarafından yürütülür; SaMD/AI cihazlarınızın TİTCK-CDSS, EU-MDR ve FDA dosyalarının çekirdeğindeki standalone klinik-validasyon çalışmasının split stratejisini ve sızıntı-denetimini tasarlar, istatistiğini yürütür ve isimli metodolog olarak imzalar.
Bir medikal AI yayınında ya da regülasyon dosyasında en sık karşılaştığım kök neden tek bir kelime: leakage. Model rapor edilen 0.95'lik AUC'yi sahada gösteremiyor, external set 0.78'e düşüyor ve ekip "popülasyon farkı" diye açıklamaya çalışıyor. Çoğu zaman fark popülasyondan değil, iç validasyonun en başında yapılmış bir split hatasından gelir.
Veri sızıntısı, hatalardan en sinsisidir çünkü kod çalışır, metrikler güzel görünür ve sorun ancak bağımsız bir veri setiyle karşılaşınca patlar. Bu yazıda hangi sızıntı biçimlerinin dosyaları batırdığını, hasta-düzeyi split'in neden pazarlık konusu olmadığını ve FDA ile TRIPOD-AI'nın bağımsız test setinden tam olarak ne beklediğini bir metodolog gözüyle anlatıyorum.
Veri Sızıntısı Tam Olarak Nedir
Sızıntı, test setine ait herhangi bir bilginin model geliştirme sürecine doğrudan veya dolaylı olarak karışmasıdır. Sonuç her zaman aynıdır: iç metrikler iyimser, dış performans hayal kırıklığı.
Pratikte üç ana kategori vardır:
- Target leakage: Tahmin edilmek istenen sonucun bir türevi feature olarak modele girer. Örneğin "ameliyat kararı" çıktısını tahmin ederken, ameliyat sonrası alınmış bir ölçümü girdi olarak kullanmak.
- Train-test contamination: Aynı hasta, görüntü, çekim ya da kopya kayıt hem eğitim hem test setinde bulunur. Medikal görüntülemede en yaygın biçim budur.
- Preprocessing leakage: Normalizasyon, ölçekleme, feature seçimi, eksik veri doldurma ya da dengeleme (SMOTE/oversampling) test seti dahil tüm veri üzerinde yapılır. Test setinin istatistiği eğitime sızar.
PROBAST-AI değerlendirmesinde bu sızıntıların büyük kısmı doğrudan "high risk of bias" olarak işaretlenir; yani sadece performansı şişirmekle kalmaz, çalışmanın kanıt değerini de düşürür.
Hasta-Düzeyi Split Neden Pazarlık Konusu Değil
Medikal veri setlerinde bir hastadan birden çok örnek gelir: aynı BT'nin onlarca kesiti, iki dizin ayrı çekimleri, takip görüntüleri, aynı patolojinin farklı projeksiyonları. Naif bir rastgele split, aynı hastanın bir kesitini train'e, komşu kesitini test'e koyar.
Model bu durumda hastalığı değil hastayı tanımayı öğrenir. Anatomi, cihaz imzası, çekim açısı ve gürültü deseni o hastaya özgüdür; test setinde aynı hasta varsa model bunları "hatırlar".
- Görüntü-düzeyi split ile hasta-düzeyi split arasındaki AUC farkı çalışmaya göre 0.05 ile 0.25 arasında değişir, ve bu fark tamamen yapaydır.
- Doğru kural: split en başta, hasta kimliği düzeyinde yapılır. Bir hastanın tüm örnekleri tek bir sete (train ya da test) gider, asla bölünmez.
- Sınıf dengesini korumak için stratified split yapılır, ancak stratifikasyon hasta düzeyinde uygulanır, görüntü düzeyinde değil.
- Çok-merkezli veride mümkünse merkez de gruplama değişkenidir; ideal kurulum, bir merkezi tamamen test için ayırmaktır (leave-one-site-out).
Bu disiplin bir kez bozulduğunda telafisi yoktur: tüm geliştirme döngüsü kirlenmiş bir test setiyle ilerlemiştir ve raporlanan her rakam şüphelidir.
Preprocessing ve Hiperparametre Sızıntısı
Train-test-split doğru yapılmış olsa bile sızıntı pipeline'ın ortasından girebilir. En sık üç senaryo:
- Global normalizasyon: Ortalama ve standart sapma tüm veri üzerinden hesaplanıp sonra split yapılır. Test setinin istatistiği eğitime karışmıştır. Doğrusu: parametreler sadece train'den öğrenilir, aynı dönüşüm test'e uygulanır.
- Feature seçimi tüm veride: Korelasyon ya da tek-değişkenli filtreyle feature seçimi split'ten önce yapılır. Test seti, hangi feature'ların tutulacağına oy vermiş olur.
- Dengeleme/augmentation test'e taşar: SMOTE veya oversampling tüm veride yapılınca, bir hastanın sentetik kopyaları hem train hem test'e düşebilir.
Hiperparametre sızıntısı ayrı bir tuzaktır: tek bir hold-out test setinde defalarca değer denenip en iyisi seçilirse, o test seti artık bir validation setine dönüşmüştür ve gerçek bir bağımsız test değildir. Doğru kurulum train / validation / test üçlüsüdür; test seti bir kez, en sonda, tek seferlik raporlama için açılır. Küçük örneklemde nested cross-validation tercih edilir, ki dış döngü performans tahminini iç döngü model seçiminden ayırır.
Validasyon kurulumunuzun hangi noktada sızdırdığını bağımsız bir gözle denetlemek için 15 dakikalık ücretsiz scoping talep edin.
FDA ve TRIPOD-AI Bağımsız Test Setinden Ne Bekler
Düzenleyici beklenti net: iç validasyon ne kadar temiz olursa olsun, modelin geliştirme sürecine hiç dokunmamış bağımsız bir veriyle test edilmesi gerekir.
- FDA AI/ML guidance ve SaMD çerçevesi: Standalone performans için, eğitim ve ayar verisinden ayrı, mümkünse coğrafi ve cihaz çeşitliliği taşıyan bir test seti beklenir. Test setinin tek seferlik, dondurulmuş (locked) olması ve model geliştirmeye geri besleme yapmaması esastır. Sürekli güncellenen modeller için PCCP (Predetermined Change Control Plan) ile değişimin nasıl yeniden valide edileceği önceden tanımlanır.
- TRIPOD-AI (2024): İç validasyon ile dış validasyonun ayrı raporlanmasını, split stratejisinin ve örneklem akışının (kaç hasta, kaç görüntü, nasıl ayrıldığı) şeffaf verilmesini ister. Sadece discrimination (AUC) değil, kalibrasyon da raporlanır.
- PROBAST-AI: Sızıntı barındıran ya da split stratejisi belirsiz çalışmaları bias açısından yüksek riskli sayar; bu, dosyada doğrudan zayıflık olarak okunur.
- EU MDR / MEDDEV 2.7/1 Rev 4: Klinik değerlendirmede performansın temsili bir popülasyonda, geliştirme verisinden bağımsız gösterilmesi beklenir; aynı mantık external validation ile örtüşür.
Bağımsız test seti, FDA için bir formalite değil, modelin gerçek dünya genellenebilirliğinin tek kanıtıdır. İç metrikler ne kadar yüksekse, dış doğrulama da o kadar kritik hale gelir.
Sık Yapılan Hatalar
- Görüntü-düzeyi rastgele split: Aynı hastanın kesitleri train ve test'e dağılır. En yaygın ve en pahalı hata; tüm metrikleri geçersiz kılar.
- Test setini hiperparametre ayarında kullanmak: Tek hold-out sette onlarca konfigürasyon denenir; test seti gizlice validation setine döner, raporlanan performans iyimser olur.
- Preprocessing'i split'ten önce yapmak: Normalizasyon, feature seçimi ve oversampling tüm veride uygulanır; test istatistiği eğitime sızar.
- External validation'ı atlamak: Sadece iç hold-out ile yayın çıkarmak ya da dosya açmak; modelin tek bir merkezde, tek cihazda öğrendiği imzalarla şişmiş olabileceği hiç test edilmez.
İlgili Yazılar
- SaMD Klinik Validasyon Çalışması Nasıl Tasarlanır
- TRIPOD-AI ve PROBAST-AI: Yapay Zeka Tanı Modeli Raporlama
- MRMC Çoklu Okuyucu Çalışması: Yapay Zeka Tanı Validasyonu
Veri sızıntısı kod hatası değil, metodoloji hatasıdır; çoğu zaman pipeline yazılmadan önce, split stratejisi kâğıt üzerinde kararlaştırılırken önlenir ya da gömülür. Bağımsız bir metodolog, split stratejinizi ve sızıntı yüzeylerinizi dosya açılmadan önce denetlerse, hem yayın hem regülasyon riskini en ucuz noktada kapatmış olursunuz. Kapsam, süre ve bütçe her dosyada farklıdır; bunları ücretsiz scoping görüşmesinde netleştiririz.