Pytanie o ciągłą torbę słów

11

Mam problem ze zrozumieniem tego zdania:

Pierwsza proponowana architektura jest podobna do sprzężenia zwrotnego NNLM, w którym nieliniowa warstwa ukryta jest usuwana, a warstwa projekcyjna jest wspólna dla wszystkich słów (nie tylko matrycy projekcyjnej); dlatego wszystkie słowa są rzutowane na tę samą pozycję (ich wektory są uśredniane).

Czym jest warstwa projekcji a matryca projekcji? Co to znaczy, że wszystkie słowa są rzutowane na tę samą pozycję? I dlaczego to oznacza, że ​​ich wektory są uśredniane?

Zdanie to jest pierwszym rozdziałem 3.1 Skutecznego oszacowania reprezentacji słów w przestrzeni wektorowej (Mikolov i in. 2013) .

użytkownik70394
źródło

Odpowiedzi:

6

Rycina 1 nieco to wyjaśnia. Wszystkie wektory słów z okna o danym rozmiarze są sumowane, wynik jest mnożony przez (1 / rozmiar okna), a następnie wprowadzany do warstwy wyjściowej.

Macierz projekcyjna oznacza całą tabelę odnośników, w której każde słowo odpowiada jednemu wektorowi o wartości rzeczywistej. Warstwa projekcyjna jest w rzeczywistości procesem, który pobiera słowo (indeks słów) i zwraca odpowiedni wektor. Można albo połączyć je (uzyskując dane wejściowe o rozmiarze k * n, gdzie k to rozmiar okna, a n to długość wektora) lub jak w modelu CBOW, po prostu zsumuj je wszystkie (uzyskując dane wejściowe o rozmiarze n).

wprowadź opis zdjęcia tutaj

Denis Tarasow
źródło
Po pierwsze, dziękuję za odpowiedź. Nadal jestem trochę zdezorientowany różnicą między matrycą projekcyjną a warstwą projekcyjną. Wydają się takie same.
user70394
@ user70394 Tak, w rzeczywistości uważam, że terminologia jest nieco myląca. Zasadniczo każda warstwa NN jest funkcją mapującą dane wejściowe na dane wyjściowe. Warstwa projekcyjna robi to za pomocą wag z matrycy projekcyjnej, ale nie jest to sama matryca. Przy tej samej matrycy można zdefiniować wiele różnych funkcji. W rzeczywistości w przypadku CBOW moglibyśmy prawdopodobnie powiedzieć, że mamy warstwę projekcyjną z opóźnieniem czasowym, po której następuje warstwa sumująca. W modelu RNNLM „warstwa projekcyjna” jest w rzeczywistości częścią rekurencyjnej ukrytej warstwy, która łączy wagi matrycy projekcyjnej z powtarzającymi się wagami w celu obliczenia wyników.
Denis Tarasov,
1

Gdy przeglądałem kwestie CBOW i natknąłem się na to, oto alternatywna odpowiedź na twoje (pierwsze) pytanie („Czym jest warstwa projekcyjna vs. matryca ?”), Patrząc na model NNLM (Bengio i in., 2003):

Bengio i in., 2003, ryc. 1: Architektura neuronowa: f (i, w_ {t − 1}, ···, w_ {t − n + 1}) = g (i, C (w_ {t − 1}) ), ···, C (w_ {t − n + 1})), gdzie g to sieć neuronowa, a C (i) to i-ty wektor cech słowa.

tzanhdo(wja)dotzanh

Dodajmy, i „tylko dla przypomnienia”: Prawdziwą ekscytującą częścią jest podejście Mikołaja do rozwiązania tej części, w której na obrazie Bengio widać zwrot „najwięcej obliczeń tutaj”. Bengio próbował zmniejszyć ten problem, robiąc coś, co nazywa się hierarchicznym softmax (zamiast po prostu używać softmax) w późniejszym artykule (Morin i Bengio 2005). Ale Mikołaj ze swoją strategią negatywnego podpróbkowania poszedł o krok dalej: w ogóle nie oblicza ujemnego prawdopodobieństwa logarytmicznego wszystkich „złych” słów (lub kodowań Huffmana, jak zasugerował Bengio w 2005 r.), I po prostu oblicza bardzo mała próbka przypadków ujemnych, która przy wystarczającej liczbie takich obliczeń i sprytnym rozkładzie prawdopodobieństwa działa wyjątkowo dobrze. Drugi i jeszcze większy wkład, oczywiście,dodatek „składowość” („mężczyzna + król = kobieta +?” z królową odpowiedzi), który naprawdę działa dobrze tylko z jego modelem Skip-Gram i może byćP.(doontmixt|wt=ja)

fnl
źródło