Dowiedziałem się o intuicji stojącej za dywergencją KL, jak bardzo funkcja rozkładu modelu różni się od teoretycznego / prawdziwego rozkładu danych. Źródłem Czytam mówi dalej, że intuicyjne rozumienie „odległość” między tymi dwoma dystrybucjami jest pomocny, ale nie powinny być brane dosłownie, bo dla dwóch rozkładów i , KL Rozbieżność nie jest symetryczny w i .
Nie jestem pewien, jak rozumieć ostatnie stwierdzenie, czy może właśnie tam załamuje się intuicja „odległości”?
Byłbym wdzięczny za prosty, ale wnikliwy przykład.
Odpowiedzi:
Odległość A (metryczna) musi być symetryczna, tj. . Ale z definicji nie jest.D D(P,Q)=D(Q,P) KL
Przykład: , , .Ω={A,B} P(A)=0.2,P(B)=0.8 Q(A)=Q(B)=0.5
Mamy:
i
zatem i dlatego nie jest odległością (metryczną).K LKL(P,Q)≠KL(Q,P) KL
źródło
Dodając do innych doskonałych odpowiedzi, odpowiedź z innego punktu widzenia, która może dodać nieco więcej intuicji, o którą poproszono.
Rozbieżność Kullbacka-Leiblera to Jeśli dwie hipotezy dotyczące dystrybucji, która jest do generowania danych , i , a jest współczynnikiem prawdopodobieństwo testowania na . Widzimy, że powyższa rozbieżność Kullbacka-Leiblera jest wówczas oczekiwaną wartością współczynnika logikeli w ramach alternatywnej hipotezy. Tak więc jest miarą trudności tego problemu testowego, gdy jest hipotezą zerową. A więc asymetriaX P Q p ( x )
Spójrzmy na to w konkretnym przykładzie. Niech będzie rozkładem a standardowym rozkładem normalnym (w przykładzie liczbowym poniżej ). Całka definiująca rozbieżność wygląda na skomplikowaną, więc zastosujmy po prostu całkowanie numeryczne w R:P tν Q ν=1
W pierwszym przypadku całka wydaje się rozbieżna numerycznie, wskazując, że rozbieżność jest bardzo duża lub nieskończona, w drugim przypadku jest niewielka, podsumowując: Pierwszy przypadek jest weryfikowany przez analityczną integrację symboliczną w odpowiedzi @ Xi'an tutaj: Jaka jest maksymalna wartość dywergencji Kullbacka-Leiblera (KL) .
Co nam to mówi w praktyce? Jeśli model zerowy jest standardowym rozkładem normalnym, ale dane są generowane z rozkładu , to całkiem łatwo jest odrzucić wartość zerową! Dane z dystrybucji nie wyglądają jak normalne dane rozproszone. W innym przypadku role są zmieniane. Wartość null to ale dane są normalne. Ale normalne dane rozproszone mogą wyglądać jak dane , więc ten problem jest znacznie trudniejszy! Tutaj mamy wielkość próbki , a wszystkie dane, które mogą pochodzić z rozkładu normalnego, mogą również pochodzić z ! Zmieniając role, nie, różnica wynika głównie z roli wartości odstających.t1 t1 t1 t1 n=1 t1
W alternatywnym rozkładzie istnieje dość duże prawdopodobieństwo uzyskania próbki, która ma bardzo małe prawdopodobieństwo w modelu zerowym (normalnym), co daje ogromną rozbieżność. Ale gdy rozkład alternatywny jest normalny, praktycznie wszystkie dane, które możemy uzyskać, będą miały umiarkowane prawdopodobieństwo (naprawdę gęstość ...) w modelu zerowym , więc rozbieżność jest niewielka.t1 t1
Jest to związane z moją odpowiedzią tutaj: dlaczego powinniśmy używać t błędów zamiast zwykłych błędów?
źródło
Po pierwsze, naruszenie warunku symetrii jest najmniejszym problemem z rozbieżnością Kullbacka-Leiblera. również narusza nierówność trójkąta. Możesz po prostu wprowadzić wersję symetryczną jako , ale nadal nie jest to metryczna, ponieważ zarówno i narusza nierówność trójkąta. Aby udowodnić, że wystarczy wziąć trzy tendencyjne monety A, B i C, które produkują znacznie mniej głów niż reszki, np. Monety o prawdopodobieństwie głów: A = 0,1, B = 0,2 i C = 0,3. W obu przypadkach regularna dywergencja KL D lub jej symetryczna wersja SKL, sprawdź, czy nie wypełniają nierówności trójkąta S K L ( P ⪈ D ( A | | C )D(P||Q)
Przedstawiłem ten przykład celowo. Wyobraźmy sobie, że rzucasz monetami, np. 100 razy. Tak długo, jak monety są obiektywne, po prostu kodujesz wyniki losowania w sekwencji 0-1 bitów (1-główka, 0-ogon). W takiej sytuacji, gdy prawdopodobieństwo głowy jest takie samo jak prawdopodobieństwo ogona i wynosi 0,5, jest to dość skuteczne kodowanie. Teraz mamy pewne tendencyjne monety, więc wolelibyśmy zakodować bardziej prawdopodobne wyniki za pomocą krótszego kodu, np. Scalić grupy głów i ogonów i reprezentować sekwencje k głów o dłuższym kodzie niż sekwencja k ogonów (są bardziej prawdopodobne). I tu pojawia się dywergencja Kullbacka-Leiblera . Jeśli P reprezentuje prawdziwy rozkład wyników, a Q jest jedynie przybliżeniem P, toD(P||Q) D(P||Q) oznacza karę, którą płacisz, gdy kodujesz wyniki, które faktycznie pochodzą z dystrybucji P z kodowaniem przeznaczonym dla Q (kara w znaczeniu dodatkowych bitów, których musisz użyć).
Jeśli potrzebujesz tylko metryki, skorzystaj z odległości Bhattacharyya (oczywiście zmodyfikowana wersja )1−[∑xp(x)q(x)−−−−−−−√]−−−−−−−−−−−−−−−√
źródło
Kusi mnie tutaj, aby udzielić czystej intuicyjnej odpowiedzi na twoje pytanie. Zmieniając to, co mówisz, rozbieżność KL jest sposobem pomiaru odległości między dwoma rozkładami, tak jak przy obliczaniu odległości między dwoma zestawami danych w przestrzeni Hilberta, ale należy zachować ostrożność.
Dlaczego? Rozbieżność KL nie jest odległością, której zwykle można użyć, na przykład normą . Rzeczywiście, jest dodatni i równy zero, tylko wtedy, gdy oba rozkłady są równe (jak w aksjomatach określających odległość). Ale jak wspomniano, nie jest symetryczny. Istnieją sposoby na obejście tego, ale ma sens, aby nie było symetryczne.L2
Rzeczywiście, rozbieżność KL definiuje odległość między rozkładem modelu (który faktycznie znasz) a teoretycznym tak że sensowne jest obsługiwanie w inny sposób („teoretyczna” odległość do przy założeniu, że model ) i („empiryczna” odległość do przy założeniu danych ), ponieważ oznaczają one całkiem różne miary.Q P KL(P,Q) P Q P KL(Q,P) P Q Q
źródło
Podręcznik Elementy teorii informacji daje nam przykład:
Aby sparafrazować powyższe stwierdzenie, możemy powiedzieć, że jeśli zmienimy rozkład informacji (z q na p), potrzebujemy średnio dodatkowych bitów D (p || q), aby zakodować nowy rozkład.
Ilustracja
Pozwól mi to zilustrować za pomocą jednej aplikacji w przetwarzaniu języka naturalnego.
Pod uwagę, że duża grupa ludzi, oznaczony B, są mediatorami, a każdy z nich jest przypisany zadania do wyboru z rzeczownika
turkey
,animal
abook
i przekazuje go do C. Jest to nazwa facet, który może wysłać każdy z nich e-maila, aby dać im kilka wskazówek. Jeśli nikt w grupie nie otrzyma wiadomości e-mail, może unieść brwi i wahać się przez chwilę, zastanawiając się, czego potrzebuje C. Prawdopodobieństwo wyboru każdej opcji wynosi 1/3. Zbyt jednolity rozkład (jeśli nie, może odnosić się do ich własnych preferencji i po prostu ignorujemy takie przypadki).Ale jeśli otrzymają czasownik, np.
baste
3/4 z nich może wybrać,turkey
a 3/16 wybraćanimal
i 1/16book
. Więc ile informacji w bitach uzyskał średnio każdy z mediatorów, gdy zna czasownik? To jest:Ale co jeśli podany czasownik jest
read
? Możemy sobie wyobrazić, że wszyscybook
wybraliby bez wahania, wówczas średni przyrost informacji dla każdego mediatora z czasownikaread
wynosi:read
może dostarczyć mediatorom więcej informacji. I to może mierzyć względna entropia.Kontynuujmy naszą historię. Jeśli C podejrzewa, że rzeczownik może się mylić, ponieważ A powiedział mu, że mógł popełnić błąd, wysyłając niewłaściwy czasownik do mediatorów. Ile informacji w bitach może dać C zła wiadomość?
1) jeśli czasownik podany przez A brzmiał
D(p(nouns)||p(nouns|baste))=∑x∈{turkey,animal,book}p(x)log2p(x)p(x|baste)=13∗log21334+13∗log213316+13∗log213116=0.69172 bits
baste
:2) ale co jeśli czasownik byłD(p(nouns)||p(nouns|baste))=∑x∈{book,∗,∗}p(x)log2p(x)p(x|baste)=13∗log2131+13∗log2130+13∗log2130=∞ bits
read
?Ponieważ C nigdy nie wie, jakie byłyby pozostałe dwa rzeczowniki i każde słowo w słownictwie byłoby możliwe.
Widzimy, że dywergencja KL jest asymetryczna.
Mam nadzieję, że mam rację, a jeśli nie, proszę o komentarz i pomoc w poprawieniu mnie. Z góry dziękuję.
źródło