본문 바로가기
Data Science/NLP

CBoW & RN & CNN & Self Attention & RNN

by 루크 Luke 2022. 3. 28.
반응형
  • 문장표현(Sentence representation)의 의미: 어떤 과제를 풀기에 적합하고 숫자로 나타낸 문장의 표현입니다
  • CBoW(Continuous bag-of-words):
    • 단어장을 단어 주머니로 보게되고, 이에 따라 단어의 순서는 무시합니다. 
    • 문장에 대한 표현은 단어 벡터들을 평균시킨 벡터로 구합니다.
    • 효과가 좋기 때문에 제일 먼저 시도해봐야합니다. (Baseline 모델)
    • 공간상에서 가까우면 비슷한 의미, 아니면 멀리 떨어져 있을 것입니다.
  • Relation Network(Skip-Bigram):
    • 문장안에 있는 모든 토큰 쌍(pairs)을 보고, 각 쌍에 대해서 신경망을 만들어서 문장표현을 찾습니다.
    • 장점: 여러 단어로 된 표현을 탐지 할 수 있습니다.
    • 단점: 모든 단어간의 관계를 보기 때문에, 전혀 연관이 없는 단어도 보게 됩니다.
  • Convolution Neural Network(CNN):
    • 특징:
      • k-gram을 계층적으로(hierachically) 보게 됩니다.
      • Layer 를 쌓을 때 마다, 점진 적으로 넓은 범위를 보기 때문에, "단어> 다중 단어 표현> 구절 > 문장"순으로 보는 인간의 인식과도 알맞습니다. 
      • 1차원의 Convolutional Network 입니다.
    • 장점: 좁은 지역간 단어의 관계를 볼수 있습니다.

 

  • RN:
    • 모든 다른 토큰의 관계를 봅니다. 모든 단어간의 관계를 봐서 효율적이지 못합니다.

  • CNN:
    • 작은 범위의 토큰의 관계를 봅니다.
    • 따라서 더 먼 거리의 단어간의 관계가 있을 경우 탐지할 수 없거나 더 많은 convolution 층을 쌓아야합니다.

  • 하지만 CNN 방식을 가중치가 부여된 RN의 일종으로 볼 수도 있습니다.

  • 그렇다면 가중치가 0 과 1 이 아닌 그 사이의 값으로 계산 할 수 있다면 어떨까요?

 

  • Self Attention 
    •  장점:
      • Long range & short range dependency 극복할 수 있습니다.
      • 관계가 낮은 토큰은 억제하고 관계가 높은 토큰은 강조할 수 있습니다.
    • 단점
      • 계산 복잡도가 높고 counting 같은 특정 연산이 쉽지 않습니다. 

  • Recurrent Neural Network(RNN):
    • 메모리를 가지고 있어서 현재까지 읽는 정보를 저장할 수 있습니다.
    • 문장의 정보를 시간의 순서에 따라 압축 할 수 있습니다.
    • 단점:
      • 문장이 많이 길어질 수록 고정된 메모리에 압축된 정보를 담아야 하기 때문에, 앞에서 학습한 정보를 잊습니다.
      • 이는 곧 정보의 손실을 뜻합니다. 
      • 토큰을 순차적으로 하나씩 읽어야 하기 때문에, 훈련 할때 속도가 기타 네트워크 보다 느립니다.
    • Long Term Dependency 해결방법:
      • bidirectional network를 쓰게됩니다.
      • LSTM, GRU 등 RNN의 변형을 사용합니다.

 

 

본 내용은 부스트코스 조경현 교수의 딥러닝을 이용한 자연어 처리 강의 내용입니다.​

 

 

반응형

'Data Science > NLP' 카테고리의 다른 글

Neural N-Gram Language Model  (0) 2022.03.30
Language Modeling  (0) 2022.03.30
How to represent sentence & token  (0) 2022.03.28
Text classification Overview  (0) 2022.03.28
Gradient-Based Optimization  (0) 2022.03.28

댓글