open:word-embedding

Word Embedding

  • 단어가 가지는 의미 자체를 다차원 공간에 벡터화하는 것
  • 중심 단어의 주변 단어들을 이용해 중심단어를 추론하는 방식으로 학습
  • 단어간의 유사도 측정이 용이
  • 단어간의 관계 파악에 용이
  • 벡터 연산을 통한 추론이 가능 (e.g. 한국 - 서울 + 도쿄 = ?)
  • 단어의 subword information 무시 (e.g. 서울 vs 서울시 vs 고양시)
  • Out of vocabulary (OOV)에서 적용 불가능
  • Word2Vec이나 FastText와 같은 Word embedding 방식은 동형어, 다의어 등에 대해선 embedding 성능이 좋지 못하다는 단점이 있음
  • 주변 단어를 통해 학습이 이루어지기 때문에, 문맥을 고려할 수 없음
  • One-hot encoding
  • n개의 단어에 대한 n차원의 벡터
  • 단어가 커질 수록 무한대 차원의 벡터가 생성
  • 주로 신경망의 입력단에 사용 (신경망이 임베딩 과정을 대체. e.g. tflayers.Embedding)
  • 의미 유추 불가능
  • 차원의 저주 (curse of dimensionality): 차원이 무한대로 커지면 정보 추출이 어려워짐
  • One-hot vector의 차원 축소를 통해 특징을 분류하고자 하는 접근도 있음
  • 한정된 차원으로 표현 가능
  • 의미 관계 유추 가능
  • 비지도 학습으로 단어의 의미 학습 가능

  • open/word-embedding.txt
  • 마지막으로 수정됨: 2020/10/29 07:48
  • 저자 127.0.0.1