Sınıflandırıcıyı değerlendirirken hata metriği nasıl seçilir?


15

Kaggle yarışmalarında kullanılan farklı hata metriklerini gördüm: RMS, ortalama kare, AUC ve diğerleri. Bir hata metriği seçmenin genel kuralı nedir, yani belirli bir sorun için hangi hata metriğinin kullanılacağını nasıl bilebilirsiniz? Herhangi bir yönerge var mı?

Yanıtlar:


12

Seçebileceğiniz hata metrikleri havuzu, sınıflandırma ve regresyon arasında farklıdır. İkincisinde sürekli bir değer tahmin etmeye çalışırsınız ve sınıflandırma ile "sağlıklı" veya "sağlıklı değil" gibi ayrık sınıfları tahmin edersiniz. Bahsettiğiniz örneklerden, kök ortalama kare hatası regresyon için ve AUC iki sınıfla sınıflandırma için uygulanabilir olacaktır.

Size sınıflandırma hakkında biraz daha ayrıntı vereyim. AUC'yi ROC eğrisinin altındaki alan olan bir ölçü olarak söyledinizGenellikle iki sınıflı ikili sınıflandırma problemlerine uygulanır. İkiden fazla sınıf için bir ROC eğrisi oluşturmanın yolları olsa da, iki sınıf için ROC eğrisinin basitliğini kaybederler. Ek olarak, ROC eğrileri sadece seçim sınıflandırıcısı her bir tahminle ilişkili bir tür puan çıkarırsa oluşturulabilir. Örneğin, lojistik regresyon size her iki sınıf için olasılıklar verecektir. Basitliklerine ek olarak, ROC eğrileri, veri kümelerinizdeki pozitif ve negatif olarak etiketlenmiş örnekler arasındaki orandan etkilenmemeleri ve sizi bir eşik seçmeye zorlamama avantajına sahiptir. Bununla birlikte, sadece ROC eğrisine değil, diğer görselleştirmelere de bakılması önerilir. Hassas geri çağırma eğrilerine ve maliyet eğrilerine göz atmanızı tavsiye ederim.tek gerçek hata ölçüm, hepsi güçlerini ve zayıf yönleri vardır.

Bu konuda yardımcı bulduğum literatür:

Sınıflandırıcınız bir tür puan sağlamazsa , gerçek pozitiflerin sayısını, yanlış pozitifleri, gerçek negatifleri ve yanlış negatifleri içeren bir karışıklık matrisinden elde edilebilecek temel önlemlere geri dönmeniz gerekir . Yukarıda belirtilen görselleştirmeler (ROC, hassas hatırlama, maliyet eğrisi), sınıflandırıcının puanının farklı bir eşiği kullanılarak elde edilen bu tablolara dayanmaktadır. Bu durumda en popüler önlem muhtemelen F1-Measure. Buna ek olarak, bir karışıklık matrisinden alabileceğiniz uzun bir ölçüm listesi vardır: duyarlılık, özgüllük, pozitif tahmin değeri, negatif tahmin değeri, doğruluk, Matthews korelasyon katsayısı,… ROC eğrilerine benzer şekilde, karışıklık matrislerini anlamak çok kolaydır İkili sınıflandırma sorunu, ancak birden çok sınıfla daha karmaşık hale gelir, çünkü sınıfları için tek bir tablosu veya tabloyu her biri sınıflardan birini ( ) diğeriyle karşılaştırarak düşünmelisiniz. sınıfları ( değil ).N × N N 2 × 2 A ANN×NN 2×2AA


1
Son cümle yanlış: sınıfı için karışıklık tabloları genellikle boyutundadır . Bundan "sınıf a" ve "sınıf-sınıf-a" için tabloları türetebilirsiniz , ancak bazen örtük olarak da bu çok yaygın değildir (örn. hesaplamaları). N × N N 2 × 2NN×NN 2×2
cbeleites SX ile mutsuz

Bu hatayı işaret ettiğiniz için çok teşekkür ederim, yukarıdaki cevapta düzelttim.
sebp

5

Zaten var olan cevaplara birkaç düşünce daha ekleyeyim.

  • çoğu sınıflandırıcı aslında üzerinde sert sınıflar atamak için bir eşiğin (t: sınıf a altında, yukarıda: sınıf b) uygulandığı bir ara sürekli puanı vardır. Bu eşiğin değiştirilmesi ROC'yi verir.
  • Genel olarak, böyle bir eğriyi bir sayıya sıkıştırmak iyi bir fikir değildir . bakınız örn . İndüksiyon Algoritmalarının Karşılaştırılması için Doğruluk Tahminine Karşı Durum
    Aynı AUC'ye sahip birçok farklı ROC vardır ve belirli bir uygulama için kullanışlılığı büyük ölçüde değişebilir.
  • diğer taraftan: eşik seçimi, sahip olduğunuz uygulama tarafından hemen hemen belirlenebilir.
  • Bu sınırların dışındaki sınıflandırıcı performansına bakmanıza gerek yoktur ve bir metrik seçerseniz , bu en azından yalnızca sınırlı diğer metriklerin ilgili aralığını özetlemelidir.
  • çalışma tasarımınıza bağlı olarak, doğru veya yanlış sınıflandırılmış örneklerin toplam kısmı uygun bir özet olabilir ya da olmayabilir ve bundan çıkarabileceğiniz sonuçlar da çalışma tasarımına bağlı olacaktır: Test verileriniz, sınıflar? Sınıflandırıcınızın kullanılması gereken popülasyon için? Tabakalı bir şekilde mi toplandı? Bu, bir sınıflandırıcının çoğu kullanıcısının öngörücü değerlerle daha fazla ilgilendiği, ancak duyarlılık ve özgüllüğün ölçülmesinin çok daha kolay olması ile yakından bağlantılıdır.

  • Genel yönergeleri soruyorsunuz. Genel bir kılavuz, bilmeniz gereken

    • ne tür bir performansa ihtiyacınız var (duyarlılık, özgüllük, öngörücü değerler vb. sınıflandırıcınızın davranışıyla ilgili belirli soruları yanıtlar, burada ne yazdığımı görün ).
    • Uygulamanız için bu performans karakteristiği için hangi kabul edilebilir çalışma aralıkları?
      Bunlar büyük ölçüde değişebilir: spam tespitinde oldukça yanlış olan bazı negatifleri kabul etmeye istekli olabilirsiniz, ancak bu HIV teşhisi için kabul edilebilir bir kurulum değildir ...

Bu soruları yanıtlayamadıkça yararlı bir metrik bulamayacağınızı düşünüyorum .

Sınıflandırıcı doğrulamasında ücretsiz öğle yemeği yok gibi.


2

Beklenen yanlış sınıflandırma hata oranı, en sık kullandığım ve gördüğüm yöntemdir. ROC'nin AUC'si bir dizi sınıflandırma kuralının bir ölçüsüdür. Fikir, belirli bir sınıflandırıcıyı başka bir sınıflayıcıyla karşılaştırmaksa, AUC uygun değildir. Bazı sınıflandırma hataları biçimi, sınıflandırma kuralının en doğrudan performansını temsil ettiği için en mantıklıdır.

Yeniden yerleşim tahmininin büyük yanlılığı ve bir defaya mahsus bırakmadaki yüksek sapma nedeniyle sınıflandırma hata oranının iyi tahminlerini bulmak için çok fazla çalışma yapılmıştır. Önyükleme ve düzgün tahmin ediciler ön plana çıkarılmıştır. Örneğin, bkz.

İşte Efron ve Tibshirami'nin 1995 yılında yaptığı çalışmalardan bazıları dahil olmak üzere literatürü özetleyen teknik raporu .


Aynı veri kümesindeki iki sınıflandırıcının performansının karşılaştırılması tartışılması gereken başka bir konudur. Özellikle, ROC ve AUC durumunda, bir bütün olarak ROC eğrilerini veya AUC tahminlerini karşılaştırmak için birkaç yöntem vardır. Bunlar aslında ROC / AUC'nin farklı olmadığı yönündeki sıfır hipotezi ile istatistiksel testlerdir. Çapraz doğrulama ile bootstrap karşılaştırması ilginç bir konudur, yakın zamanda bu konuda bir makale gördüm ( dx.doi.org/10.1016/j.csda.2010.03.004 ). Sanırım tüm yönleri bir kerede düşünürseniz, oldukça korkutucu olabilir.
sebp
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.