학습목표
지금까지 배운 '텍스트 분류문제'와 '문장표현'에 대해서 다시 한번 정리하고 복습합니다
핵심키워드
- Text Classification
- Sentence Representation
학습하기
지금까지 CBow, RN, CNN, Self-attention, RNN 이렇게, Sentence를 Representation을 하는 방법론 5가지를 살펴봤습니다. CBoW를 빼면 (이건 무조건 Average같은 Merging 작업이 필요했죠) 나머지는 문장이 주어졌을 때, 벡터 하나만 주어지는게 아니라, 사실 각 토큰별로, 토큰 위치별로 벡터들이 쭉 나오는 형상이죠. 그러니까.. '나는 커피 주문을 했다' 뭐 이런게 CBoW를 통해서는 그냥 뭐 '0.221' 이런식으로 Representation이 나온다면, 나머지 과정에서는 '나는' = [0.1 0.2 0.3], '커피' = [0.42 0.2 0.1] ... 뭐 이런식이겠죠? 그리고 RN CNN Self-attention 등 모델은 서로 Exclusive한 모델이 아니죠. 당연히 결합될 수 있어요. 최근 Google의 논문을 보면, Self-attention과 RNN를 합쳐서, RNN을 통과시키고, 거기에 Self-attention을 했더니, 번역이 더 잘되더라 이런 것도 있고, 제가 한 것에서는 char-level translation을 할 때는 CNN을 쓰고 RNN을 쓰니까 더 잘되더라 이런게 있었습니다. 뭐 결국 Text classification문제를 할 때에는, 벡터들에 Average를 취하거나 RNN을 통해서 one value representation을 찾게 될 겁니다.
자 위 2가지를 이번 강의에서 설명해봤는데요. 결국 Word embedding이죠. Word2Vec, Fasttext, Glove 뭐 이런 것들이 어떻게 나왔냐? 사실 이런 NN을 만들어서 학습시키고 난 뒤의 결과물인거죠. 어떤 자연어 처리를 위해서 NN을 학습시키니까 이런 Token representation이 나왔었는데, 이게 다른데도 많은 쓸모가 있더라 뭐 이런거죠. 그리고 Token representation이 주어졌을 때, 이걸 어떻게 잘 요리해서 Sentence representation으로 만드느냐. 이게 앞서 말한 5가지 방법론이었죠. 이상입니다.
'머신러닝 > [딥러닝을 이용한 자연어 처리]' 카테고리의 다른 글
Overview: Language Modeling (0) | 2020.04.11 |
---|---|
Questions (0) | 2020.04.10 |
Self Attention & RNN (0) | 2020.04.08 |
CBoW & RN & CNN (0) | 2020.04.07 |
How to represent sentence & token? (0) | 2020.04.06 |