Word2vec 이해 (GloVe, SPPMI, SVD 비교)

Tomáš Mikolov(Google의 동료들과 함께)는 단어 뒤에 의미를 학습하기 위한 감독되지 않은 알고리즘 인 word2vec 를 출시하여 파문을 일으켰습니다.

word2vec은 일반적으로 딥러닝 이라고 하는 신경망을 기반으로하는 머신러닝 알고리즘의 “새로운 물결”의 일원으로 널리 소개되었습니다

많은 양의 주석이 없는 일반 텍스트를 사용하여 word2vec은 자동으로 단어 간의 관계를 학습합니다.

그러나 이제는 Tomáš Mikolov가 더 이상 Google에 적합하지 않습니다. 다시 표현하면 스탠포드의 연구자 Jeffrey Pennington, Richard Socher, Christopher Manning이 수행한 멋진 연구가 있었습니다. 이들은 word2vec이 async stochastic gradient backpropagation 알고리즘을 통해 최적화한 목표를 명시적으로 확인하고 이를 matrix factorization의 잘 확립된 필드에 깔끔하게 연결했습니다.

간단히 말해서 word2vec은 단어 벡터와 단어 컨텍스트 벡터를 궁극적으로 학습합니다. 이것들은 크기가 word의 수 x dim의 수인 두 개의 2D 행렬 (float)로 볼 수 있습니다. GloVe(Global Vectors)는 word2vec의 특정 SGD 알고리즘을 사용하여 factorize 할 때 정확하게 이 두행렬을 산출하는 행렬을 식별합니다. 그래서 word2vec이 무슨 일이 일어나고 있는지 약간 불명확한 곳에서 GloVe는 명시 적으로 “객관적인” 행렬을 명명하고, factorization을 확인하며 왜 이것이 우리에게 유사점을 제공해야하는지에 대한 직관적인 타당성을 제시합니다.

 

 

Tags:

Word2vec

GloVe

SPPMI

SVD