Yüksek hassasiyetli veya yüksek hatırlanabilir ikili sınıflandırıcı elde etmek için hangi kayıp fonksiyonu kullanılmalıdır?


11

Sürgülü / yeniden boyutlandırılmış bir pencerede uygulanan bir CNN ikili sınıflandırıcı kullanmayı planlayan, çok nadiren (görüntülerde) oluşan nesnelerin bir dedektör yapmaya çalışıyorum. Dengeli 1: 1 pozitif negatif eğitim ve test setleri oluşturdum (bu durumda btw yapmak doğru bir şey mi?) Ve sınıflandırıcı doğruluk açısından bir test seti üzerinde iyi çalışıyor. Şimdi sınıflamacımın hatırlama / hassasiyetini kontrol etmek istiyorum, örneğin, çoğunluk sınıf olaylarının yanlış bir kısmını çok fazla etiketlemeyecek.

Açıkçası (benim için) çözüm, şu anda kullanılan aynı lojistik kaybı kullanmaktır, ancak ağırlık tipi I ve tip II, ayarlanabilen bir sabit üzerindeki iki durumdan birinde kaybı çarparak farklı şekilde hata yapar. Doğru mu?

PS İkinci bir düşünce, bunun bazı eğitim örneklerini diğerlerinden daha fazla ağırlıklandırmaya denktir. Sadece bir sınıftan daha fazlasını eklemenin aynı olduğunu düşünüyorum.


bunu hiç çözdün mü Benzer bir hedefim var. Hassasiyet (tip 1) için optimize etmek ve tip 2 hataları hakkında daha az bakım yapmak istiyorum, bu yüzden kayıp fonksiyonu ile ilgili neler yapılabileceğini düşünüyoruz.
Jonathan Shore

Yanıtlar:


6

Yapay olarak dengeli bir eğitim seti oluşturmak tartışmalıdır, aslında oldukça tartışmalıdır. Bunu yaparsanız, eğitim setini dengesiz bırakmaktan daha iyi çalıştığını ampirik olarak doğrulamalısınız. Test setinin yapay olarak dengelenmesi neredeyse hiç iyi bir fikir değildir. Test seti, etiketsiz olarak geldikleri için yeni veri noktalarını temsil etmelidir. Bunların dengesiz olmasını beklersiniz, bu nedenle modelinizin dengesiz bir test setini işleyip işleyemeyeceğini bilmeniz gerekir. (Yeni kayıtların dengesiz olmasını beklemiyorsanız, mevcut tüm kayıtlarınız neden dengesizdir?)

Performans metriğinizle ilgili olarak, her zaman istediğinizi alırsınız. Eğer doğruluk dengesiz bir kümede en çok ihtiyacınız olan şey değilse, çünkü sadece sınıflar değil, aynı zamanda yanlış sınıflandırma maliyetleri de dengesizdir, o zaman kullanmayın. Metrik olarak doğruluğu kullandıysanız ve her zaman en iyi doğruluğa sahip olanı alarak tüm model seçiminizi ve hiperparametre ayarlarınızı yaptıysanız, doğruluk için optimize edersiniz.

Azınlık sınıfını pozitif sınıf olarak alıyorum, bu onları adlandırmanın geleneksel yoludur. Dolayısıyla, aşağıda tartışıldığı gibi kesinlik ve hatırlama, azınlık sınıfının kesinliği ve hatırlanmasıdır.

  • Tek önemli şey, tüm azınlık sınıfı kayıtlarını tanımlamaksa, hatırlayabilirsiniz. Böylece daha fazla yanlış pozitif kabul ediyorsunuz.
  • Sadece hassasiyeti optimize etmek çok garip bir fikir olacaktır. Sınıflandırıcınıza azınlık sınıfını tespit etmenin bir sorun olmadığını söylüyorsunuz. Yüksek bir hassasiyete sahip olmanın en kolay yolu, azınlık sınıfını ilan etmede fazla dikkatli olmaktır.
  • Hassasiyet ve hatırlamaya ihtiyacınız varsa, F-ölçüsü alabilirsiniz. Kesinlik ve hatırlama arasındaki harmonik ortalamadır ve böylece her iki metriğin ayrıştığı sonuçları cezalandırır.
  • Her iki yönde somut yanlış sınıflandırma maliyetlerini (ve sınıf başına farklıysa doğru sınıflandırmanın karlarını) biliyorsanız, tüm bunları bir kayıp fonksiyonuna koyabilir ve optimize edebilirsiniz.

3

Birkaç varsayım yapıyorsunuz. Nihai hedefi genel anlamda düşünmek, daha sonra bu hedefe ulaşan bir strateji oluşturmak en iyisidir. Örneğin, zorunlu seçim sınıflandırmasına gerçekten ihtiyacınız var ve sinyal: gürültü oranı bunu destekleyecek kadar büyük mü (iyi örnekler: ses ve görüntü tanıma)? Yoksa sinyal: gürültü oranı düşük mü yoksa eğilimlerle mi ilgileniyorsunuz ? İkincisi için, risk tahmini sizin için. Seçim önemlidir ve seçtiğiniz tahmini doğruluk metriğini belirler. Tüm bunlar hakkında daha fazla düşünce için bkz. Http://www.fharrell.com/2017/01/classification-vs-prediction.html ve http://www.fharrell.com/2017/03/damage-caused-by-classification .html .

Sorunların çoğu karar verme ile ilgilidir ve optimum kararlar bir zarar / maliyet / fayda fonksiyonu ile birlikte risk tahmininden gelir.

Bir risk (olasılık) tahmin yaklaşımının en iyi yönlerinden biri, daha fazla veri elde etmeden bir sınıflandırma veya karar vermenin yanlış olacağı gri bölgeleri ele almasıdır . Ve sonra olasılık tahmininin, numuneyi yapay olarak manipüle ederek sonuçları "dengelemesini" gerektirmediği (hatta buna izin vermediği) vardır.


1

Antrenman örneklerinin yeniden ağırlıklandırılmasının iki durumdan birindeki kaybı sabit ile çarpmaya eşdeğer olup olmadığı hakkındaki sorunuzla ilgili olarak: evet, öyle. Lojistik regresyon kaybı işlevini yazmanın bir yolu burada ve ilgili pozitif ve negatif örnekleri ve , özelliklerinden oluşturulan lojistik sınıflandırıcıdır . Örneğin, negatif örneklerinize daha fazla ağırlık vermek istiyorsanız, kaybınızı şu şekilde değiştirmek isteyebilirsiniz:

Σj=1Jgünlük{1+tecrübe[-f(xj)]}+Σk=1Kgünlük{1+tecrübe[f(xk)]}
jkf()x
Σj=1Jgünlük{1+tecrübe[-f(xj)]}+Σk=1Kwgünlük{1+tecrübe[f(xk)]}
bazıları için . Bu kayıp fonksiyonu, ağırlıklı lojistik regresyonun yazılım uygulamaları ile en aza indirgenir, ancak aynı cevaba, negatif örneklerinizi bir faktörü ile ağırlıklandırarak ve standart bir lojistik regresyon (örneğin , Her negatif örnek ve uyumdan 2 kopya). Burada bu tür bir yaklaşımla ilgili bazı ayrıntılar . Ve burada standart hataların parametresine ne olduğu hakkında genel bir uyarı var , ancak sadece tahmin yapıyorsanız bu böyle bir endişe olmayabilir.w>1ww=2

Ama bu artık bir maksimum olasılık tahmincisi olmayacak
Frank Harrell

1
Kabul ediyorum, ancak lojistik regresyondaki parametreler üzerinde istatistiksel çıkarımın istenen hedef olmadığı konusunda önemli olmadığından emin değilim (OP'nin CNN kullanımından söz edilmesi de ML tabanlı değildir). Gerçekten de, bu ağırlıklı yaklaşımdan çıkarımsal çıktının çoğu / tümü göz ardı edilir, ancak model ve sonuçta ortaya çıkan risk puanları, arzu edilen sonuçlarla, örneğin iyi ayrımcılık / kalibrasyon gibi bir doğrulama setine hala uygulanabilir.
Travis Gerke

1
Hayır, modelin kalibrasyonunu bozacaksınız ve yukarıdaki yaklaşımla daha gürültülü parametre tahminleri alacaksınız. MLE çok iyi nedenlerden dolayı var.
Frank Harrell

Bir şekilde yanlış sınıflandırma konusunda çok endişeli olmanın önemsiz durumunu düşünün, diğeri değil - yani yönlerden biri için sıfır kayıp. Bu kayıp için en iyi model sadece endişe sınıfını öngörür. Korkunç bir model olmasına rağmen, hedefe ulaşıldı. Amacı anlamak ve amacını anlamadan teorik bir kavrama (MLE) kör bir inanç katmamak önemlidir. TravisGerke tarafından belirtildiği gibi, eğer vurgu modelleme yerine tahmin üzerindeyse, yaklaşımı oldukça yararlıdır. Çoğunluk sınıfının altörneklemesinden kesinlikle daha iyi.
Statseeker
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.