Processing math: 100%
본문 바로가기

Data Science

GloVe

GloVe

 

◎ 카운트 기반 word embedding 방식 (ex. TF-IDF, LSA) 의 단점

→ 단어 의미의 유추 작업(=anology task)에서 성능 떨어짐

ex) 영국:런던 ↔ 프랑스:??

 

예측 기반 word embedding 방식 (ex. Word2Vec) 의 단점

윈도우 내의 주변 단어들만 고려하기 때문에, 단어 집합의 전체적 통계 정보를 고려하지 못함

 

◎ GloVe

→ 카운트 기반과 예측 기반을 모두 활용해서, 각각의 단점을 각각 보완

 

◎ Word2Vec과의 성능 비교

→ 두 가지를 모두 적용해보고, 성능이 더 좋은 것을 활용하는 것이 바람직하다.

 

 

 

윈도우 기반 동시 등장 행렬 (Window based Co-occurence Matrix)

 

I like deep learning
I like NLP
I enjoy flying

 

위와 같이 3개의 문장으로 구성된 텍스트 데이터가 있고, window size가 1일 때 구성한 동시 등장 행렬은 아래와 같다.

 

카운트 I like enjoy deep learning NLP flying
I 0 2 1 0 0 0 0
like 2 0 0 1 0 1 0
enjoy 1 0 0 0 0 0 1
deep 0 1 0 0 1 0 0
learning 0 0 0 1 0 0 0
NLP 0 1 0 0 0 0 0
flying 0 0 1 0 0 0 0

 

 

 

동시 등장 확률 (Co-occurence Probability)

 

 위의 동시 등장 행렬을 기반으로, 각 중심단어 별 주변단어들의 동시 등장 확률을 구하면 아래와 같다.

→ ex) P[like][deep]=1/4

 

중심단어 i \ 주변단어 k I like enjoy deep learning NLP flying
I 0 2/3 1/3 0 0 0 0
like 1/2 0 0 1/4 0 1/4 0
enjoy 1/2 0 0 0 0 0 1/2
deep 0 1/2 0 0 1/2 0 0
learning 0 0 0 1 0 0 0
NLP 0 1 0 0 0 0 0
flying 0 0 1 0 0 0 0

 

 

 

 

GloVe

 

◎ 핵심 아이디어

중심단어 i의 embedding vector와 주변단어 k의 embedding vector의 내적이, 동시 등장 확률 P[i][k] 값이 되도록 학습하는 것

w[i]w[k]P[i][k]    [ w : 중심단어 embedding matrix / w : 주변 단어 embedding matrix ]

regression task

 

◎ GloVe의 최종 손실함수(=loss function) 식은 아래와 같다.

Loss function=Vm,n=1 f(Xmn)(wTm~wn+bm+~bnlogXmn)2

→ 자세한 유도 과정은 논문과 위키독스에서 상세히 설명되어 있다.

 

 


 

< References >

 

※ Stanford NLP Group, GloVe: Global Vectors for Word Representation

 

※ wikidocs, GloVe

'Data Science' 카테고리의 다른 글

RNN  (0) 2023.10.09
FastText  (1) 2023.10.08
Word2Vec  (0) 2023.10.06
TF-IDF  (0) 2023.10.02
텍스트 데이터 전처리 (Text Preprocessing)  (0) 2023.10.02