Jak istotny jest związek między MLE a entropią krzyżową w głębokim uczeniu się?


12

I rozumie, że dany zestaw niezależnych obserwacji największej wiarygodności Estymator (lub równoważnie MAP o płaskich / jednolity wcześniej), który identyfikuje Parametry \ mathbf {θ} , które wytwarzają model dystrybucji p_ {wzór} \ left (\, \ cdot \,; \ mathbf {θ} \ right) najlepiej pasujące do tych obserwacjimO={o(1),...,o(m)}θpmodel(;θ)

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

lub wygodniej

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

i zobacz rolę, jaką θML może odgrywać w definiowaniu funkcji utraty dla wieloklasowych głębokich sieci neuronowych, w której θ odpowiada parametrom sieci możliwym do wyszkolenia (np. θ={W,b}) obserwacje to pary aktywacji wejściowych x i odpowiadające im prawidłowe etykiety klas y[1,k] , o(i) = { x(i),y(i) }, biorąc

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


Nie rozumiem, w jaki sposób odnosi się to do tak zwanej „entropii krzyżowej” (wektoryzowanego) prawidłowego wyjścia, , i odpowiednich aktywacji wyjściowych sieci, , które są stosowane w praktyce, gdy błąd pomiaru / straty podczas treningu . Istnieje kilka powiązanych problemów: a ( x ( i ) ; θ )H( o ( i ) ; θ )=- y ( i ) l o gy(i)a(x(i);θ)

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


Aktywacje „jako prawdopodobieństwa”

Jednym z kroków w ustalaniu związku między MLE a entropią krzyżową jest użycie aktywacji wyjściowych „tak jakby” były prawdopodobieństwami. Ale nie jest dla mnie jasne, że tak jest, a przynajmniej że są.all

Przy obliczaniu błędu szkolenia - w szczególności nazywając go „stratą z entropii krzyżowej” - zakłada się, że (po normalizacji aktywacji sumuje się do 1)

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

lub

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

abyśmy mogli pisać

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

a zatem

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

Ale choć z pewnością sprawia to, że prawdopodobieństwo (o ile cokolwiek jest), to jednak nie nakłada żadnych ograniczeń na inne aktywacje.ay(i)(x(i);θML)

Czy naprawdę można powiedzieć, że to PMF? Czy jest coś, co sprawia, że w rzeczywistości nie jest prawdopodobieństwem (a jedynie „polubieniem” ich )? a y ( i ) ( x ( i ) ; θ M L )ay(i)(x(i);θML)ay(i)(x(i);θML)


Ograniczenie do kategoryzacji

Kluczowy krok powyżej w zrównaniu MLE z entropią krzyżową opiera się całkowicie na strukturze „one-hot” z która charakteryzuje (jednoznakowy) problem uczenia się w wielu klasach. Każda inna struktura dla uniemożliwiłaby przejście z do .y ( i ) (1) (3)y(i)y(i)(1)(3)

Czy równanie MLE i minimalizacji krzyżowej entropii jest ograniczone do przypadków, w których są „one-hot”? y(i)


Różne prawdopodobieństwa szkolenia i prognozowania

Podczas przewidywania prawie zawsze tak jest

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

co skutkuje poprawnymi prawdopodobieństwami przewidywania, które różnią się od prawdopodobieństw wyuczonych podczas szkolenia, chyba że jest to wiarygodne

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

Czy tak jest zawsze w niezawodny sposób? Czy to jest przynajmniej w przybliżeniu prawda? Czy jest jakiś inny argument, który uzasadnia to równanie wartości wyuczonej aktywacji w pozycji etykiety z prawdopodobieństwem, że występuje tam maksymalna wartość wyuczonej aktywacji?


Entropia i teoria informacji

Nawet zakładając, że powyższe obawy zostały rozwiązane, a aktywacje są poprawnymi PMF (lub można je w znaczący sposób traktować jako takie), więc rola odgrywana przez entropię krzyżową w obliczeniach jest bezproblemowa, nie jest jasne, że ja, dlaczego rozmowa o entropii jest pomocna lub znacząca , skoro entropia Shanona dotyczy określonego rodzaj kodowania , którego nie używa się do szkolenia sieci. a( x ( i ) ; θ M L )θMLa(x(i);θML)

Jaką rolę odgrywa entropia teorii informacji w interpretacji funkcji kosztu, w przeciwieństwie do zwykłego dostarczenia narzędzia (w postaci entropii krzyżowej) do obliczenia (odpowiadającego MLE)?

Odpowiedzi:


5

Sieci neuronowe niekoniecznie dają prawdopodobieństwa jako dane wyjściowe, ale można je tak zaprojektować. Aby interpretować je jako prawdopodobieństwa, zbiór wartości musi być nieujemny i sumować się do jednego. Projektowanie sieci pod kątem prawdopodobieństw wyjściowych zwykle oznacza wybranie warstwy wyjściowej, która nakłada te ograniczenia. Na przykład, w przypadku problemu klasyfikacji z klasami , powszechnym wyborem jest warstwa wyjściowa softmax z jednostkami . Funkcja softmax wymusza, aby wyjścia były nieujemne i sumowały się do jednego. th jednostki wyjściowej daje prawdopodobieństwo, że klasa jest . W przypadku problemów z klasyfikacją binarną kolejnym popularnym wyborem jest użycie pojedynczej jednostki wyjściowej z logistykąk j jkkjjfunkcja aktywacji. Dane wyjściowe funkcji logistycznej mieszczą się w przedziale od zera do jednego i dają prawdopodobieństwo, że klasa wynosi 1. Prawdopodobieństwo, że klasa wynosi 0, domyślnie wynosi jeden minus ta wartość. Jeśli sieć nie zawiera ukrytych warstw, wówczas te dwa przykłady są równoważne odpowiednio wielomianowej regresji logistycznej i regresji logistycznej .

Entropia krzyżowa mierzy różnicę między dwoma rozkładami prawdopodobieństwa i . Gdy entropia krzyżowa jest używana jako funkcja straty dla dyskryminujących klasyfikatorów, i są rozkładami na etykiety klas, biorąc pod uwagę dane wejściowe (tj. Określony punkt danych). jest rozkładem „prawdziwym”, zaś jest rozkładem przewidywanym przez model. W typowych problemach z klasyfikacją każde wejście w zestawie danych jest powiązane z etykietą całkowitą reprezentującą prawdziwą klasę. W tym przypadku używamy rozkładu empirycznego dlap q p q p q p qH(p,q)pqpqpqp. To po prostu przypisuje prawdopodobieństwo 1 do prawdziwej klasy punktu danych, a prawdopodobieństwo 0 do wszystkich innych klas. jest rozkładem prawdopodobieństw klas przewidywanych przez sieć (np. jak opisano powyżej).q

Powiedzmy, że dane to iid, to rozkład empiryczny, a to przewidywany rozkład (dla tego punktu danych). Następnie minimalizacja utraty entropii krzyżowej (tj. uśredniona dla punktów danych) jest równoważna maksymalizacji prawdopodobieństwa danych. Dowód jest stosunkowo prosty. Podstawową ideą jest wykazanie, że utrata entropii krzyżowej jest proporcjonalna do sumy przewidywanych prawdopodobieństw punktów danych w logu ujemnym. Wynika to starannie z powodu formy rozkładu empirycznego.q i i H ( p i , q i )piqiiH(pi,qi)

Utratę entropii krzyżowej można również zastosować bardziej ogólnie. Na przykład w przypadku problemów z „miękką klasyfikacją” podajemy rozkłady zamiast etykiet klas, a nie twardych etykiet (więc nie używamy rozkładu empirycznego). Opiszę jak używać przekrój utraty entropii w tym przypadku tutaj .

Aby odpowiedzieć na kilka innych szczegółów pytania:

Różne prawdopodobieństwa szkolenia i prognozowania

Wygląda na to, że znajdujesz jednostkę wyjściową z maksymalną aktywacją i porównujesz ją z etykietą klasy. Nie odbywa się to w przypadku treningu z wykorzystaniem utraty entropii krzyżowej. Zamiast tego prawdopodobieństwa wyprowadzane przez model są porównywane z „prawdziwymi” prawdopodobieństwami (zwykle uważanymi za rozkład empiryczny).

Entropia Shanon ma zastosowanie do określonego rodzaju kodowania, które nie jest używane w szkoleniu sieci.

Entropia krzyżowa może być interpretowana jako liczba bitów na komunikat potrzebna (średnio) do zakodowania zdarzeń wyciągniętych z rozkładu rzeczywistego , jeśli stosuje się optymalny kod dla rozkładu . Entropia krzyżowa przyjmuje minimalną wartość (entropia Shannona ), gdy . Im lepsze dopasowanie pomiędzy orazp q H ( p ) p q = p q pH(p,q)pqH(p)pq=pqp, krótsza długość wiadomości. Trenowanie modelu w celu zminimalizowania entropii krzyżowej można postrzegać jako szkolenie go w celu lepszego przybliżenia prawdziwego rozkładu. W nadzorowanych problemach z uczeniem się, takich jak omawiany, model podaje rozkład prawdopodobieństwa między możliwymi wynikami, biorąc pod uwagę dane wejściowe. Jawne znalezienie optymalnych kodów dla dystrybucji nie jest częścią tego procesu.


„Nie odbywa się to w przypadku treningu z wykorzystaniem utraty entropii krzyżowej”. Dokładnie tak działają API takie jak TensorFlow softmax_cross_entropy_with_logits: obliczają a zatem który definiuje sieć „zaprojektowaną” do generowania prawdopodobieństw (przynajmniej w miejscu etykiety). Nie? θ M L ( O )argminθi=1mH(o(i);θ)θML(O)
orome

Tak, entropia krzyżowa jest zminimalizowana, a prawdopodobieństwo jest zmaksymalizowane (przynajmniej lokalnie). W tym zdaniu odwoływałem się do równań w części „Różne prawdopodobieństwa treningu i prognozowania”. Patrząc na to jeszcze raz, nie jest dla mnie jasne, co masz na myśli przez te równania, więc powiem tylko: jeśli używasz warstwy wyjściowej, w której każda jednostka podaje prawdopodobieństwo klasy (np. softmax). Prawdopodobieństwa modelu są takie same podczas treningu i prognozowania. pmodel(y(i)=jx(i);θ)=aj(x(i);θ)
user20160,

Rozumiem, że używane są te same wartości - czyli wyuczone są używane w przewidywaniu - ale są one używane na różne sposoby. Prawdopodobieństwo, że model uczy się dla jest rzeczywiście , ale prawdopodobieństwo, że będzie przewidywane przez wyuczony model w odpowiedzi na te same dane wejściowe to . Nie są takie same, chyba że (2) jest prawdziwe. 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

I (pierwsze pytanie) Rozumiem to z powodu roli zdefiniowanej w równaniu. (1), grany przez w maksymalizacji The wartości prawdopodobieństw (nie z powodu softmax, który tylko zapewnia, że ​​dodadzą do 1). Ale to nie nakłada żadnych ograniczeń na inne ; (inne niż suma ). Nie rozumiem więc, jak jako dziurę można uznać za PMF. ay(i)(x(i);θ)pmodel(O;θ)ay(i)(x(i);θML)ajjy(i)1ay(i)a(x(i);θML)
orome

Innym sposobem na podkreślenie pierwszego pytania jest to, że tylko kiedykolwiek uczestniczą w procesie ML, a zatem tylko one można uznać za prawdopodobieństwa. I chociaż odpowiednia funkcja aktywacji (np. Softmax) zapewnia, że suma pozostałych aktywacji będzie prawdopodobieństwem, relacje między dowolnymi z nich nie mają znaczenia. ay(i)
orome

3

Odpowiem z nieco bardziej ogólnej perspektywy, dotyczącej natury tego, jak, kiedy i dlaczego możemy uznać dane wyjściowe NN za rozkłady prawdopodobieństwa.

W tym sensie, że softmax wymusza sumowanie wartości wyjściowych do 1, a także jest nieujemny, wynik sieci jest dyskretnym rozkładem prawdopodobieństwa między klasami lub przynajmniej może być interpretowany jako taki. Dlatego całkowicie uzasadnione jest mówienie o entropiach krzyżowych i maksymalnych prawdopodobieństwach.

Jednak to, co myślę, że widzisz (i jest poprawne), to to, że wyjściowe „prawdopodobieństwa” mogą nie mieć nic wspólnego z rzeczywistym prawdopodobieństwem poprawności . Jest to dobrze znany problem w ML, zwany kalibracją . Na przykład, jeśli twój klasyfikator psów i kotów mówi , to można się spodziewać, że jeśli weźmiesz zestaw przykładów z których wszystkie miały , wówczas około 30% danych wejściowych zostałoby błędnie zaklasyfikowanych (ponieważ było to tylko 70% pewności).fθDCfθ(xi,C)=P(xi=C|θ)=0.7S={xj} P(xj=C|θ)=0.7

Okazuje się jednak, że nowoczesne metody treningowe wcale tego nie egzekwują! Zobacz Guo i in., On the Calibration of Modern Neural Networks, aby zobaczyć trochę dyskusji na ten temat.

Innymi słowy, „prawdopodobieństwo” wyjścia z softmax może nie mieć nic wspólnego z faktyczną pewnością modelu. I nie jest to zaskoczeniem: chcemy po prostu zmaksymalizować naszą dokładność, a każdy przykład danych wejściowych ma prawdopodobieństwo 1 jako swojej klasy docelowej. Model ten nie zachęca w niewielkim stopniu do osiągnięcia tego celu. Jeśli nie trzeba szacować niepewności, to dlaczego? Cross-entropia nie rozwiązuje tego problemu; w rzeczy samej, mówisz mu, żeby za każdym razem przechodził do funkcji delta!

Wiele ostatnich prac nad bayesowskimi sieciami neuronowymi dąży do rozwiązania tego problemu. Takie modele wykorzystują rozkład parametrów, biorąc pod uwagę dane , które można zintegrować w celu uzyskania rzeczywistego rozkładu prawdopodobieństwa . Pomaga to zagwarantować użyteczne pomiary niepewności i lepszą kalibrację. Jest to jednak bardziej problematyczne obliczeniowo.P ( y i | x i , X ) = P ( y i | θ , x i ) P ( θ | X )P(θ|X)=P(X|θ)P(θ)/P(X)P(yi|xi,X)=P(yi|θ,xi)P(θ|X)dθ

Mam nadzieję, że nie zrozumiałem źle twojego pytania!


A nice związane z tym prace: arxiv.org/abs/1711.01297
user3658307

0

Sieci neuronowe ze sprzężeniem zwrotnym przybliżają prawdziwe prawdopodobieństwa klasowe, jeśli są odpowiednio trenowane.

W 1991 r. Richard i Lippmann udowodnili, że sieci neuronowe ze sprzężeniem zwrotnym zbliżają się do prawdopodobieństw klasy tylnej, gdy są szkolone z wzorcami docelowymi wskaźnika klasy {0,1} [ Richard MD i Lippmann RP (1991). Klasyfikatory sieci neuronowych szacują prawdopodobieństwo bayesowskie a posteriori. Neural Computation, 3, 461– 483. ]. W swojej linii dowodowej wykorzystują sieci neuronowe z jedną ukrytą warstwą.

W adnotacji matematycznej Dudy i Harta [ Duda RO & Hart PE (1973) Klasyfikacja wzorców i analiza scen, Wiley ], zdefiniuj rozkłady cech dostarczone jako wektor wejściowy do sieci neuronowej ze sprzężeniem zwrotnym jako , gdzie na przykład wektor danych jest równy , dla zadania klasyfikacji z 4 zmiennymi cech. Indeks wskazuje możliwe klas, .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}

Klasyfikator sieci neuronowej ze uczy się tylnych prawdopodobieństw, , gdy jest trenowany przez spadek gradientu. Żądane wymagania wzór wyjściowy dla przykładu być , do problemu klasyfikacji, dwie klasy. Sieć neuronowa ze sprzężeniem zwrotnym ma jeden węzeł wyjściowy na klasę. Wektor wskazuje, że obserwowany wektor cech należy do drugiej klasy. o =(0,1)(0,1)P^(ωix)o=(0,1)(0,1)


To nie jest pytanie.
orome

0

Prawdopodobieństwo dziennika nie jest bezpośrednio powiązane z entropią w kontekście twojego pytania. Podobieństwo jest powierzchowne: oba mają sumy logarytmów wielkości podobnych do prawdopodobieństwa.

Logarytm w logarytmie prawdopodobieństwa (MLE) jest wykonywany wyłącznie ze względów numerycznych. Iloczyn prawdopodobieństwa może być bardzo małą liczbą, szczególnie jeśli próbka jest duża. Wówczas zakres prawdopodobieństwa zmienia się od 1 do znikomo małej wartości produktu. Po otrzymaniu dziennika produkt staje się sumą, a funkcja dziennika kompresuje zakres wartości do mniejszej, łatwiejszej do zarządzania domeny. Logarytm jest funkcją monotonna, więc maksimum (min) logarytmu prawdopodobieństwa da tę samą odpowiedź samego prawdopodobieństwa. Zatem obecność logu w wyrażeniu MLE nie jest ważna w sensie matematycznym i jest po prostu kwestią wygody.

Obecność funkcji logarytmicznej w entropii jest bardziej znacząca i ma swoje korzenie w mechanice statystycznej, gałęzi fizyki. Jest to związane z rozkładem Boltzmanna , który jest wykorzystywany w teorii gazów. Możesz na przykład wyliczyć ciśnienie powietrza jako funkcję wysokości.


Czy możesz wskazać, do jakiej części pytania odnosi się to?
orome

Jak mówię w OP, jasne jest, że użycie dziennika w drugim sposobie wyrażania MLE jest zwykłą wygodą (pierwsze dwa akapity). A twój ostatni akapit wydaje się po prostu mówić, że obecność logu w wyrażeniu dla entropii jest znacząca - w kontekście entropii (zwłaszcza fizyki). Ale czego brakuje (i to jest pytanie) jest uzasadnieniem połączenia tych dwóch odrębnych (i prawdziwych) obserwacji. Nie widzę jednego, innego niż równanie po (3), które jest użytecznym sposobem wyrażenia drugiego równania dla MLE. Być może tak mówisz?
orome

@orome, możesz oczywiście zrobić NN, aby obliczyć entropię, ale w większości przypadków tak nie jest używana funkcja entropii krzyżowej. Możesz myśleć o tym jako o innym rodzaju funkcji kosztowej, to wszystko o to tutaj. Wydaje się mieć pożądane właściwości i jest symetryczny.
Aksakal

Tak, więc nazywając go entropią lub sugerując, że ma znaczenie rozproszenia (dla których „entropia” zapewnia wgląd) są mylące . ay(i)(x(i);θML)
orome

@orome, nie miałbym obsesji na punkcie tego imienia. To tak, jakby funkcja „utraty zawiasu” niewiele miała wspólnego z zawiasami. Nazywają to „utratą entropii”, ponieważ jej funkcjonalna forma przypomina dokładnie równanie entropii informacyjnej.
Aksakal,
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.