자연언어처리
자연언어처리의 정의
- Natural Language Processing; NLP
- 자연언어 : 인류가 살아가면서 자연스럽게 생성된 언어 (e.g. 한국어, 영어)
- 인공언어 : 자연언어와 반대로, 사람들이 의도적으로 만든 언어 (e.g. 프로그래밍 언어)
- 자연언어 처리 : 자연언어를 컴퓨터를 통해 처리하는 것, 또는 처리할 수 있게 하는 것.
자연언어처리 분야에서 다루는 주제
- 인간이 자연언어를 가지고 할 수 있는 활동을 컴퓨터가 할 수 있게 만드는 모든 문제들이 주제가 될 수 있다.
주제 | 설명 | 예시 |
---|---|---|
챗봇 | 질의에 대해 답을 주는 행위 | |
기계 번역 | 서로 다른 언어 간의 자동 번역 | |
감정 분석 | 텍스트에 담긴 감정이 긍정/부정 또는 그 외의 어떤 카테고리에 분류될 수 있는지 분석하는 것 | 리뷰 감정 분석 |
정보 검색 및 추출 | 질의와 관련성이 높은 문서를 검색하고, 텍스트에서 질의와 관련성이 높은 특정 정보를 추출하는 것 |
|
언어 이해 | 품사 태깅, 개체명 인식, 의미역 분석… 등 |
자연언어처리를 배우는 이유
(1) AI 선도 분야
- 최근 자연언어처리는 AI 선도 분야이다.
- 근래의 AI 분야의 가장 큰 혁신은 아래 두 가지
- 2012년, AlexNet CNN architecture - 비전 분야에서 혁신
- 2017년, Transformer architecture - 자연어 분야에서 혁신
- CNN은 일반인들에게 주목받지 못했지만(생활 밀접성 때문?), Transformer는 보다 일반인에 가까운 주제로, 많은 일반인들에게 주목을 받았다.
(2) 시퀀스를 다룬다.
- 자연언어 처리는 단어나 문장의 나열이라는 긴 시퀀스를 다룬다.
- 시퀀스를 다루는 일은 자연언어 뿐만이 아니라 다른 여러 분야에 적용이 가능한 것이다.
- 예를 들어 상품 구매 이력, 컨텐츠 시청 패턴, 경제 지표의 변화나 음악 등이 긴 시퀀스에 해당된다.
- 심화적인 예시로, 컨텐츠나 상품 추천에서 유사 item 정의를 위해 word2vec과 같은 모델이 사용된다.
Reference
방송통신대학교 - 자연언어처리 수업 (유찬우 교수)
Comments