07.AI

자연어처리 (NLP) - GloVe

Mr. Slumber 2023. 5. 15. 15:06
728x90
반응형

 

[개념] 두 단어 벡터 내적의 동시 등장 빈도의 로그값 기반 단어 임베딩
word2vec과 달리 전체 학습데이터에서 등장하는 단어들의 통계 정보를 활용하는 모델
미국 스탠포드대학에서 2014년 개발한 워드 임베딩 방법론
 
[목표] LSA 의 유사도 측정 단점, Word2Vec의 말뭉치 전체를 판단하지 못하는 단점을 개선하고,  임베딩된 단어벡터 간 유사도 측정을 수월하게 하면서도 말뭉치 전체의 통계 정보를 좀 더 잘 반영해보자
Word2Vec에서 단어 간 분산 정보를 구하기 는 하지만 전체 코퍼스의 통계량을 활용하기 어렵다 는 부분을 극복하고자 함 ( Skip-gram의 하이퍼파라미터 값을 잘 설정했을 때 두 모델의 성능적 차이는 거의 없다고 한다.)
 
[특징]  단어의 분산 표현을 통한 유사도 측정을 쉽게 하면서도 전체 코퍼스의 통계량을 좀 더 잘 반영하기 위한 방법으로 목적함수를 두 단어의 벡터의 내적이 코퍼스에서의 동시 등장 빈도의 로그 값이 되도록 정의하여 빈도 수를 강조하는 특징
 
[학습] word embedding 학습 전에 학습데이터에서 각 단어들끼리의 한 문장에서 동시에 등장하는 확률들 을 계산
1.  학습말뭉치를 대상으로 co-occurrence 행렬 X 를 생성
2. 목적함수를 최소화하는 임베딕 벡터를 찾기 위한 matrix factorization을 수행
 
임베딩된 두 단어벡터의 내적이 말뭉치 전체에서의 동시 등장확률 로그값이 되도록 목적함수를 정의
 
[목적함수]  동시등장확률(the words’ probability of co-occurrence) 
목적함수를 사용하여 출력 벡터가 모든 단어의 동시 출력 빈도를 나타내는 벡터를 근사
 
- 학습 말뭉치에서 동시에 같이 등장한 단어의 빈도를 각각 세어서 전체 말뭉치의 단어 개수로 나눠준
[시각화] 임베딩 시각화

단어의 수가 V개이면 해당 확률 표는 (V × V)의 크기를 가지게 된 다. 이후 각각의 단어 벡터들은 서로 다른 단어에 대한 벡터 유사도를 표 1과 같은 동시 등장 확률과 비슷한 분포가 되도록 학습하게 된다. 이는 전체 학습데이터의 통계 정보를 가지고 학습하여 빠른 학습속도를 가지며 높은 성능을 낼 수 있다는 장점이 있으나, 학습 시 많은 메모리가 필요하다는 단점이 있다.
 
[장점] 빠른 학습속도 및 높은 성능 보장
[단점] 학습시 많은 메모리가 필요함
-> AutoML 기반 하이퍼파라미터 최적화, 클라우드 자원 Scale-out 기반 성능 향상, GPU 기반 병렬 컴퓨팅, 양자 컴퓨팅 병렬처리, 뉴로모픽칩 등
 
Word2Vec : 중심단어로 주변단어를, 주변단어로 중심단어를 예측하는 과정에서 단어를 벡터로 임베딩하는 방법론
임베딩된 단어의 내적(inner product)이 코사인 유사도가 되도록 합니다. 
단어-문맥행렬에 특이값분해(SVD)를 실시해 데이터 차원을 효과적으로 축소하는 한편 노이즈 등을 줄여 내재적인 의미를 이끌어내는 잠재의미분석(LSA)의 단점 
 
LSA와 같은 방법은 통계 정보를 효율적으로 활용하지만, 비 최적 벡터 공간 구조를 나타내는 단어 유추 작업에서는 상대적으로 열악합니다. skip-gram과 같은 방법은 유추 요청에서 더 잘 수행 할 수 있지만, 글로벌 동시 발생 수 대신 별도의 로컬 컨텍스트 창에서 훈련하기 때문에 말뭉치의 통계를 제대로 활용하지 못합니다.
 
LSA: 말뭉치 전체의 통계적인 정보를 모두 활용하지만, LSA 결과물을 가지고 단어/문서 간 유사도를 측정하기는 어려운 단점
Word2Vec(Skip-Gram):저차원 벡터공간에 임베딩된 단어벡터 사이의 유사도를 측정하는 데는 LSA에 비해 좋은 성능을 가지지만, 사용자가 지정한 윈도우(주변 단어 몇개만 볼지) 내에서만 학습/분석이 이뤄지기 때문에 말뭉치 전체의 공기정보(co-occurrence)는 반영되기 어려운 단점
Glove :  임베딩된 두 단어벡터의 내적이 말뭉치 전체에서의 동시 등장확률 로그값이 되도록 목적함수를 정의
 
Word2Vec이 임베딩된 두 단어벡터의 내적이 코사인 유사도라면 GloVe는 동시 등장 확률

 

 

 

 

728x90