Bir süredir Konvolutional Sinir Ağları (CNN) ile çalışıyorum, çoğunlukla semantik segmentasyon / örnek segmentasyonu için görüntü verileri üzerinde. Belirli bir sınıf için piksel başına aktivasyonların ne kadar yüksek olduğunu görmek için genellikle ağ çıkışının softmax değerini bir "ısı haritası" olarak görselleştirdim. Düşük aktivasyonları "belirsiz" / "belirsiz" ve yüksek aktivasyonları "belirli" / "kendine güvenen" tahminler olarak yorumladım. Temel olarak bu, softmax çıktısının ( içindeki değerler ) modelin bir olasılık veya (un) kesinlik ölçüsü olarak yorumlanması anlamına gelir .
( Örn Ben ettik CNN dolayısıyla CNN nesnesinin bu tür tahmin etme konusunda "belirsiz" olmak, tespit etmek için zor olan pikselleri üzerinden ortalaması düşük SoftMax aktivasyon ile bir nesne / alan yorumlanır. )
Benim düşünceme göre bu genellikle işe yaradı ve eğitim sonuçlarına "belirsiz" alanların ek örneklerinin eklenmesi bunlar üzerinde daha iyi sonuçlar verdi. Ancak şimdi sık sık farklı taraflardan softmax çıktısını (un) kesinlik ölçüsü olarak kullanmanın / yorumlamanın iyi bir fikir olmadığını ve genellikle cesaretin kırıldığını duydum. Neden?
EDIT: Ben burada sordum ne netleştirmek için bu soruya cevap şimdiye kadar benim görüşlerini ayrıntılı olarak ele alacağım. Ancak aşağıdaki argümanların hiçbiri bana açıklık getirmedi ** neden genellikle kötü bir fikirdir **, meslektaşları, amirleri tarafından tekrar tekrar söylendiğim ve ayrıca burada "1.5" bölümünde belirtildiği gibi
Sınıflandırma modellerinde, boru hattının sonunda elde edilen olasılık vektörü (softmax çıktı) genellikle hatalı olarak model güveni olarak yorumlanır
veya burada "Arkaplan" bölümünde :
Her ne kadar evrişimli bir sinir ağının son softmax tabakası tarafından verilen değerleri güven skorları olarak yorumlamak cazip gelse de, bunu çok fazla okumamaya dikkat etmeliyiz.
Yukarıdaki kaynaklar, softmax çıktısının belirsizlik ölçüsü olarak kullanılmasının kötü olmasının nedeni:
gerçek bir görüntünün algılanamayan bozulmaları, derin bir ağın softmax çıktısını keyfi değerlere dönüştürebilir
Bu, softmax çıktısının "algılanamayan bozulmalara" dayanıklı olmadığı ve dolayısıyla çıktısının olasılık olarak kullanılamayacağı anlamına gelir.
Başka bir makale "softmax çıktı = güven" fikrini alıyor ve bu sezgi ağları ile kolayca kandırılabileceğini ve "tanınmayan görüntüler için yüksek güvenilir çıktılar" üretebileceğini savunuyor.
(...) belirli bir sınıfa karşılık gelen bölge (girdi alanında), o sınıftaki eğitim örnekleri tarafından işgal edilen o bölgedeki alandan çok daha büyük olabilir. Bunun sonucu, bir görüntünün bir sınıfa atanan bölgede yer alması ve dolayısıyla, eğitim setinde o sınıfta doğal olarak oluşan görüntülerden uzak olmakla birlikte, softmax çıktısında büyük bir tepe ile sınıflandırılabilmesidir.
Bu, eğitim verilerinden uzak olan verilerin asla yüksek bir güven elde etmemesi gerektiği anlamına gelir, çünkü model bundan emin olamaz (daha önce hiç görmediği gibi).
Bununla birlikte: Bu genellikle NN'lerin bir bütün olarak genelleme özelliklerini sorgulamıyor mu? Yani, softmax kaybı olan NN'lerin (1) "algılanamayan pertürbasyonlar" veya (2) eğitim verilerinden uzak olan, örneğin tanınmayan görüntüler gibi giriş veri örneklerine iyi bir şekilde genelleme yapmadıkları.
Bu akıl yürütmeyi takiben hala anlamadım, pratikte eğitim verisine (yani çoğu "gerçek" uygulama) karşı soyut ve yapay olarak değiştirilmemiş verilerle, softmax çıktısını "sözde olasılık" olarak yorumlamak neden kötüdür fikir. Sonuçta, doğru olmasa bile, modelimin ne hakkında emin olduğunu iyi gösteriyorlar (bu durumda modelimi düzeltmem gerekiyor). Model belirsizliği her zaman bir "sadece" bir yaklaşım değil midir?