Pytorch로 시작하는 딥러닝 입문(11-01. 텍스트의 유사도: 단어의 표현 방법)

2024. 4. 8. 19:52딥러닝 모델: 파이토치

카운트 기반의 단어 표현 방법 외에도 다양한 단어 표현 방법이 존재한다. 어떤 순서로 단어 표현 방법을 학습하게 될 것인지 알아보자. 

 

♣ 단어의 표현 방법

단어의 표현 방법은 크게 국소표현(Local Representation) 방법과 분산표현(Distributed Representation) 방법으로 나뉜다. 국소표현방법은 해당 단어 그 자체만 보고 특정값을 맵핑하여 단어를 표현하는 방법이며, 분산표현방법은 주변을 참고하여 단어를 표현하는 방법이다. 

 

예를 들어 puppy(강아지), cute(귀여운), lovely(사랑스러운) 라는 단어가 있을 때, 각 단어에 1번, 2번,  3번 등과 같은 숫자를 맵핑하여 부여한다면 이는 국소표현방법이다. 반면,  분산표현방법에서는 'puppy(강아지)라는 단어 근처에 주로 cute(귀여운), lovely(사랑스러운)이라는 단어가 자주 등장하므로 puppy라는 단어는 cute, lovely한 느낌이다 '로 단어를 정의한다. 

 

국소표현방법은 단어의 의미, 뉘앙스를 표현할 수 없지만 분산표현방법은 단어의 뉘앙스를 표현할 수 있다. 

또한 비슷한 의미로 국소표현방법을 이산표현이라고도 하며, 분산표현을 연속표현이라고도 한다. 연속표현이 분산표현을 포괄하는 더 큰 개념이라고 보기도 한다. 

 

 

♣ 단어 표현의 카테고리화

여기서는 아래와 같은 기준으로 단어 표현을 카테고리화하였다. 

 

  • Bag of Words: 단어의 빈도수를 카운트하여 단어를 수치화하는 단어표현방법으로, 국소표현에 속한다. 
  • Word2Vec: 예측을 기반으로 단어의 뉘앙스를 표현하는 표현방법으로, 연속표현에 속한다. 
  • Glove: 예측과 카운트라는 두 가지 방법이 모두 사용되었다.