Derin öğrenmede MLE ve çapraz entropi arasındaki bağlantı ne kadar anlamlı?


12

Bir dizi bağımsız gözlem verilen kestirim (ya da düz olan eşdeğer, MAP / üniform önce), bu tanımlar parametreler \ mathbf {θ} modeli dağılımı üretmek P_ {modeli} \ bu gözlemlerle en iyi eşleşen sol (\, \ cdot \,; \ mathbf {θ} \ right)O = { o ( 1 )mO={o(1),...,o(m)} p m o d e l (θpmodel(;θ)

θML(O)=pmodel(O;θ)=argmaxθi=1mpmodel(o(i);θ)

veya daha rahat

θML(O)=argminθi=1mlogpmodel(o(i);θ)

ve θML çok sınıflı derin sinir ağları için bir kayıp fonksiyonu tanımlamak için oynayabileceği role bakın; burada θ ağın eğitilebilir parametrelerine karşılık gelir (ör. θ={W,b}) ve gözlemler, \ mathbf {x} giriş aktivasyonlarının çiftleri xve y[1,k] , \ mathbf {o içindeki karşılık gelen doğru sınıf etiketleri y \ } ^ {(i)}o(i) = { x(i),y(i) },

pmodel(o(i);θ)pmodel(y(i)|x(i);θ)


Anlamadığım şey, bunun (vectorized) doğru çıktının "çapraz entropisi", ve ağın karşılık gelen çıktı aktivasyonları, eğitimi sırasında bir hata / zarar ölçülürken uygulamasında kullanılan . İlgili birkaç sorun var: a ( x ( i ) ; θ )H( o ( i ) ; θ )=- y ( i ) l o gy(i)a(x(i);θ)

H(o(i);θ)=y(i)loga(x(i);θ)


"Olasılık olarak" aktivasyonlar

MLE ve çapraz entropi arasındaki ilişkiyi kurmanın adımlarından biri çıktı aktivasyonlarını "sanki" olasılıklar gibi kullanmaktır. Ama bana göre, ya da en azından olduğu belli değil.all

Eğitim hatasını hesaplarken - özellikle buna "çapraz entropi kaybı" olarak adlandırılırken - (aktivasyonları 1'e normalleştirdikten sonra) 1 olarak varsayılır.

(1)pmodel(o(i);θ)ay(i)(x(i);θ)

veya

logpmodel(o(i);θ)=logay(i)(x(i);θ)

böylece yazabiliriz

(3)logpmodel(o(i);θ)=y(i)loga(x(i);θ)

ve böylece

θML(O)=argminθi=1mH(o(i);θ)

Ancak bu kesinlikle olasılığını (bir şey olduğu ölçüde) yaparsa, diğer aktivasyonlara herhangi bir kısıtlama getirmez.ay(i)(x(i);θML)

Bu durumda gerçekten PMF olarak söylenebilir mi? Yapar orada birşey mi onlara "gibi" değil ihtimaller arasına (ve sadece )? a y ( i ) ( x ( i ) ; θ M L )ay(i)(x(i);θML)ay(i)(x(i);θML)


Sınıflandırmanın sınırlandırılması

MLE'nin çapraz entropi ile eşitlenmesinde yukarıdaki önemli adım, tamamen (tek etiketli) çok sınıflı bir öğrenme problemini karakterize eden nın tek-sıcak "yapısına dayanmaktadır . için başka herhangi bir yapı den e ulaşmayı imkansız hale getirecektir .y ( i ) (1) (3)y(i)y(i)(1)(3)

MLE ve çapraz entropi minimizasyonu denklemi nin "sıcak" olduğu durumlar ile mi sınırlı ? y(i)


Farklı eğitim ve tahmin olasılıkları

Tahmin sırasında, neredeyse her zaman

(2)pmodel(y(i)|x(i);θ)P(argmaxj[1,k]aj(x(i);θ)=y(i))

bu, güvenilir bir şekilde durum söz konusu olmadıkça, eğitim sırasında öğrenilen olasılıklardan farklı olan doğru tahmin olasılıkları ile sonuçlanır.

ay(i)(x(i);θML)=P(argmaxj[1,k]aj(x(i);θML)=y(i))

Bu hiç güvenilir değil mi? En azından yaklaşık olarak doğru mu? Veya etiket pozisyonundaki öğrenilmiş aktivasyon değerinin bu denklemini , öğrenilmiş aktivasyonların maksimum değerinin orada olma olasılığı ile doğrulayan başka bir argüman var mı?


Entropi ve bilgi teorisi

Yukarıdaki endişelerin ele alındığını ve aktivasyonların geçerli PMF'ler olduğunu (veya anlamlı bir şekilde bu şekilde ele alınabileceğini) varsayarsak, hesaplamasında çapraz entropinin oynadığı rolün sorunsuz olduğu açıktır. bunun entropi hakkında konuşmak için yararlı veya anlamlıdır bana neden , Shanon entropi için geçerlidir çünkü spesifik bir ağın eğitiminde kullanılmayan kodlama türü . a( x ( i ) ; θ M L )θMLa(x(i);θML)

Bilgi teorik entropisi maliyet fonksiyonunun yorumlanmasında, bir hesaplamak için (MLE'ye karşılık gelen) basit bir araç (çapraz entropi formunda) sağlamak yerine hangi rolü oynar?

Yanıtlar:


5

Sinir ağları mutlaka çıktı olarak olasılık vermez, ancak bunu yapmak için tasarlanabilir. Olasılık olarak yorumlanabilmek için bir değer kümesi negatif olmamalı ve bir değer toplamalıdır. Çıktı olasılıkları için bir ağ tasarlamak tipik olarak bu kısıtlamaları uygulayan bir çıktı katmanı seçmektir. Örneğin, sınıflarıyla ilgili bir sınıflandırma probleminde , ortak bir seçim, birimleri olan bir softmax çıktı katmanıdır . Softmax işlevi, çıkışları negatif olmayacak ve bir toplamı zorlar. çıkış ünitesine inci sınıf olma olasılığını verir . İkili sınıflandırma problemleri için, bir diğer popüler seçenek lojistik ile tek bir çıktı birimi kullanmaktırk j jkkjjetkinleştirme işlevi. Lojistik fonksiyonun çıktısı sıfır ile bir arasındadır ve sınıfın 1 olma olasılığını verir. Sınıfın 0 olma olasılığı dolaylı olarak bir eksi bu değerdir. Ağ hiçbir gizli katman içermiyorsa, bu iki örnek sırasıyla çok uluslu lojistik regresyon ve lojistik regresyona eşdeğerdir .

Çapraz entropi , iki ve olasılık dağılımı arasındaki farkı ölçer . Çapraz entropi, ayrımcı sınıflandırıcılar için bir kayıp fonksiyonu olarak kullanıldığında, ve , girdi (yani belirli bir veri noktası) verildiğinde sınıf etiketleri üzerinde dağılımlardır. , 'gerçek' dağılımdır ve , model tarafından öngörülen dağılımdır. Tipik sınıflandırma problemlerinde, veri kümesindeki her girdi, gerçek sınıfı temsil eden bir tamsayı etiketiyle ilişkilendirilir. Bu durumda, kullandığımız ampirik dağılım içinp q p q p q p qH(p,q)pqpqpqp. Bu, veri noktasının gerçek sınıfına olasılık 1'i ve diğer tüm sınıflara olasılık 0'ı atar. , ağ tarafından öngörülen sınıf olasılıklarının dağılımıdır (örneğin, yukarıda tarif edildiği gibi).q

Veri, iid ki ampirik olarak dağılmıştır ve (tahmin edilen dağıtım inci veri noktası). Daha sonra, çapraz entropi kaybını en aza indirmek (yani veri noktaları üzerinden ortalama ), verilerin olasılığını en üst düzeye çıkarmakla eşdeğerdir. Kanıt nispeten açıktır. Temel fikir, çapraz entropi kaybının, veri noktalarının negatif log öngörülen olasılıklarının toplamı ile orantılı olduğunu göstermektir. Bu, ampirik dağılımın şekli nedeniyle düzgün bir şekilde düşer.q i i H ( p i , q i )piqiiH(pi,qi)

Çapraz entropi kaybı da daha genel olarak uygulanabilir. Örneğin, 'yumuşak sınıflandırma' problemlerinde, sert sınıf etiketleri yerine sınıf etiketleri üzerinde dağılımlar verilir (bu yüzden ampirik dağılımı kullanmayız). Burada bu durumda çapraz entropi kaybının nasıl kullanılacağını açıklarım .

Sorunuzdaki diğer bazı özellikleri ele almak için:

Farklı eğitim ve tahmin olasılıkları

Görünüşe göre çıktı birimini maksimum etkinleştirme ile buluyor ve bunu sınıf etiketi ile karşılaştırıyorsunuz. Bu çapraz entropi kaybını kullanan eğitim için yapılmaz. Bunun yerine, model tarafından üretilen olasılıklar 'gerçek' olasılıklarla karşılaştırılır (tipik olarak ampirik dağılım olarak alınır).

Shanon entropisi, ağın eğitiminde kullanılmayan belirli bir kodlama türüne uygulanır.

Çapraz entropi , dağılım için optimal bir kod kullanılıyorsa, gerçek dağıtım çekilen olayları kodlamak için gereken mesaj başına bit sayısı (ortalama olarak) olarak yorumlanabilir . Çapraz entropi en az bir değer alır (Shannon entropi olduğunda) . ve arasındaki eşleşme ne kadar iyi olursap q H ( p ) p q = p q pH(p,q)pqH(p)pq=pqp, mesaj uzunluğu kısalır. Çapraz entropiyi en aza indirmek için bir modeli eğitmek, gerçek dağılıma daha iyi yaklaşmak için onu eğitmek olarak görülebilir. Tartıştığımız gibi denetimli öğrenme problemlerinde, model girdiye göre olası çıktılar üzerinde bir olasılık dağılımı vermektedir. Dağıtım için açıkça en uygun kodları bulmak sürecin bir parçası değildir.


"Bu çapraz entropi kaybını kullanarak eğitim için yapılmaz." TensorFlow gibi API'ların yaptığı tam olarak budur softmax_cross_entropy_with_logits: ve dolayısıyla ). Hayır? θ M L ( O )argminθi=1mH(o(i);θ)θML(O)
orome

Evet, çapraz entropi en aza indirilir ve olasılık en üst düzeye çıkarılır (en azından yerel olarak). Bu cümlede "farklı eğitim ve tahmin olasılıkları" bölümündeki denklemlerden bahsediyordum. Tekrar baktığımda, bu denklemlerle tam olarak ne demek istediğini net değil, bu yüzden şunu söyleyeceğim: , her birimin sınıf olasılığı verdiği bir çıkış katmanı kullanıyorsanız (örn. softmax). Model olasılıkları eğitim ve tahmin sırasında aynıdır. pmodel(y(i)=jx(i);θ)=aj(x(i);θ)
user20160

Aynı değerlerin kullanıldığını biliyorum - yani öğrenilen tahminde kullanılıyor - ancak farklı şekillerde kullanılıyorlar. Modelin için olasılığı gerçekten , ancak nin eğitimli model tarafından tahmin edilme olasılığı aynı girişine yanıt olarak, olup . (2) doğru olmadığı sürece bunlar aynı değildir. apmodel(y(i)|x(i);θML)ay(i)(x(i);θML)y(i)x(i)P(argmaxj[1,k]aj(x(i);θML)=y(i))
orome

Ve (ilk soru) Bunu anlıyorum. (1), tarafından , değerleri vardır olasılıkları (çünkü sadece 1'e ekleyeceklerini garanti eden softmax. Ama bu diğer hiçbir kısıtlama ; ( toplamları dışında ). Bu yüzden nasıl bir delik olarak PMF olarak düşünülebilir. ay(i)(x(i);θ)pmodel(O;θ)ay(i)(x(i);θML)ajjy(i)1ay(i)a(x(i);θML)
orome

İlk soruya başka bir yolu da ML sürecine sadece katılmasıdır ve bu nedenle sadece olasılık olarak düşünülebilir. Uygun bir aktivasyon fonksiyonu (örn. Softmax) , kalan aktivasyonların toplamının bir olasılık olmasını sağlarken , bunların herhangi biri arasındaki ilişkilerin hiçbir anlamı yoktur. ay(i)
orome

3

NN çıktılarının olasılık dağılımları olarak nasıl, ne zaman ve neden düşünebileceğimizin doğası hakkında biraz daha genel bir bakış açısıyla cevap vereceğim.

SoftMax çıkışları 1 toplamı ve ayrıca, negatif olarak zorlar Bu anlamda, ağ çıkışı olan sınıflar üzerinde ayrı bir dağılım, ya da en azından bu olarak yorumlanabilir. Bu nedenle çapraz entropiler ve maksimum olasılıklar hakkında konuşmak son derece makul.

Ancak, gördüğünüz (ve doğru olduğunu) düşünüyorum , çıktı "olasılıklar" gerçek doğruluk olasılığı ile ilgisi olmayabilir . Bu, ML'de kalibrasyon adı verilen iyi bilinen bir sorundur . Örneğin, ve kedi köpeklerinin sınıflandırıcısı diyorsa , bir dizi örneği alırsanız, tüm sahip olan (sadece% 70 güven beri), daha sonra girişler kabaca% 30 yanlış şekilde sınıflandırılacaktır.fθDCfθ(xi,C)=P(xi=C|θ)=0.7S={xj} P(xj=C|θ)=0.7

Ancak, modern eğitim yöntemlerinin bunu hiç zorlamadığı ortaya çıkıyor! Bkz Modern Sinir Ağlarının Kalibrasyon günü vd Guo, bu bazı tartışma görmek için.

Başka bir deyişle, softmax çıktısının "olasılığı" nın gerçek model güveni ile bir ilgisi olmayabilir . Ve bu bir sürpriz değil: sadece doğruluğumuzu en üst düzeye çıkarmak istiyoruz ve her girdi örneğinin 1 hedef sınıfı olma olasılığı var. Bunu doğru yapmak için modeli teşvik eden çok az şey var. Belirsizliği tahmin etmeye ihtiyaç duymuyorsa neden yapmalı? Çapraz entropi bu sorunu gidermez; aslında, her seferinde bir delta işlevine gitmesini söylüyorsunuz!

Bayes sinir ağları üzerinde son zamanlarda yapılan birçok çalışma bu sorunu gidermeye çalışmaktadır. Bu modeller, veri verilen parametreleri üzerinde bir dağılım kullanır gerçek bir olasılık dağılımı elde etmek için entegre edilebilir, . Bu, yararlı belirsizlik ölçümlerinin ve daha iyi kalibrasyonun garanti edilmesine yardımcı olur. Ancak, hesaplama açısından daha problemlidir.P(θ|X)=P(X|θ)P(θ)/P(X)P(yi|xi,X)=P(yi|θ,xi)P(θ|X)dθ

Umarım sorunuzu yanlış anlamadım!


Güzel bir çalışma: arxiv.org/abs/1711.01297
user3658307

0

İleri beslemeli sinir ağları, uygun şekilde eğitildiklerinde gerçek sınıf olasılıklarına yaklaşır.

1991 yılında, Richard ve Lippmann ileri beslemeli sinir ağlarının {0,1} sınıf göstergesi hedef modelleri ile eğitildiğinde posterior sınıf olasılıklarına yaklaştığını kanıtlamıştır [ Richard MD ve Lippmann RP (1991). Sinir ağı sınıflandırıcıları, bayesci posteriori olasılıkları tahmin eder. Sinirsel Hesaplama, 3, 461-483 .]. İspat çizgilerinde, tek gizli katman ileri beslemeli sinir ağlarını kullanıyorlar.

Duda & Hart'ın [ Duda RO ve Hart PE (1973) Desen Sınıflandırması ve Sahne Analizi, Wiley ] matematiksel notunda, ileri besleme sinir ağı için girdi vektörü olarak sağlanan özellik dağılımlarını olarak tanımlayın , örneğin, veri vektör eşittir , 4 özelliği değişkenli bir sınıflandırma görevi. dizini olası sınıfı belirtir, .x = ( 0.2 , 10.2 , 0 , 2 ) i n i { 1 , , n }P(xωi)x=(0.2,10.2,0,2)ini{1,,n}

İleri beslemeli sinir ağı sınıflandırıcısı , degrade iniş ile eğitildiğinde posterior olasılıkları öğrenir . İstenen çıktı modelinin , örneğin iki sınıflı bir sınıflandırma problemi için . İleri beslemeli sinir ağının sınıf başına bir çıkış düğümü vardır. Vektör , gözlemlenen özellik vektörünün 2. sınıfa ait olduğunu gösterir. o =(0,1)(0,1)P^(ωix)o=(0,1)(0,1)


Soru bu değil.
Orome

0

Günlük olasılığı, sorunuzun bağlamındaki entropiye doğrudan bağlı değildir. Benzerlik yüzeyseldir: her ikisi de olasılık benzeri miktarların logaritmalarının toplamına sahiptir.

Mantık olasılığındaki logaritma (MLE) yalnızca sayısal hesaplama nedenleriyle yapılır. Olasılıklar ürünü, özellikle numuneniz büyükse, çok küçük bir sayı olabilir. Daha sonra olasılık aralığı 1'den bir ürünün kaybolan küçük değerine gider. Günlüğü aldığınızda, ürün bir toplam haline gelir ve günlük işlevi, değer aralığını daha küçük, daha yönetilebilir bir etki alanına sıkıştırır. Logaritma tekdüze bir fonksiyondur, bu yüzden log-olasılığının maksimum (min) olasılığı muhtemelen aynı cevabı verecektir. Bu nedenle, kütlenin MLE ifadesinde bulunması matematiksel anlamda önemli değildir ve sadece bir kolaylık konusudur.

Entropide bir logaritma fonksiyonunun varlığı daha önemlidir ve kökleri, bir fizik dalı olan istatistik mekaniğindedir. Gaz teorisinde kullanılan Boltzmann dağılımıyla bağlantılıdır . Örneğin, hava basıncını kullanarak rakımın bir fonksiyonu olarak türetebilirsiniz.


Sorunun bu sorunun hangi kısmını ele aldığını vurgulayabilir misiniz?
orome

OP'de söylediğim gibi, günlüğü MLE'yi ifade etmenin ikinci yolunda kullanmanın sadece kolaylık olduğu açıktır (ilk iki paragrafınız). Ve son paragrafınız, entropi ifadesinde kütüğün varlığının anlamlı olduğunu söylüyor - entropi bağlamında (özellikle fizik). Ancak eksik olan (ve soru budur), bu iki ayrı (ve gerçek) gözlemi birbirine bağlamak için bir gerekçe. (3) 'ün sonraki denkleminden başka MLE için ikinci denklemi ifade etmenin faydalı bir yolu olduğunu görmüyorum. Belki de öyle diyorsun?
orome

@orome, elbette entropiyi hesaplamak için NN yapabilirsiniz, ancak çapraz entropi fonksiyonunun çoğu durumda aslında bu şekilde kullanılmaz. Bunu başka bir tür maliyet fonksiyonu olarak düşünebilirsiniz, hepsi burada. İstenen özelliklere sahip gibi görünüyor ve güzel simetrik.
Aksakal

Evet, bu yüzden entropi olarak adlandırmak veya anlamlı ("entropinin" herhangi bir görüş sağladığı) dağıtımlar yanıltıcıdır . ay(i)(x(i);θML)
orome

@orome, adı takıntı haline getirmezdim. "Menteşe kaybı" fonksiyonunun menteşelerle ilgisi yoktur. Buna "entropi kaybı" diyorlar çünkü fonksiyonel formu tam olarak bir bilgi entropi denklemine benzer.
Aksakal
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.