İçeriğe geç
CoreXAlpha
Makine Öğrenmesi

Model sapması: sistem çökmez, sessizce yanılmaya başlar

Makine öğrenmesi modelleri arıza vermez; yavaşça haksızlaşır. Sapmayı erken yakalamak için kurduğumuz izleme düzenini ve seçtiğimiz eşikleri anlatıyoruz.

Burak YalçınKıdemli Veri Bilimci3 dk okuma

Bir web servisi bozulduğunda 500 döner ve birileri uyanır. Bir makine öğrenmesi modeli bozulduğunda hiçbir şey olmaz. Servis ayakta kalır, gecikme normaldir, hata oranı sıfırdır. Sadece tahminler yavaş yavaş yanlışlaşır.

Bu sessizlik, model sapmasını üretimdeki en pahalı sorunlardan biri yapar.

Üç farklı sapma, üç farklı önlem

"Sapma" tek bir olgu değil. Ayırmadığınızda yanlış yere alarm kurarsınız.

Girdi sapması (covariate shift). Modelin gördüğü verinin dağılımı değişir. Yeni bir müşteri segmenti gelir, bir kampanya trafiği değiştirir, bir sensör kalibrasyonu kayar. Model aynı kuralı uygular ama artık farklı bir dünyaya uygular.

Etiket sapması (prior shift). Hedef değişkenin dağılımı değişir. Dolandırıcılık oranı mevsimsel olarak artar; model, eğitildiği taban orana göre fazla iyimser kalır.

Kavram sapması (concept drift). Girdi ile çıktı arasındaki ilişki değişir. Bu en kötüsüdür, çünkü girdi dağılımı hiç değişmeden gerçekleşebilir. Dolandırıcılar yöntem değiştirir; aynı özellikler artık başka bir şey anlatır.

Neyi ölçüyoruz

Etiketler genellikle gecikmeli gelir — bir kredinin geri ödenip ödenmediğini aylar sonra öğrenirsiniz. Bu yüzden izlemeyi iki katmana ayırıyoruz.

Anında ölçülebilenler (etiket gerekmez):

  • Her özellik için dağılım mesafesi (PSI veya Jensen-Shannon)
  • Tahmin skorlarının dağılımı
  • Eksik değer oranı ve aralık dışı değer sayısı
  • Özellikler arası korelasyon matrisindeki kayma

Gecikmeli ölçülenler (etiket gerektirir):

  • Doğruluk, kesinlik, duyarlılık — segment bazında
  • Kalibrasyon eğrisi
  • Segmentler arası performans farkı

İkinci grup asıl gerçeği söyler ama geç söyler. Birinci grup erken uyarır ama yanlış alarm üretebilir. İkisine birden ihtiyaç var.

Eşikleri nasıl seçiyoruz

Literatürdeki "PSI > 0,2 ise sapma var" gibi genel kurallar başlangıç noktasıdır, karar kuralı değil. Bizim yaklaşımımız:

  1. Modeli üretime aldıktan sonra dört hafta boyunca ölçüm topla, hiçbir alarm kurma.
  2. Bu dönemin dağılımından her metrik için 95. ve 99. yüzdelikleri çıkar.
    1. yüzdeliği "incele" eşiği, 99. yüzdeliği "müdahale et" eşiği yap.
  3. Her çeyrekte taban çizgisini yeniden hesapla.

Bu, mevsimselliği olan alanlarda genel eşiklerden çok daha az yanlış alarm üretiyor.

def drift_thresholds(baseline: pd.Series) -> tuple[float, float]:
    """Gözlemlenen taban dağılımdan incele/müdahale eşiklerini çıkarır."""
    return baseline.quantile(0.95), baseline.quantile(0.99)

Alarm çaldığında ne oluyor

Bir alarmın karşılığı bir çalışma kitabı değilse, o alarm zamanla susturulur. Bizim akışımız şu:

  1. Doğrula. Sapma gerçek mi, yoksa veri hattındaki bir aksaklık mı? Çoğu ilk alarm ikincisidir.
  2. Kapsamı belirle. Tüm trafik mi, belirli bir segment mi?
  3. Etkiyi ölç. Sapma iş metriğine yansımış mı? Bazı sapmalar zararsızdır.
  4. Karar ver. Yeniden eğit, özellik ekle, eşik ayarla veya kabul et ve belgele.

Dördüncü seçenek çoğu ekipte eksiktir. "Sapma var ama etkisi yok, kabul ediyoruz" da geçerli bir karardır — yeter ki yazılı olsun.

Yeniden eğitim: otomatik mi, elle mi?

Otomatik yeniden eğitim cazip görünür ama bir riski vardır: bozulmuş veriyle eğitilen model, sapmayı düzeltmek yerine pekiştirir.

Uyguladığımız orta yol:

  • Yeniden eğitim otomatik tetiklenir, ancak bir aday model üretir; canlıya almaz.
  • Aday model, sabit bir doğrulama seti ve son dönem verisi üzerinde mevcut modelle karşılaştırılır.
  • Her iki sette de daha iyiyse, gölge modda trafiğin %5'ine açılır.
  • İki gün boyunca sorun yoksa kademeli olarak devralır.

Bu döngü bir müşterimizde ortalama model tazeleme süresini altı haftadan dört güne indirdi; ve bu süre boyunca tek bir geri alma gerekmedi.

Özet

Model izleme, gösterge paneli kurmak değildir. Şu üç şeyi yazılı hale getirmektir:

  • Hangi metrik, hangi eşikte, kimi uyarır?
  • Uyarı gelince ilk üç adım nedir?
  • Yeniden eğitilen model canlıya hangi kanıtla çıkar?

Bu üçü yoksa panel, kimsenin bakmadığı bir grafik kalabalığına dönüşür.

  • MLOps
  • İzleme
  • Model Sapması
  • Üretim
Tüm yazılar

İlgili yazılar

Geleceği birlikte inşa edelim

Fikriniz ne olursa olsun, onu gerçeğe dönüştürecek teknolojiye ve ekibe sahibiz. Bir saatlik ücretsiz keşif görüşmesiyle başlayalım.