word2vec
2022. 3. 6. 18:03ㆍ카테고리 없음
- 목차
반응형
- word2vec은 추론 기반 기법이며 단순한 2층 신경망
- 2개의 layer는 모두 fully connected layers
- word2vec의 구현 모델
- skip-gram: 주변 단어를 예측
- CBOW: 중심 단어를 예측
- Continuous Bag of Word
l word2vec은 가중치로 다시 학습할 수 있어 단어 갱신 시 학습에 유리
추론 기반 기법
- 통계 기반 기법
- 추론 기반 기법
- word2vec
통계 기반 기법의 문제
단어의 출현 빈도를 기준으로 예측
DTM으로 각 문서 내 단어의 출현 빈도를 계산하고 이를 SVD로 차원 축소하여 단어의 분산 표현인 "밀집벡터"를 얻음
문제점
- 연산 속도
- 느림...
- SVD의 time complexity는 O(n^3)
- SGD 방식만 가능
- batch, mini-batch가 불가능
- memory usage
- corpus의 크기가 클수록 거대한 차원이 필요
- 즉, 현실적인 방법이 아님
word2vec
you say goodbye에서
you와 goodbye를 입력으로 준 뒤 say를 예측하는 즉, 중심 단어를 예측하는 모델
예측을 위한 학습 과정에서 각 입력 단어들이 가중치로 표현되며 이것이 분산표현이 됨
두개의 Fully connected layer로 구성된 단순한 모델을 사용
Win -> Wout -> softmax
- Win은 단어의 분산 표현
- Win만 단어의 분산표현으로 사용함
- Wout은 단어의 의미가 encoding된 벡터
cf. 분산표현
- 어떤 입력을 "고정길이"의 dense 벡터로 표현한 것이 "분산 표현"
- dense 벡터: 대부분의 원소가 0이 아닌 실수로 구성된 벡터
학습의 결과로
- 각 단어의 "분산표현"인 dense 벡터(고정길이 dense 벡터)들을 얻게됨
- 자연어를 벡터의 표현으로 바꿔서 학습의 입력으로 사용할 수 있음
- 학습된 분산 표현을 얻을 수 있음
- 이를 가지고 다른 모델의 입력으로 사용 가능함 (전이학습에 사용)
- 각 단어 벡터는 서로 유사한 벡터들끼리 모여있음
- +/- 연산으로 유사, 유추 등에 응용할 수 있음
평가
유사성 평가
사람이 작성한 단어 유사도를 검증 세트를 사용하여 평가함
사람이 부여한 유사 점수와 word2vec에 의한 cosine similarity의 점수를 비교하여 상관을 평가
반응형