Word2Vec vs. Sentence2Vec vs. Doc2Vec

18

Niedawno natknąłem się na terminy Word2Vec , Sentence2Vec i Doc2Vec i trochę zdezorientowany, ponieważ jestem nowy w semantyce wektorowej. Czy ktoś może wyjaśnić różnice w tych metodach prostymi słowami. Jakie są najbardziej odpowiednie zadania dla każdej metody?

Kowal
źródło

Odpowiedzi:

22

Cóż, nazwy są dość proste i powinny dać ci jasny obraz reprezentacji wektorowych.

Algorytm Word2Vec buduje rozproszoną reprezentację semantyczną słów. Istnieją dwa główne podejścia do treningu, rozproszony zestaw słów i model pomijania gramów. Jeden obejmuje przewidywanie słów kontekstowych za pomocą słowa środkowego, a drugi obejmuje przewidywanie słowa za pomocą słów kontekstowych. Można o tym przeczytać w większych szczegółach w Mikolov na papierze .

Ten sam pomysł można rozszerzyć na zdania i kompletować dokumenty, gdzie zamiast uczenia się reprezentacji funkcji dla słów, uczysz się dla zdań lub dokumentów. Jednak, aby uzyskać ogólne pojęcie o SentenceToVec, pomyśl o nim jako o matematycznej średniej reprezentacji wektora słów wszystkich słów w zdaniu. Możesz uzyskać bardzo dobre przybliżenie tylko przez uśrednienie i bez szkolenia SentenceToVec, ale oczywiście ma to swoje ograniczenia.

Doc2Vec rozszerza ideę SentenceToVec, a raczej Word2Vec, ponieważ zdania można również traktować jako dokumenty. Idea szkolenia pozostaje podobna. Więcej informacji można znaleźć w dokumencie Doc2Vec Mikołaja .

W przypadku aplikacji będzie to zależeć od zadania. Word2Vec skutecznie przechwytuje relacje semantyczne między słowami, dlatego może być używany do obliczania podobieństw słów lub dostarczany jako funkcje do różnych zadań NLP, takich jak analiza sentymentów itp. Jednak słowa mogą uchwycić tylko tyle, że zdarza się, że potrzebujesz relacji między zdaniami a dokumentami i nie tylko słowa. Na przykład, jeśli próbujesz dowiedzieć się, czy dwa pytania o przepełnienie stosu są ze sobą duplikatami.

Proste wyszukiwanie w Google prowadzi do wielu zastosowań tych algorytmów.

Himanshu Rai
źródło
Jaka jest zatem różnica między uśrednianiem wektorów słów a używaniem doc2vec? Czy doc2vec uwzględnia otoczenie słowa w zdaniu podczas budowania wektora (podczas gdy word2vec nie)?
John Strood,
1
Doc2Vec poznaje losowo zainicjowany wektor dokumentu wraz ze słowami (dokument może być zdaniem). Ręcznie uśredniane wektory słów nie działają z taką samą wydajnością, ponieważ nie uczą się z całego dokumentu. Ostatnio wektory Paragram są niezwykle używane podczas pracy z podobieństwem dokumentów itp.
Himanshu Rai