Atlas’ta ara

Keşfetmeye buradan başla

Öğren/Metrikler

Doğruluk yetmez: kesinlik, yakalama ve nadir olaylar

“%99 doğruluk” iyi bir sonuç mu? Karışıklık matrisi, kesinlik, yakalama, F1 ve eşik ayarı; nadir bir olayda iyi bir testin bile neden çoğunlukla yanlış alarm verdiğini kendi sayılarınla gör.

ÖN BİLGİ

Bu yazıyı rahat izlemek için şunlara önce bakmış olman iyi olur:

01Dört kutu: karışıklık matrisi#

Bir sınıflandırıcı (spam filtresi, bir güvenlik denetleyicisi, bir hastalık testi) her örnek için “pozitif” ya da “negatif” der. Gerçeğe karşı bu kararlar dört kutudan birine düşer:

Model “pozitif” dediModel “negatif” dedi
Gerçekte pozitifDoğru pozitif (TP)Kaçan (FN)
Gerçekte negatifYanlış alarm (FP)Doğru negatif (TN)

Bu tabloya karışıklık matrisi denir. Aşağıdaki bütün ölçütler, bu dört sayıdan türetilir. Hangi hatanın daha pahalı olduğu duruma göre değişir: spam filtresinde yanlış alarm (önemli bir e-postanın çöpe gitmesi) pahalıdır; ciddi bir hastalığın taramasında kaçan vaka pahalıdır.

02Dört soru, dört sayı#

ÖlçütFormülCevapladığı soru
Doğruluk(TP + TN) / hepsiGenel olarak kaç kararım doğruydu?
Kesinlik (precision)TP / (TP + FP)“Pozitif” dediklerimin kaçı gerçekten pozitif?
Yakalama (recall, duyarlılık)TP / (TP + FN)Gerçek pozitiflerin kaçını yakaladım?
ÖzgüllükTN / (TN + FP)Gerçek negatiflerin kaçını rahat bıraktım?

F1, kesinlik ile yakalamanın harmonik ortalamasıdır; ikisinden biri çok düşükse F1 de düşük kalır. Tek bir sayıya ihtiyaç duyulduğunda kullanılır, ama hangi hatanın pahalı olduğunu saklar.

03Nadir olay tuzağı#

Bir hastalık her 100 kişiden 1’inde var. Testin yüzde 99 duyarlılığı (hastaların %99’unu yakalar) ve yüzde 95 özgüllüğü var: sağlam kişilerin %95’i doğru biçimde negatif çıkıyor. Bu iyi bir test. Peki testin pozitif çıktığında hasta olma olasılığın nedir? Aşağıdan kendi değerlerini dene.

01

Test pozitif çıktı: gerçekten hasta mısın?

Hesaplanan · temsili girdiler

Hastalığın görülme oranını düşür ve testin özelliklerini yüksek tut. Pozitif çıkanların kaçı gerçekten hasta?

Test pozitifTest negatif
Gerçekten hasta991
Sağlam4959.405

■ gerçekten hasta ■ yanlış alarm (pozitif çıkan 594 kişi)

POZİTİF ÇIKANLARIN GERÇEKTEN HASTA OLMA ORANI (KESİNLİK)%16,7
DOĞRULUK · “HEP SAĞLAM” DEYEN MODELİN DOĞRULUĞU%95,0 · %99,0
10.000 kişilik varsayımsal bir topluluk ve uydurulmuş test özellikleri. Sayılar, olasılıkların beklenen değerleriyle hesaplanır (rastgelelik yoktur); küsuratlı kişi sayıları gösterimde yuvarlanır. Bu gerçek bir tıbbi test değildir.

10.000 kişide 100 hasta var. Test 99’unu yakalar; 9.900 sağlam kişinin %5’i, yani 495’i yanlış alarm verir. Pozitif çıkan 594 kişiden yalnızca 99’u hastadır: kesinlik %16,7. Yani “iyi test”te pozitif çıkan altı kişiden beşi sağlamdır. Bu bir hata değil, sınıf payının (taban oranı) sonucudur: sağlam kişiler o kadar çok ki, küçük bir yanlış alarm oranı bile hastaları sayıca geçer.

Bu hesabın arkasındaki kural Bayes kuralıdır; önsel, kanıt ve sonsal arasındaki ilişkiyi Bayes yazısında küçük bir spam filtresiyle adım adım izleyebilirsin.

Bir de doğruluk paradoksu var. Bu testin doğruluğu %95,0. Ama herkese “sağlam” diyen, hiçbir şey öğrenmemiş bir model %99 doğruluğa ulaşır. Nadir olaylarda doğruluk, modelin işe yarayıp yaramadığını göstermez.

Gigerenzer ve arkadaşları, doktorların ve hastaların olasılık ifadelerini sık yanlış yorumladığını, bu tür hesapların “yüz kişiden kaçı” gibi doğal sıklıklarla sunulduğunda daha kolay anlaşıldığını savunur; yazarlar toplumun istatistiksel okuryazarlık eksikliğini ele alır. Helping Doctors and Patients Make Sense of Health Statistics ↗ (Doğal sıklıkların her bağlamda en iyi sunum olup olmadığı sonraki çalışmalarda tartışılmıştır.) Aynı hesabı bin kişilik bir örnekte, öğretim için kurulmuş sayılarla yap: 10 hasta, %80 duyarlılık, %9,6 yanlış alarm oranı. Yaklaşık 8 hasta yakalanır, yaklaşık 95 sağlam kişi yanlış alarm verir; pozitif çıkan 103 kişiden yalnızca 8’i hastadır (%7,8).

04Eşik: yakalama ile kesinliği takas et#

Pek çok model bir skor üretir; “pozitif” demek için bir eşik seçilir. Eşiği düşürürsen daha çok şey pozitif sayılır: yakalama artar, ama yanlış alarm da artar. Eşiği yükseltirsen tersi olur. Aşağıda iki sınıfın skorları (sağlamlar kahverengi, hastalar yeşil) iki çan eğrisi olarak çizilmiş.

02

Eşiği kaydır: yakalama mı, doğruluk mu?

Hesaplanan · temsili girdiler

Eşiği sağa kaydır: yanlış alarm azalır ama bazı pozitifler kaçar. Pozitif sınıfı seyrekleştirdikçe kesinliğin neden çöktüğüne bak.

kırmızı: sağlam · mavi: hasta (yükseklik sınıf payına göre)skor00,250,500,751−1012345değereşikKesinlikYakalama (recall)F1
KESİNLİK · YAKALAMA · F1%22 · %84 · %35
DOĞRULUK · “HEP NEGATİF” DEYEN MODEL%84 · %95

Yanlış alarm oranı (FPR) %15,9, yakalama oranı (TPR) %84,1: bu ikisi sınıf payı değişince değişmez. Kesinlik ise sınıf payına bağlıdır; bu yüzden nadir olaylarda ROC eğrisi iyi görünürken kesinlik düşük kalabilir.

Negatiflerin skoru N(0, 1), pozitiflerin skoru N(ayrım, 1) dağılımından gelir; eşiğin üstündeki her şey “pozitif” sayılır. Oranlar normal dağılımın kapalı formülüyle hesaplanır (rastgelelik yoktur); 10.000 kişilik topluluk için beklenen değerlerdir. Gerçek bir sınıflandırıcının skorları bu kadar düzgün dağılmaz.

Ayrım 2,0 ve pozitif payı %5 iken eşik 1’de yakalama %84,1, yanlış alarm oranı %15,9; ama kesinlik yalnızca %21,8. Eşiği 2’ye çıkardığında yakalama %50,0’a düşer, kesinlik %53,6’ya çıkar. F1’i en çok artıran eşik, bu kurulumda yaklaşık 1,9’dur (F1 %51,8). Aynı eşikte pozitif payını %1’e indirirsen yakalama ve yanlış alarm oranı hiç değişmez, ama kesinlik %5,1’e iner.

Saito ve Rehmsmeier’in belirttiği gibi, sınıfların çok dengesiz olduğu verilerde ROC eğrisi (yakalama–yanlış alarm oranı) iyimser görünebilir; çünkü özgüllüğü yanlış okumak kolaydır. Kesinlik–yakalama eğrisi ise pozitif denen şeylerin ne kadarının doğru olduğunu doğrudan ölçer. The Precision-Recall Plot Is More Informative than the ROC Plot… ↗

05Yapay zekâ haberlerinde bu nerede çıkar?#

  • Güvenlik ve içerik filtreleri. “Zararlı içeriği %99 doğrulukla yakalıyor” cümlesi, zararlı içeriğin payını söylemeden anlamsızdır.
  • Halüsinasyon dedektörleri. Bir araç “yanlış cümleleri işaretliyor” diyorsa kesinlik (işaretlenenlerin kaçı gerçekten yanlış?) ve yakalama (yanlışların kaçı işaretlendi?) ayrı ayrı sorulmalıdır.
  • RAG ve arama. Getirilen belgelerin ne kadarı ilgili (kesinlik) ve ilgili belgelerin ne kadarı getirildi (yakalama) ayrı iki iyileştirme hedefidir (RAG notu).
  • Kıyaslama puanları. Bir skorun hangi ölçütle hesaplandığı, o skorun ne anlama geldiğini belirler (değerlendirme yazısı).

Ölçülen şey bazen çok iyi olsa bile model yine yanılır: Bir model ne zaman yanılır?

KENDİNİ SINA

Bu yazıyı bitirdiğinde:

  • Karışıklık matrisinin dört kutusunu ve doğruluk, kesinlik, yakalama farkını anlatabilirsin.
  • Nadir bir olayda iyi bir testin neden çoğunlukla yanlış alarm verdiğini sayılarla açıklayabilirsin.
  • Eşiğin yakalama ile kesinlik arasında nasıl takas yaptığını ve “hep negatif” modelin doğruluk paradoksunu söyleyebilirsin.

Cümlelerden birini kendi sözlerinle anlatamıyorsan, ilgili bölüme dön ve demoyu yeniden dene.

İlerleme yalnızca bu tarayıcıda saklanır.
BAĞLANTILI KAVRAMLAR

Bir fikri diğerine bağla.

Rotanı gör: sıradaki adım ne? Bütün dersler