AI/부스트 캠프 AI tech

[Day16] NLP 기초

N-analyst 2021. 2. 15. 22:11

[Day16] NLP 기초

 

 

중요

CBOW

  • 주변 단어들을 가지고 중심 단어를 예측하는 방식으로 학습한다.

  • 전체 과정은 다음과 같다.

    1. 주변 단어들의 one-hot encoding 벡터를 각각의 embedding layer에 projection한다.
    2. 각각의 embedding 벡터를 얻고 이 embedding들을 element-wise한 덧셈으로 합친다.
    3. 다시 linear transformation하여 예측하고자 하는 중심 단어의 one-hot encoding벡터와 같은 사이즈의 벡터로 만든 뒤, 중심 단어의 one-hot encoding 벡터와 같은 사이즈의 벡터로 만든다.
    4. 그 다음 중심 단어의 one-hot encoding 벡터와의 loss를 계산한다.

 

  • ex) A cute puppy is walking in the park. (window size = 2)

    • Input(주변 단어): "A", "cute", "is", "walking"
    • Outpu(중심 단어): "puppy"

 

image-20210215193810351

 

 

Skip-gram

  • 중심 단어를 가지고 주변 단어들을 예측하는 방식으로 학습한다.

  • 전체 과정은 다음과 같다.

    1. 중심 단어의 one-hot enoding 벡터를 embedding layer에 projection하여 해당 단어의 embedding 벡터를 얻는다.
    2. 이 벡터를 다시 linear transformation하여 예측하고자 하는 각각의 주변 단어들과의 one-hot encoding 벡터와 같은 사이즈의 벡터로 만든다.
    3. 그 주변 단어들의 one-hot encoding 벡터와의 loss를 각각 계산한다.

 

  • ex) A cute puppy is walking in the park. (window size=2)

    • Input(중심 단어): "puppy"
    • Output(주변 단어): "A", "cute", "is", "walking"

 

image-20210215194537282

 

참고 자료

 

피어세션

  • NaiveBayes Classifier계산식에 대해서 토론하였다.
  • csv다루기 발표(죠르디)
  • 기사 제목 생성기 발표(라이언)