Sieć dwudzielna bez nacisku grupowego
Maszyna Boltzmanna ograniczona (RBM) składa się z dwóch warstw jednostek binarnych: warstwy widzialnej v, która reprezentuje obserwowane dane takie jak aktywacje pikseli, oraz warstwy ukrytej h, która reprezentuje nauczone cechy ukryte. Każda jednostka widzialna połącza się z każdą jednostką ukrytą poprzez macierz wag W, ale kluczowe jest to, że nie ma połączeń wewnątrz warstwy — ani połączeń widzialne-widzialne, ani ukryte-ukryte. To 'ograniczenie', które daje modelowi swoją nazwę, okazuje się być ogromnie przydatne: ponieważ jednostki w tej samej warstwie nigdy nie komunikują się bezpośrednio z siebie, wszystkie jednostki ukryte stają się warunkowo niezależne pod warunkiem jednostek widzialnych, i na odwrót. Ta niezależność oznacza, że można aktualizować całą warstwę w jednym równoległym przepływie zamiast aktualizować każdą jednostkę po kolei, co sprawia, że inaczej skomplikowany model graficzny nieskierowany jest dość dobrej jakości do treningu na skalę.
Funkcja energetyczna: ocena konfiguracji
W sercu RBM znajduje się funkcja energetyczna, która przypisuje pojedynczą liczbę skalarną do każdej możliwej konfiguracji wspólnych jednostek widocznych i ukrytych. Dla binarnych jednostek jest zapisywana jako E(v,h) = -sum_i(a_i * v_i) - sum_j(b_j * h_j) - sum_ij(v_i * W_ij * h_j), gdzie a_i i b_j to wyraźne wartości dla widocznych i ukrytych jednostek, a W_ij jest wagą łączącą widoczną jednostkę i z ukrytą jednostką j. Niska energia powinna odpowiadać konfiguracjom, które sieć uważa za prawdopodobne, a wysoka energia - konfiguracjom, które są uważane za nieprawdopodobne. Ta energia jest przekształcana w prawdopodobieństwo poprzez rozkład Boltzmanna: P(v,h) = exp(-E(v,h)) / Z, co oznacza, że stanów niskiej energii przybierają ekspansywnie wyższe masę prawdopodobieństwa, a stanów wysokiej energii - wykładniczo mniejszą. Trening RBM, w bardzo literywnej interpretacji, polega na modelowaniu tej powierzchni energetycznej tak, aby doliny odpowiadały danych treningowych, a szczyty - wszystkim reszcie.
Niewyliczalna Z i powód istnienia Divergencji Kontrastowej
Stała normalizacyjna Z w tej formule, nazywanej funkcją rozdziału, jest zdefiniowana jako Z = suma po wszystkich v,h e^(-E(v,h)) — sumuje ona nieznormalizowaną prawdopodobieństwo dla każdej możliwej kombinacji stanów widzialnych i ukrytych. Dla dowolnej sieci z większą niż kilka jednostek, ta suma ma ogromną liczbę wyrazów, co sprawia, że Z oraz więc dokładne prawdopodobieństwo P(v,h) są obliczeniowo niewyliczalne. To ma znaczenie, ponieważ ekonomiczny gradient maksymalnej prawdopodobieństwa dla wag ma postać dlogP(v)/dW_ij =
Samplowanie Gibbsa między warstwami
Krok rekonstrukcji w kontrastowym odchodzeniu opiera się bezpośrednio na niezależności warstw wbudowanej w RBM. Ponieważ jednostki ukryte są warunkowo niezależne pod warunkiem warstwy widocznej, można zasamplingować wszystkie h jednocześnie z P(h|v) = sigmóid(b + W^T v), a ponieważ jednostki widoczne są warunkowo niezależne pod warunkiem warstwy ukrytej, można zasamplingować wszystkie v jednocześnie z P(v|h) = sigmóid(a + W h). Alternatywne wykonanie tych dwóch kroków samplujących — od widocznych do ukrytych, a następnie od ukrytych powrotem do widocznych, a ponownie ukryte — to dokładnie łańcuch Gibbsa blokowego, a to pozwala sieci na symulowanie przybliżonego wylosowania z własnego rozkładu modelowego bez konieczności obliczania Z. Dłuższe wykonanie tego łańcucha powoduje dokładniejsze próbkowanie modelu i bardziej precyzyjne szacowanie gradientu, ale nawet proste jednokropekowe wersje używane w CD-1 okazały się wiernie przesuwać powierzchnię energii w odpowiednim kierunku, co jest powodem dla czego kontrastowe odchodzenie stało się praktycznym roboczym narzędziem do treningu RBM zamiast dokładnego, ale bezradnego uczenia przez maksimum prawdopodobieństwa.
Stosowanie RBMs i ich miejsce w historii
W połowie lat 2000-tych RBMs znalezły swoje najbardziej sławną zastosowanie jako bloki budowlane dla Sieci Wierzeniowych Profundalnych. Hinton i jego współpracownicy pokazali, że można nauczyć pierwszy RBM na danych oryginalnych, zamrozić go, traktować aktywacje warstwy ukrytej jako 'dane' dla drugiego RBM zastawionego na górę, a następnie powtarzać tę głodową trening po warstwie w górę. Ta ni nadzorowany trening przedmiotowy dał sieciom profundalnym sensowny punkt wyjścia dla wag przed ostatnim etapem nadzorowanego dostosowania, co było prawdziwym kluczowym trickiem w okresie około 2006-2012 roku, kiedy trening głębokich sieci z inicjalizacji losowych był znakomicie niestabilny. Lepsze schematy inicjowania wag, aktywacje ReLU, normalizacja w grupach i w końcu o wiele większe zestawy danych etykietowane przyniosły koniec potrzeby treningu RBM warstwowych, co spowodowało zanik RBMs z użycia głównego. Ale ich koncepcyjna DNA ciągnie się prosto przez współczesne AI generacyjne: myśl o nauczeniu funkcji energii lub oceny nad danymi i wykorzystywaniu iteratywnych próbkowania stochastycznego do losowania z niej, powtarza się bezpośrednio w modelach generacyjnych opartych na skorzystaniu i rozprzestrzenianiu się, co sprawia, że RBM jest mniej muzealny i bardziej wcześniejszym przodkiem idei nadal żyjących.
Często zadawane pytania
Dlaczego nie ma połączeń w warstwie widocznej ani ukrytej?
Usunięcie połączeń intrawarstwowych jest to, co sprawia, że maszynki Boltzmannowskie ograniczone są 'ograniczone'. Gwarantuje one, że wszystkie jednostki ukryte są warunkowo niezależne pod warunkiem warstwy widocznej, a wszystkie jednostki widoczne są warunkowo niezależne pod warunkiem warstwy ukrytej. Dlatego cała warstwa może być próbkowana w jednym kroku równoległym z użyciem prostych praw sigmoidealnych, a nie wymagającym wolnych aktualizacji jednostki po kolei jak w ogólnie połączonych maszynach Boltzmannowskich.
Czemu nie możemy prosto obliczyć prawdziwej gradienty?
Prawdziwy gradient logarytmu prawdopodobieństwa danych wymaga oczekiwania nad pełną równowagową rozkładem modelu, który jest zdefiniowany przy użyciu funkcji partition Z. Z sumuje się po każdym możliwym konfiguracji widoczna-ukryta, a liczba taka rośnie eksponencjalnie z liczbą jednostek, dlatego nie można go bezpośrednio obliczyć dla jakiejkolwiek rzeczywistie wielkiej sieci. Kontrastowe rozbieżność unika tego, przybliżając oczekiwanie za pomocą krótkiej łańcuchowej próby Gibbsa zamiast prawdziwej, niewykorzystanej równowagi.
Co oznacza CD-1?
CD-1 odnosi się do kontrastowego rozbieżności uruchomionego tylko jednym krokiem próby Gibbsa: widoczna na ukrytą, a następnie ukryta z powrotem na widoczną. Niezależnie od tego, że jest to groźne przybliżenie prawdziwego rozkładu modelu, CD-1 empirycznie okazało się produkować aktualizacje wag, które w sposób wiarygodny poprawiają funkcję energii, a stało się domyślnym wyborem do treningu RBMs efektywnie, z CD-k użyciem k alternujących kroków dla bliższego, droższej przybliżenia.
Czy nadal są używane RBMs?
Zdawkowo jako samodzielne modele produkcyjne. Po tym, jak lepsze metody inicjalizacji, aktywacje ReLU i duże zestawy etykietowane uczyniły trening głębokich sieci bezpośrednio możliwym, semi-supervised pretraining RBM, który ich zapoczątkował, stał się niepotrzebny. Zawierają one nadal ważną pedagogiczną i historyczną wartość, a ich podstawowa idea modelu opartego na energii ulepszanego przez iteracyjne próbkowanie proponuje się modernne modele generatywne oparte na ocenie skórkowej i rozsiania.
Co to jest Sieć Wierzeniowa Głęboka?
Sieć Wierzeniowa Głęboka to wielowarstwowa sieć neuronowa zbudowana poprzez stosowanie kilku RBMs i trening ich jedno na raz w sposób gloutonarny, warstwa po warstwie: aktywacje ukrytego warstwy RBM stają się 'widocznym' wejściem danych dla kolejnego RBM powyżej. Tego niezawodnie nadzorowanego treningu semi-supervised phase toczyła się historycznie po supervizowaniu refinezingu całości, a była jednym z pierwszych pomyślnych receptur do treningu prawdziwie głębokich sieci.
Wypróbuj na żywo
Wszystko powyżej działa bezpośrednio w Twojej przeglądarce — otwórz Restricted Boltzmann Machines: Energy-Based Generative Learning i zmieniaj parametry podczas działania. Nic nie jest instalowane ani przesyłane na serwer, cały model działa w jednej karcie.
▶ Otwórz symulację Restricted Boltzmann Machines: Energy-Based Generative Learning