Dlaczego dywergencja KL jest tak często używana w uczeniu maszynowym?

Dec 15 2020

Dywergencja KL jest dość łatwa do obliczenia w postaci zamkniętej dla prostych rozkładów - takich jak Gaussian - ale ma kilka niezbyt ładnych właściwości. Na przykład nie jest symetryczny (a więc nie jest metryką) i nie uwzględnia nierówności trójkątnej.

Z jakiego powodu jest tak często używany w ML? Czy nie ma innych odległości statystycznych, których można by użyć zamiast tego?

Odpowiedzi

2 rhdxor Dec 19 2020 at 16:52

To pytanie jest bardzo ogólne w tym sensie, że przyczyna może się różnić w zależności od rozważanego obszaru ML. Poniżej znajdują się dwa różne obszary ML, w których rozbieżność KL jest naturalną konsekwencją:

  • Klasyfikacja: maksymalizacji logarytm prawdopodobieństwa (lub minimalizując ujemny logarytm wiarogodności) jest równoważne do zminimalizowania rozbieżności KL jak typowe stosowane w klasyfikacji opartej DL gdzie rozgrzane cele są powszechnie wykorzystywane jako odniesienie, (patrzhttps://stats.stackexchange.com/a/357974). Ponadto, jeśli masz jeden gorący wektor$e_y$ z $1$ w indeksie $y$, minimalizując cross-entropię $\min_{\hat{p}}H(e_y, \hat{p}) = - \sum_y e_y \log \hat{p}_y = - \log \hat{p}$sprowadza się do maksymalizacji prawdopodobieństwa logowania. Podsumowując, maksymalizacja logarytmicznego prawdopodobieństwa jest prawdopodobnie naturalnym celem, a dywergencja KL (z 0 log 0 zdefiniowaną jako 0) pojawia się z powodu jej równoważności z logarytmicznym prawdopodobieństwem w typowych ustawieniach, a nie z wyraźnej motywacji jako celu.
  • Wieloręcy bandyci (podobszar uczenia się przez wzmacnianie): Górna granica ufności (UCB) to algorytm wyprowadzony ze standardowych nierówności stężenia. Jeśli weźmiemy pod uwagę MAB z nagrodami Bernoulliego, możemy zastosować granicę Chernoffa i zoptymalizować parametr swobodny, aby uzyskać górną granicę wyrażoną jako dywergencja KL, jak podano poniżej (patrzhttps://page.mi.fu-berlin.de/mulzer/notes/misc/chernoff.pdf dla różnych dowodów).

Pozwolić $X_1, \dots, X_n$ być iid Bernoulli RV z parametrem $p$. $$P(\sum_i X_i \geq (p+t)n) \leq \inf_\lambda M_X (\lambda) e^{-\lambda t} = \exp(-n D_{KL}(p+t||p)).$$

1 ArayKarjauv Dec 19 2020 at 21:11

W ML zawsze mamy do czynienia z nieznanymi rozkładami prawdopodobieństwa, z których pochodzą dane. Najczęstszym sposobem obliczania odległości między rozkładem rzeczywistym a rozkładem modelu jest$KL$ rozbieżność.

Dlaczego dywergencja Kullbacka-Leiblera?

Chociaż istnieją inne funkcje strat (np. MSE, MAE), $KL$dywergencja jest naturalna, gdy mamy do czynienia z rozkładami prawdopodobieństwa. Jest to podstawowe równanie teorii informacji, które określa ilościowo w bitach, jak bliskie są dwa rozkłady prawdopodobieństwa. Nazywa się ją również entropią względną i, jak sama nazwa wskazuje, jest ściśle związana z entropią, która z kolei jest centralnym pojęciem teorii informacji. Przypomnijmy definicję entropii dla przypadku dyskretnego:

$$ H = -\sum_{i=1}^{N} p(x_i) \cdot \text{log }p(x_i) $$

Jak zauważyłeś, sama entropia jest tylko miarą pojedynczego rozkładu prawdopodobieństwa. Jeśli nieznacznie zmodyfikujemy tę formułę, dodając drugą dystrybucję, otrzymamy$KL$ rozbieżność:

$$ D_{KL}(p||q) = \sum_{i=1}^{N} p(x_i)\cdot (\text{log }p(x_i) - \text{log }q(x_i)) $$

gdzie $p$ to dystrybucja danych i $q$ to dystrybucja modelu.

Jak możemy zobaczyć, $KL$dywergencja jest najbardziej naturalnym sposobem porównania dwóch rozkładów. Co więcej, jest to dość łatwe do obliczenia. Ten artykuł zawiera więcej intuicji na ten temat:

Zasadniczo to, na co patrzymy z dywergencją KL, to oczekiwana różnica logarytmiczna między prawdopodobieństwem danych w pierwotnym rozkładzie a rozkładem przybliżonym. Ponownie, jeśli myślimy w kategoriach$log_2$ możemy to zinterpretować jako „ile bitów informacji spodziewamy się stracić”.

Entropia krzyżowa

Entropia krzyżowa jest powszechnie używana w uczeniu maszynowym jako funkcja straty, w której mamy warstwę wyjściową softmax (lub sigmoidalną), ponieważ reprezentuje ona predykcyjny rozkład klas. Wyjście typu one-hot reprezentuje rozkład modelu$q$, podczas gdy prawdziwe etykiety reprezentują rozkład docelowy $p$. Naszym celem jest pchanie$q$ do $p$tak blisko jak to możliwe. Moglibyśmy przyjąć średni kwadrat błędu dla wszystkich wartości lub moglibyśmy zsumować różnice bezwzględne, ale jedyną miarą motywowaną przez teorię informacji jest entropia krzyżowa. Daje średnią liczbę bitów potrzebnych do zakodowania próbek rozprowadzonych jako$p$, za pomocą $q$ jako dystrybucja kodowania.

Entropia krzyżowa oparta na entropii i generalnie oblicza różnicę między dwoma rozkładami prawdopodobieństwa i jest ściśle z nimi związana $KL$rozbieżność. Różnica polega na tym, że oblicza całkowitą entropię między rozkładami, a$KL$dywergencja reprezentuje względną entropię. Korsów-entropię można zdefiniować następująco:

$$ H(p, q) = H(p) + D_{KL}(p \parallel q) $$

Pierwszym członem tego równania jest entropia prawdziwego rozkładu prawdopodobieństwa $p$ to jest pomijane podczas optymalizacji, ponieważ entropia $p$jest stała. Stąd minimalizowanie cross-entropii jest tym samym, co optymalizacja$KL$ rozbieżność.

Prawdopodobieństwo dziennika

Można również wykazać, że maksymalizacja (log) prawdopodobieństwa jest równoznaczna z minimalizacją entropii krzyżowej.

Ograniczenia

Jak wspomniałeś, $KL$dywergencja nie jest symetryczna. Ale w większości przypadków nie jest to krytyczne, ponieważ chcemy oszacować rozkład modelu, przesuwając go w kierunku rzeczywistego, ale nie odwrotnie. Istnieje również symetryzowana wersja zwana dywergencją Jensena – Shannona :$$ D_{JS}(p||q)=\frac{1}{2}D_{KL}(p||m)+\frac{1}{2}D_{KL}(q||m) $$ gdzie $m=\frac{1}{2}(p+q)$.

Główna wada $KL$polega na tym, że zarówno nieznana dystrybucja, jak i dystrybucja modelu muszą mieć wsparcie. W przeciwnym razie$D_{KL}(p||q)$ staje się $+\infty$ i $D_{JS}(p||q)$ staje się $log2$

Po drugie, należy to zauważyć $KL$nie jest metryką, ponieważ narusza nierówność trójkątów. Oznacza to, że w niektórych przypadkach nie powie nam, czy zmierzamy we właściwym kierunku podczas szacowania rozkładu naszego modelu. Oto przykład zaczerpnięty z tej odpowiedzi . Biorąc pod uwagę dwa dyskretne rozkłady$p$ i $q$obliczamy $KL$ dywergencja i metryka Wassersteina:

Jak widzisz, $KL$ dywergencja pozostała taka sama, podczas gdy wskaźnik Wassersteina zmniejszył się.

Ale jak wspomniano w komentarzach, metryka Wassersteina jest wysoce trudna do przetworzenia w ciągłej przestrzeni. Nadal możemy go użyć, stosując dwoistość Kantorowicza-Rubinsteina zastosowaną w Wasserstein GAN . Więcej informacji na ten temat znajdziesz w tym artykule .

Dwie wady $KL$można złagodzić dodając szum. Więcej na ten temat w tym artykule