Sınıflandırmada hatırlama ve hassasiyet


40

Her zaman bilgi alımı bağlamında olmasına rağmen, bazı hatırlama ve kesinlik tanımlarını okudum. Birisini bunu bir sınıflandırma bağlamında biraz daha açıklayabilir ve belki bazı örnekler gösterebilir mi diye merak ediyordum. Örneğin, bana% 60 hassasiyet ve% 95 geri çağırma sağlayan bir ikili sınıflandırıcıya sahip olduğumu söyle, bu iyi bir sınıflandırıcı mı?

Belki hedefime biraz daha yardımcı olmak için, size göre en iyi sınıflandırıcı nedir? (veri kümesi dengesizdir. Çoğunluk sınıfı, azınlık sınıfı örneklerinin iki katı tutarına sahiptir)

Alıcı operatör eğrisi altındaki alan nedeniyle şahsen 5 diyebilirim .

(Burada gördüğünüz gibi model 8 düşük hassasiyete sahip, çok yüksek geri çağırma, ancak en düşük AUC_ROC'dan biri, bu onu iyi bir model mi yapıyor yoksa kötü bir model mi?)

görüntü tanımını buraya girin


Düzenle:

Daha fazla bilgi içeren bir excel dosyam var: https://www.dropbox.com/s/6hq7ew5qpztwbo8/comparissoninbalance.xlsx

Bu belgede, alıcı operatör eğrisi altındaki alan ve hassas geri çağırma eğrisi altındaki alan bulunabilir. Arazilerle birlikte.


6
Olumsuz oy neden? Bu ilginç bir soru gibi görünüyor (kesinlikle bir kaç kişinin cevap verebileceğini düşündüğü bir şey).
Gala,

Performans ölçütlerinin hesaplanmasında kaç tane test durumu yer aldı? Ayrıca, aynı veri kümesindeki birkaç sınıflandırıcıyı karşılaştırırsanız, eşleştirilmiş bir tasarım kullanabilirsiniz (sınıflandırıcı karşılaştırmasını tartışan CV hakkında birkaç soru ve cevap vardır).
cbeleites, Monica

799 örneğim var (eğer test durumuyla kastettiğiniz buysa). Her zaman verileri 10 alt kümeye bölerim. Sınıflandırıcıları test etmek için 1 alt küme ve sınıflandırıcıları eğitmek için kalanlar (karşılaştırılan sınıflandırıcılar aynı veriler üzerinde eğitilmiştir).
Olivier_s_j

Sınıflandırıcılar ikili bir değer mi veriyorlar yoksa gerçek bir değer mi veriyorlar ve daha sonra ikili yapmak için bir eşik kullanıyorlar mı?
galath

İkili çıktı verir.
Olivier_s_j

Yanıtlar:


40

Bir sınıflandırıcının “iyi” olup olmadığı, gerçekten

  1. Özel probleminiz için başka neler kullanılabilir? Açıkçası, bir sınıflandırıcının rastgele veya naif tahminlerden daha iyi olmasını istersiniz (örneğin, her şeyi en yaygın kategoriye ait olarak sınıflandırmak) ancak bazı şeyleri diğerlerinden daha sınıflandırmak daha kolaydır.
  2. Farklı hataların maliyeti (yanlış alarm vs. yanlış negatifler) ve taban oranı. İkisini birbirinden ayırmak ve sonuçları pratikte tamamen yararsız olan (nadir bir hastalık veya bazı hastaları tespit etmeye çalıştığınızı söyleyen) yüksek doğrulukta (bazı test örneklerinde doğru sınıflandırmalar) bir sınıflandırıcıya sahip olmak mümkün olduğu için sonuçları çözmek çok önemlidir. nadir görülen yaramaz davranış ve tespit üzerine bir eylem başlatmayı planlıyor; Büyük çaplı testler bir şeylere mal oluyor ve iyileştirici eylem / tedavi de tipik olarak önemli riskler / maliyetler içeriyor, bu nedenle çoğu isabetin yanlış pozitif olacağı düşünülüyor hiçbir şey yapmamak daha iyi olabilir).

Bir yandan hatırlama / hassasiyet ile diğer yandan duyarlılık / özgüllük arasındaki bağlantıyı anlamak için bir karışıklık matrisine geri dönmeniz yararlı olacaktır:

                      Condition: A             Not A

  Test says “A”       True positive (TP)   |   False positive (FP)
                      ----------------------------------
  Test says “Not A”   False negative (FN)  |    True negative (TN)

Geri çağırma TP / (TP + FN) iken, hassasiyet TP / (TP + FP). Bu, sorunun yapısını yansıtır: Bilgi edinmede, elinizden geldiğince çok sayıda ilgili belge tanımlamak istersiniz (geri çağırma) ve önemsizleri sıralamak zorunda kalmazsınız (kesin).

Aynı tablo kullanılarak, geleneksel sınıflandırma ölçütleri (1) TP / (TP + FN) olarak tanımlanan hassasiyet ve (2) TN / (FP + TN) olarak tanımlanan özgüllüktür. Dolayısıyla hatırlama ve hassasiyet basitçe eş anlamlıdır, ancak hassasiyet ve özgüllük farklı şekilde tanımlanır (hatırlama ve hassasiyet gibi, sütun toplamına göre özgüllük tanımlanırken, doğruluk satır toplamını ifade eder). Hassasiyet bazen “pozitif öngörü değeri” veya nadiren “yanlış pozitif oran” olarak da adlandırılır (ancak yanlış pozitifin bu tanımını çevreleyen karışıklığa ilişkin doğru pozitif, yanlış pozitif, yanlış negatif ve gerçek negatif arasındaki ilişki hakkındaki cevabımı görün.) oranı).

İlginçtir, bilgi alma metrikleri “gerçek negatif” sayımı içermez. Bu mantıklı: Bilgi edinmede, negatif olayları kendi başınıza doğru şekilde sınıflandırmayı umursamıyorsunuz , yalnızca sonuçlarının kirletilmesini istemiyorsunuzdur (ayrıca bkz. Neden hatırlamak gerçek negatifleri hesaba katmıyor? ).

Bu fark nedeniyle, spesifiklikten kesinlike veya başka bir yolla ek bilgi olmadan, yani gerçek negatiflerin sayısını veya alternatif olarak, pozitif ve negatif vakaların genel oranını elde etmek mümkün değildir. Bununla birlikte, aynı korpus / test seti için daha yüksek özgüllük her zaman daha iyi hassasiyet anlamına gelir, böylece yakından ilişkilidirler.

Bir bilgi edinme bağlamında, amaç genellikle çok sayıda belgeden az sayıda eşleşme tanımlamaktır. Bu asimetri nedeniyle, duyarlılığı / hatırlamayı sabit tutarken, iyi bir spesifikliğe göre iyi bir hassasiyet elde etmek çok daha zordur. Çoğu belge alakasız olduğundan, yanlış alarmlar için gerçek pozitiflerden çok daha fazla zamanınız olur ve bu yanlış alarmlar, sınıflandırıcı dengeli bir test setinde etkileyici bir doğruluk olsa bile doğru sonuçları elde edebilir (bu aslında senaryolarda olan şeydir. yukarıda 2. adımda belirtilen). Sonuç olarak, hassasiyeti optimize etmeniz ve yalnızca iyi bir özgüllük sağlamak için değil,% 99 veya daha fazlası gibi etkileyici görünen oranlar bile bazen çok sayıda yanlış alarmdan kaçınmak için yeterli olmamanız gerekir.

Duyarlılık ve özgüllük (veya hatırlama ve hassasiyet) arasında genellikle bir denge vardır. Sezgisel olarak, daha geniş bir ağ yayınlarsanız, daha alakalı belgeler / pozitif durumlar (daha yüksek hassasiyet / hatırlama) tespit edecek, ancak daha fazla yanlış alarm (daha düşük özgüllük ve daha düşük hassasiyet) elde edeceksiniz. Her şeyi pozitif kategoride sınıflandırırsanız,% 100 geri çağırma / duyarlılığa, kötü bir hassasiyete ve çoğunlukla işe yaramaz bir sınıflandırmaya sahip olursunuz (“çoğunlukla” çünkü başka bir bilginiz yoksa, işe yaramayacağını varsaymak kesinlikle mantıklı olacaktır. bir çölde yağmur yağmak ve buna göre hareket etmek, belki de sonuçta sonuçta faydasız değildir; elbette bunun için karmaşık bir modele ihtiyacınız yoktur).

Tüm bunları göz önünde bulundurarak,% 60 hassasiyet ve% 95 hatırlama çok kötü gelmiyor ama yine de bu gerçekten etki alanına ve bu sınıflandırıcı ile ne yapmak istediğinize bağlı.


Son yorumlar / düzenlemeler ile ilgili bazı ek bilgiler:

Yine, bekleyebileceğiniz performans özelliklere bağlıdır (bu bağlamda bu, eğitim setinde yer alan tam bir dizi duygu, resim / video kalitesi, parlaklık, oklüzyon, baş hareketleri, oyunculuk veya kendiliğinden videolar gibi şeyler olabilir. kişiye bağlı veya kişiden bağımsız model, vb.) ancak .7'den fazla F1, bazı veri setlerinde en iyi modeller daha iyisini yapabilse bile bu tür uygulamalar için iyi bir ses çıkarır [bkz. Valstar, MF, Mehu, M., Jiang, B., Pantic, M. ve Scherer, K. (2012). İlk yüz ifadesi tanıma mücadelesinin meta-analizi. Sistemler, İnsan ve Sibernetik Üzerine IEEE İşlemleri, Bölüm B: Sibernetik, 42 (4), 966-979.]

Böyle bir modelin pratikte faydalı olup olmadığı tamamen farklı bir sorudur ve açıkça uygulamaya bağlıdır. Yüz ifadesinin kendisinin karmaşık bir konu olduğunu ve tipik bir eğitim setinden (ifade edilen ifadeler) herhangi bir gerçek yaşam durumuna geçmenin kolay olmadığını unutmayın. Bu, forumda konuyla ilgili değil, ancak düşünebileceğiniz her uygulama için ciddi sonuçlar doğuracak.

Son olarak, modeller arasında kafa kafaya karşılaştırma bir başka soru. Benim sunduğum rakamları benim üstlenmem, modeller arasında çarpıcı bir fark olmadığıdır (yukarıda bahsettiğim yazıya atıfta bulunursanız, bu alanda iyi bilinen modeller için F1 puanlarının aralığı daha geniştir). Uygulamada, teknik yönler (standart kütüphanelerin sadeliği / kullanılabilirliği, farklı tekniklerin hızı, vb.), Muhtemelen maliyet / faydaların ve toplam oranın kesin olarak ya da hatırlatmayı şiddetle tercih etmesini sağlaması haricinde hangi modelin uygulanacağına karar vermesi muhtemeldir.


Sınıflandırıcım, yüzleri olumlu veya olumsuz duygulara sınıflandırır. 10 kat çapraz doğrulama ile birkaç sınıflandırma algoritması kullandım ve bazen tüm sınıflayıcılar için neredeyse aynı olmasına rağmen (% 65 civarında) hassasiyete rağmen% 100 hatırlama bile alıyorum. Dengesiz bir veri kümesiyle çalışıyorum (çoğunluk sınıfı azınlık sınıfı örneklerinin iki katı tutarında). Bu nedenle, muhtemelen bu modellerin modeli öğrenemediği anlamına geldiğini düşündüm.
Olivier_s_j

1
@Gala: 'Yanlış alarm' ve 'yanlış negatif' arasındaki fark nedir? "Yanlış alarm" ve "yanlış pozitif" mi demek istiyorsun?
Matt O'Brien,

@ MattO'Brien Yanlış alarm yanlış bir pozitif (örn. Sistem “Dikkat!” Veya “Bir şey bulundu!” Der) ancak hiçbir şey yoktur ve harekete geçmeye gerek yoktur, dolayısıyla “yanlış alarm” vardır. Belki terminoloji biraz kafa karıştırıcıdır, cevabı daha sonra gözden geçireceğim.
Gala

@Ojtwist Pozitifin% 67 ön olasılığı varsa, her şeyi pozitif olarak tahmin ederek% 100 hatırlama ve ~% 67 hassasiyet elde edebilirsiniz.
Mark

21

İkili sınıflandırma bağlamında, örnekler ya olumlu ya da olumsuzdur.

  • Geri çağırma şu soruyu ele alır: "Olumlu bir örnek verildiğinde, sınıflandırıcı bunu algılar mı?"
  • Kesinlik şu soruyu ele alıyor: "Sınıflandırıcıdan olumlu bir öngörü göz önüne alındığında, doğru olma olasılığı ne kadar?"

Dolayısıyla, odaklamanın olumlu örneklere mi yoksa olumlu tahminlere mi bağlı olduğuna bağlıdır.

Biri, "en az% 90 geri çağırmada, en yüksek hassasiyete sahip sınıflandırıcı 4'tür" diyebilir. Ancak, önemli olan tahminlerin kalitesi ise, en az% 70 kesinliğe sahip sınıflandırıcılar arasında en yüksek hatırlamaya ulaşan 6'dır.


6

ROC alanını (uyumluluk olasılığı; c-endeksi) hesaplamada süreksiz bir uygunsuz puanlama kuralına (zorla seçim sınıflandırma doğruluğu) hesaplamada kullanıldığı gibi sürekli tahminlerden geçmek, her türlü anormalliğe yol açar ve analisti yanlış tahmincileri ve / veya yanlış tahmincileri seçmesi için yanlış yönlendirir. veya yanlış model. Uygun puanlama kurallarına dayanarak karar vermek çok daha iyidir (örn. Log-olabilirlik / sapma / logaritmik olasılık puanlama kuralı; Brier puanı (ikinci dereceden olasılık doğruluk puanı)). Bu tür bir yaklaşımın birçok avantajı arasında, orta sınıf olasılıkların neden olduğu belirsizlik nedeniyle sınıflandırmanın sağlığınız için tehlikeli olduğu gözlemlerin belirlenmesi yer almaktadır.


Bu puanlama kuralları sadece model olası çıktılar verdiğinde geçerli olmaz mı?
Olivier_s_j

3
Olasılıksal çıktılar gerektiren ROC AUC'den bahsettiniz (veya aynı monotonik bir fonksiyondur). En iyi tahmin yöntemleri, başlık altında olasılıklara sahiptir.
Frank Harrell,

DxyY

ROC ve "zorla tercih edilmeyen" sınıflandırma doğruluğu ölçütlerinin kullanılmasındaki sorun, aslında bir iş vakasına göre bir eşik seçmesi gereken uygulama bağlamında hiçbir şey ifade etmemeleridir. Örneğin, yatırım bankacılığı için bir finansal suç tespit ürününde, bir işletme yalnızca yılda 100 sınıflandırmayı araştıracak insan kaynağına sahip olabilir, bu durum, bunun için optimize edilmesi gereken sabit bir eşik oluşturur. Gini, ROC alanı, vb. Modelin bu eşikte ne kadar iyi olduğunu size söylemez. ...
samthebest

2
Soruşturma sayısında bütçe sınırının olması çok makul. Bu eşik, yeni optimizasyon, sınıflandırma ve ROC analizi gerektirmez. Biri, gözlemleri yalnızca azalan öngörülen risk sırasına göre sıralar ve araştırılacak ilk 100 gözlemi seçer. Bu pazarlamada kullanılan bir kaldırma eğrisi ile ilgilidir.
Frank Harrell,

5

Ne hassaslık ne de hatırlama tam hikayeyi anlatmaz ve bir tahminciyi% 90 hatırlama ve% 60 hassasiyetle bir tahminciyle karşılaştırmak zordur; Karışıklık matrisindeki 4 hücrenin (tp / fp / tn / fn) her biri ile ilişkili maliyet / fayda .

Sınıflandırıcı performansını tanımlayan tek bir sayı ( yeterlilik , yani belirsizlik katsayısı ) almanın ilginç bir yolu bilgi teorisini kullanmaktır :

proficiency = I(predicted,actual) / H(actual)

yani, gerçek verilerde mevcut bilgilerin hangi kısmının sınıflandırıcı tarafından geri kazanıldığını gösterir. Hassasiyet veya hatırlama 0 ise ve hem hassasiyet hem de hatırlama% 100 ise (ve sadece ise)% 100'dür. Bu, F1 puanına benzer , ancak yeterliliğin açık bir bilgi-teorik anlamı vardır, F1 ise sadece iki sayının harmonik ortalamasıdır.

Yeterlilik ölçütünü hesaplamak için bildiri, sunum ve kodu (Python) burada bulabilirsiniz: https://github.com/Magnetic/proficiency-metric


ilginç! Yeterliliğin nasıl hesaplanacağına dair bir örnek verebilir misiniz? çünkü formül bana tuhaf geliyor.
yalnız


Yorumlar uzun tartışmalar için değildir; bu konuşma sohbete taşındı .
Scortchi
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.