티스토리 뷰

Study/NLP

NLP with DeepLearning (1) - intro

johanjun 2021. 11. 18. 15:56

자연어처리는 딥러닝을 통해서 로켓을 탄 것 같다. 불과 3~4년 전만 해도 구글 번역기로 번역을 돌리면 '피식'하고 웃음이 먼저 났다. 자연어처리를 매우 부자연스럽게 처리한 결과들이 더 많이 보였기 때문이다.

Kimchi wishlist(출처 : 구글이미지)

 

딥러닝이 등장(?)하면서 자연어처리는 어떻게 변했고, 어떤 일들을 할 수 있는지 알아보자.

 

자연어처리와 한국어

전통적인 NLP 딥러닝을 통한 NLP
- 단어를 Symbolic 데이터로 취급
- 통계 기반으로 번역기 모델링
- 연산 속도가 느림
- 단어를 연속적인 값으로 변환(embedding)
- 신경망을 이용하기 때문에 사람이 이해하기 어려움

자연어처리의 시스템을 아주 간략하게 정리하면 세 단계다.

  1. Encoder 임베딩 계층 : 사람이 쓰는 단어(symbolic) → 신경망이 좋아하는 단어(continuous)
  2. 딥러닝 연산
  3. Decoder 생성 계층 :  신경망이 좋아하는 단어(continuous) → 사람이 쓰는 단어(symbolic)

한국어 자연어처리는 여러가지 이유로 쉽지 않다.

  1. 한국어는 교착어이기 때문에 어간에 접사가 붙어서 단어를 이루며, 의미와 문법적 기능이 정해진다. 
    ex) 잡다. 잡히다. 잡히시다. 잡히셨다. 잡았다. 잡겠다. 잡더라. 잡혔다. 잡혔겠다. 잡혔겠더라. 잡았겠다. 잡히시었겠더라.
  2. 단어 순서의 규칙이 유연하다.
    ex) 나는 밥을 먹으러 간다  = 나는 먹으러 간다 밥을 (이 예시에서 14가지의 조합이 가능하다)
  3. 띄어쓰기가 모호하다. 즉, 띄어쓰기가 안지켜져도 웬만하면 이해가 된다.
  4. 평서문과 의문문의 차이가 거의 없다.
  5. 주어가 없어도 된다.
  6. 동음이의어가 많다.

딥러닝과 자연어처리

자연어처리의 역사에 대해서 요약하면 아래의 표와 같다.

구분 특징
딥러닝 이전의 NLP - sub-module이 너무 많아서 복잡하고, 모델 자체가 무거움
Seq2Seq 이전의 NLP - word embedding의 등장
- CNN을 통한 text classification이 가능해짐
=> 단어를 인코딩하는 정도로 그침
Seq2Seq with Attention - 벡터를 가지고 원하는 문장을 만드는 것이 가능해짐
Era of Attention - GPT, BERT 등의 등장
Pretraining and Fine-Tuning - Big 모델(대기업)을 기반으로 적절하게 fine-tuning하여(소규모 조직, 개인) 비즈니스에 적용

딥러닝의 최신 키워드를 정리하자면 Big Model with Attention과 단순한 챗봇(Question Answering)을 넘어 국가/언어와 도메인을 뛰어넘는 머신 연구라고 할 수 있을 것 같다.

 

 

※ 본 포스팅은 패스트캠퍼스 '김기현의 딥러닝을 활용한 자연어처리 입문' 강의를 듣고 정리한 글입니다.

댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/11   »
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
글 보관함