İçeriğe geç
parazade
Yapay Zeka

Veri Sızıntısı Nedir?

İngilizce: Data Leakage

Yayın: · Son güncelleme:

Veri Sızıntısı Nedir? Kısaca

Makine öğrenmesinde veri sızıntısı (data leakage), tahmin anında erişilemeyecek bir bilginin ya da test verisinin eğitim sürecine karışmasıdır. Model testte çok başarılı görünür, gerçek kullanımda ise beklenenden kötü sonuç verir.

Veri Sızıntısı nedir?
İçindekiler
  1. Veri sızıntısı nedir?
  2. Örnek
  3. Nasıl önlenir?

Veri sızıntısı, makine öğrenmesinde modelin eğitim sırasında "kopya çekmesi" gibidir. Model, gerçek hayatta tahmin yaparken elinde olmayacak bir bilgiye eğitimde erişir ve bu yüzden değerlendirme sonuçları gerçeği yansıtmaz.

Not: Günlük dilde "veri sızıntısı" ifadesi, gizli bilgilerin yetkisiz kişilere ulaşması anlamında da kullanılır. Bu madde, makine öğrenmesindeki anlamını ele alır.

Veri sızıntısı nedir?

İki yaygın türü vardır:

  • Hedef sızıntısı: Hedef değişkenle doğrudan ilişkili, ama tahmin anında bilinmeyen bir özellik modele verilir. Örneğin kredi geri ödemesini tahmin eden bir modelde "icra takibi başlatıldı mı?" bilgisinin kullanılması. Bu bilgi zaten sonucun kendisidir.
  • Eğitim-test sızıntısı: Test verisi bir şekilde eğitime karışır. Örneğin normalizasyon ya da eksik veri doldurma için tüm veri setinin istatistikleri kullanılır, sonra veri bölünür.

Örnek

Varsayımsal bir hastane veri setinde, bir hastalığı tahmin etmek için "tedavi için verilen ilaç" sütunu kullanılırsa model neredeyse kusursuz doğruluk gösterir. Oysa bu ilaç ancak teşhisten sonra verilir; yeni bir hasta için tahmin yaparken bu bilgi yoktur.

Nasıl önlenir?

  1. Veriyi en başta eğitim seti ve test seti olarak ayır, tüm ön işleme adımlarını yalnız eğitim setinden öğren.
  2. Her özellik için "tahmin anında bu bilgi elimde olacak mı?" diye sor.
  3. Zaman serilerinde rastgele değil, kronolojik bölme yap.
  4. Şüpheli derecede yüksek başarıyı alarm işareti say.

Çapraz doğrulama yaparken de ön işleme her katın içinde ayrı uygulanmalıdır.

Sıkça Sorulan Sorular

Veri sızıntısı nasıl fark edilir?

Gerçekçi olmayacak kadar yüksek test başarısı ilk işarettir. Modelin en çok önem verdiği özellikleri incelemek ve canlı ortam performansını testle karşılaştırmak da sızıntıyı ortaya çıkarır.

Veri sızıntısı ile veri ihlali aynı şey mi?

Değil. Veri ihlali, gizli bilgilerin yetkisiz kişilerin eline geçmesidir. Makine öğrenmesindeki veri sızıntısı ise bir modelleme hatasıdır ve modelin başarısını yapay olarak şişirir.

İlgili terimler

Çapraz Doğrulama(Cross-Validation)Çapraz doğrulama (cross-validation), veri setini birkaç parçaya bölüp modeli her seferinde farklı bir parçayı test için ayırarak tekrar tekrar eğiten ve sonuçların ortalamasıyla modelin yeni verilerdeki başarısını daha güvenilir ölçen yöntemdir.Eğitim Seti(Training Set)Eğitim seti (training set), bir veri setinin makine öğrenmesi modelinin parametrelerini ayarlamak, yani örüntüleri öğrenmek için kullanılan bölümüdür. Modelin başarısı ise eğitimde görmediği doğrulama ve test verileriyle ölçülür.Doğrulama Seti(Validation Set)Doğrulama seti (validation set), makine öğrenmesinde modelin eğitim sırasında görmediği, hiperparametreleri ayarlamak, farklı modelleri karşılaştırmak ve eğitimin ne zaman durdurulacağına karar vermek için kullanılan veri bölümüdür.Aşırı Öğrenme(Overfitting)Aşırı öğrenme (overfitting), bir modelin eğitim verisindeki genel kalıplar yerine gürültü ve ayrıntıları ezberlemesi sonucu eğitimde çok başarılı, yeni verilerde ise zayıf sonuç vermesidir.Özellik(Feature)Özellik (feature), makine öğrenmesinde her bir örneği tanımlayan ve modelin tahmin yaparken girdi olarak kullandığı ölçülebilir nitelik ya da değişkendir. Örneğin ev fiyatı tahmininde metrekare, oda sayısı ve konum birer özelliktir.Eksik Veri Doldurma(Data Imputation)Eksik veri doldurma (imputation), bir veri setindeki boş değerlerin ortalama, medyan, en sık değer ya da istatistiksel ve makine öğrenmesi modelleriyle tahmin edilen değerlerle tamamlanmasıdır. Amaç, veri kaybını azaltırken yanlılık yaratmamaktır.