Czy można wykorzystać algorytmy uczenia maszynowego lub uczenia głębokiego do „usprawnienia” procesu próbkowania techniki MCMC?

21

Opierając się na małej wiedzy, którą mam na temat metod MCMC (łańcuch Markowa Monte Carlo), rozumiem, że pobieranie próbek jest kluczową częścią wyżej wspomnianej techniki. Najczęściej stosowanymi metodami próbkowania są Hamiltonian i Metropolis.

Czy istnieje sposób wykorzystania uczenia maszynowego, a nawet uczenia głębokiego w celu stworzenia bardziej wydajnego samplera MCMC?

Jespar
źródło
5
Czy mógłbyś sprecyzować, jakie „ulepszenie” masz na myśli i jak widzisz rolę uczenia maszynowego?
Tim
2
Zazwyczaj MCMC zwykle obejmuje oszacowanie wartości z wyrażeń bez zamkniętej formy, które są po prostu zbyt skomplikowane, aby znaleźć rozwiązania analityczne. Możliwe jest, że klastrowanie wielowymiarowe (lub podobne podejście) może być wykorzystane do oszacowania prostszych gęstości wielowymiarowych, ale widziałbym to bardziej jako alternatywę dla korzystania z MCMC.
AdamO,
1
@AdamO, dlaczego nie przekonwertować tego na odpowiedź? Wygląda na to, że może być tak dobry, jak to tylko możliwe.
gung - Przywróć Monikę
@ Tym razem Z tego, co przeczytałem, MCMC pobiera próbki z rozkładu, aby obliczyć wielkości wnioskowania. Algorytm MH losowo wybiera „lokalizacje”, a następnie stwierdza, czy są one dopuszczalne. Zastanawiałem się, czy istnieją alternatywne techniki ML. Wiem, że to brzmi niejasno i przepraszam za to, ale MCMC jest intrygujące i staram się opanować teorię i praktyczne zastosowania poprzez samokształcenie.
Jespar

Odpowiedzi:

27

Tak. W przeciwieństwie do innych odpowiedzi, „typowe” metody uczenia maszynowego, takie jak nieparametryczne i (głębokie) sieci neuronowe, mogą pomóc w tworzeniu lepszych samplerów MCMC.

Celem MCMC jest pobranie próbek z (nienormalizowanego) rozkładu docelowego . Uzyskane próbki są używane do przybliżenia i najczęściej pozwalają obliczyć oczekiwania funkcji dla (tj. Całki wielowymiarowe), a w szczególności właściwości (takie jak momenty).fa(x)fafafa

Próbkowanie zwykle wymaga dużej liczby ocen i ewentualnie jego gradientu, dla metod takich jak Hamiltonian Monte Carlo (HMC). Jeśli ocena jest kosztowna lub gradient jest niedostępny, czasami można zbudować tańszą funkcję zastępczą, która może pomóc w próbkowaniu i jest oceniana zamiast (w sposób, który nadal zachowuje właściwości MCMC).fafafa

Na przykład w artykule podsumowującym ( Rasmussen 2003 ) proponuje się wykorzystanie Procesów Gaussa (aproksymacja funkcji nieparametrycznej) do zbudowania aproksymacji do i wykonania HMC dla funkcji zastępczej, z jedynie etapem akceptacji / odrzucenia HMC na podstawie . Zmniejsza to liczbę ocen oryginalnego i pozwala wykonać MCMC na plikach pdf, które w innym przypadku byłyby zbyt drogie do oceny.logfafafa

Pomysł wykorzystania surogatów w celu przyspieszenia MCMC był często badany w ciągu ostatnich kilku lat, zasadniczo poprzez wypróbowanie różnych sposobów budowy funkcji zastępczej i łączenia jej efektywnie / adaptacyjnie z różnymi metodami MCMC (i w sposób, który zachowuje poprawność „pobierania próbek MCMC). W związku z pytaniem te dwa najnowsze artykuły wykorzystują zaawansowane techniki uczenia maszynowego - losowe sieci ( Zhang i in. 2015 ) lub adaptacyjnie poznane wykładnicze funkcje jądra ( Strathmann i in. 2015 ) - do zbudowania funkcji zastępczej.

HMC nie jest jedyną formą MCMC, która może korzystać z surogatów. Na przykład Nishiara i in. (2014) zbuduj aproksymację docelowej gęstości, dopasowując wielowymiarowy rozkład Studenta do stanu wielołańcuchowego zespołu próbkującego zestaw, i użyj go do wykonania uogólnionej formy eliptycznego próbkowania wycinka .t

To tylko przykłady. Ogólnie rzecz biorąc, do wyodrębnienia informacji, które mogłyby poprawić wydajność próbników MCMC, można użyć szeregu różnych technik ML (głównie w zakresie aproksymacji funkcji i szacowania gęstości) . Ich faktyczna użyteczność - np. Mierzona liczbą „skutecznych niezależnych próbek na sekundę” - zależy od tego, czy jest kosztowny lub nieco trudny do obliczenia; ponadto wiele z tych metod może wymagać dostrajania własnej lub dodatkowej wiedzy, co ogranicza ich zastosowanie.fa

Referencje:

  1. Rasmussen, Carl Edward. „Procesy gaussowskie przyspieszające hybrydowe Monte Carlo dla drogich całek bayesowskich”. Bayesian Statistics 7. 2003.

  2. Zhang, Cheng, Babak Shahbaba i Hongkai Zhao. „Przyspieszenie Hamiltonian Monte Carlo za pomocą funkcji zastępczych z losowymi zasadami”. nadruk arXiv arXiv: 1506.05555 (2015).

  3. Strathmann, Heiko i in. „Bez gradientu Hamiltonian Monte Carlo z wydajnymi rodzinami wykładniczymi jądra”. Postępy w systemach przetwarzania informacji neuronowych. 2015 r.

  4. Nishihara, Robert, Iain Murray i Ryan P. Adams. „Równoległe MCMC z uogólnionym eliptycznym próbkowaniem wycinków”. Journal of Machine Learning Research 15.1 (2014): 2087-2112.

Lacerbi
źródło
2
Nie jestem pewien, czy wymienione przez ciebie metody należą do kategorii „metod uczenia maszynowego”, a raczej tylko standardowych metod MCMC (chociaż jest to najbardziej niewyraźna linia). Jedyną, która ostatecznie wydaje się być metodą ML / DL, była 3, która od tego czasu usunęła „tytułową sieć neuronową” z tytułu (i wydaje się przyznawać w tekście, że stosowanie standardowych metod ML byłoby zbyt wolne).
Cliff AB
2
@CliffAB dzięki. Zgadzam się, że linia jest nieco rozmyta dla niektórych z tych metod (np. 4 używa prostego dopasowania - ale ich metoda mogłaby użyć bardziej złożonej techniki szacowania gęstości). Co do reszty, to zależy od tego, czy rozważasz (nieparametryczne) przybliżenie funkcji, takie jak GP, czy oszacowanie gęstości, technikę ML, czy nie. Jeśli nie, to w porządku, ale nie jestem pewien, co to jest technika ML. (OP poprosił o techniki ML lub DL w celu poprawy MCMC.)t
lacerbi
1
Dziękuję bardzo @lacerbi. Cieszę się, że mogę wykorzystać twoje referencje jako podstawę do dalszych badań.
Jespar
6

Metodą, która mogłaby połączyć te dwie koncepcje, jest wielowymiarowy algorytm Metropolis Hastings. W tym przypadku mamy rozkład docelowy (rozkład tylny) i rozkład propozycji (zwykle wielowymiarowy rozkład normalny lub rozkład t).

Dobrze znany jest fakt, że im dalej rozkład propozycji jest od rozkładu tylnego, tym mniej skuteczny jest sampler. Można więc sobie wyobrazić zastosowanie jakiejś metody uczenia maszynowego do zbudowania rozkładu propozycji, który lepiej pasuje do prawdziwego rozkładu tylnego niż zwykły wielowymiarowy rozkład normalny / t.

Nie jest jednak jasne, czy byłaby to jakakolwiek poprawa wydajności. Sugerując głębokie uczenie się, zakładam, że możesz być zainteresowany zastosowaniem pewnego rodzaju podejścia do sieci neuronowej. W większości przypadków byłoby to znacznie droższe obliczeniowo niż sama metoda waniliowej metody MCMC. Podobnie, nie znam żadnego powodu, dla którego metody NN (lub nawet większość metod uczenia maszynowego) wykonują dobrą pracę, zapewniając odpowiednią gęstość poza obserwowaną przestrzenią, co jest kluczowe dla MCMC. Dlatego nawet ignorując koszty obliczeniowe związane z budowaniem modelu uczenia maszynowego, nie widzę dobrego powodu, dla którego poprawiłoby to wydajność próbkowania.

Cliff AB
źródło
Cliff AB Czuję, że ty i @AdamO wyjaśniłeś mi koncepcje MCMC i ML bardziej niż spędzanie godzin na innej książce. Doceniam wasz wysiłek i cieszę się, że wspomnieliście o niektórych obszarach, w których mogę dalej zagłębić się.
Jespar
@Dokładnie do której książki się odnosisz?
AdamO
@AdamO Obecnie czytam Reinforcement Learning autorstwa Richarda Sutton i Machine Learning: A Probabilistic Perspective autorstwa Kevin Murphy, który zawiera rozdział MCMC; a także publikacje z różnych czasopism ML i statystyk obliczeniowych.
Jespar,
3

Uczenie maszynowe dotyczy prognozowania, klasyfikacji lub grupowania w nadzorowanym lub nienadzorowanym otoczeniu. Z drugiej strony MCMC zajmuje się po prostu oceną złożonego intergrala (zwykle bez formy zamkniętej) przy użyciu probabilistycznych metod numerycznych. Próbkowanie Metropolis zdecydowanie nie jest najczęściej stosowanym podejściem. W rzeczywistości jest to jedyna metoda MCMC, która nie ma żadnego elementu probabilistycznego. W takim przypadku ML nie poinformuje o tym MCMC.

Próbkowanie oparte znaczenie ma wymagać probabilistyczny komponent. Jest bardziej wydajny niż Metropolis przy pewnych podstawowych założeniach. Do oszacowania tego elementu probabilistycznego można zastosować metody ML, jeśli zgadza się on z pewnymi założeniami. Przykładami mogą być grupowanie wielowymiarowe w celu oszacowania złożonej, wysoko wymiarowej gęstości Gaussa. Nie znam nieparametrycznego podejścia do tego problemu, ale może to być interesujący obszar rozwoju.

Niemniej jednak ML wyróżnia się jako odrębny etap w procesie szacowania modelu złożonego prawdopodobieństwa o dużych wymiarach, który jest następnie stosowany w metodzie numerycznej. Nie rozumiem, jak ML naprawdę poprawia MCMC w tym przypadku.

AdamO
źródło
Dziękuję @AdamO, przynajmniej teraz lepiej rozumiem ten obszar.
Jespar
1
Myślę, że ta odpowiedź jest niepełna i być może niepoprawna (w zależności od interpretacji faktycznego pytania PO, co nie jest całkowicie jasne). Typowe metody ML, takie jak nieparametryczne i sieci neuronowe, mogą i stosowane do ulepszania samplerów MCMC. W rzeczywistości jest to aktywny obszar badań. Zobacz moją odpowiedź i odnośniki na początek.
lacerbi
1
p
Dzięki @AdamO. Jednak, szczerze mówiąc, nie rozumiem twojego wyjaśnienia ani tego, jak poprawia ono twoją odpowiedź. Na przykład nie rozumiem, co masz na myśli, mówiąc, że Metropolis „nie ma elementu probabilistycznego”. Ponadto stwierdzacie, że ML nie może pomóc w próbkowaniu, co jest po prostu nieprawdziwe (nawet w wąskiej definicji próbkowania jako oszacowania całki wielowymiarowej), jak pokazuje moja odpowiedź.
lacerbi
3
@AdamO: Procesy gaussowskie, metody jądra, sieci losowe. Zasadniczo działałaby dowolna forma aproksymacji funkcji lub estymacji gęstości. Jeśli nie są to metody ML, nie jestem pewien, co to jest ... (proszę zauważyć, że OP poprosił o metody ML lub DL). Ponadto, jak zapytałem powyżej, czy możesz wyjaśnić, co miałeś na myśli, gdy pisałeś, że Metropolis nie ma elementu probabilistycznego? Dzięki!
lacerbi
0

Było kilka najnowszych prac w dziedzinie fizyki obliczeniowej, w których autorzy wykorzystali Ograniczone Maszyny Boltzmanna do modelowania rozkładu prawdopodobieństwa, a następnie zaproponowali (miejmy nadzieję) wydajne aktualizacje Monte Carlo arXiv: 1610.02746 . Pomysł tutaj okazuje się dość podobny do odniesień podanych przez @lacerbi w powyższym.

W kolejnej próbie 1702.08586 autor wyraźnie skonstruował Maszyny Boltzmanna, które mogą wykonywać (a nawet odkrywać) znane aktualizacje klastrów Monte Carlo .

Lei Wang
źródło