자연어
자연어랑 인공 언어(C, C++, FORTRAN)와는 다르게 어법이 정해진 규칙만을 따르지 않고 일상적으로 사용되는 언어의 구조적인 체계를 말함
- 일상적으로 듣고 쓰고 말하고 읽는 모든 언어
- 인간으로서 우리는 언어를 통해 생각이나 감정을 표현함
자연어 처리 NLP
NLP(Natural Language Processing)이란 인공지능의 한 분야로, 사람의 언어 현상(자연어)을 컴퓨터와 같은 기계(인공언어)를 사용해 다루는 작업
NLP의 목적은 컴퓨터가 사람의 언어를 이해하고 여러 가지 문제를 해결할 수 있도록 하는 것이다.
자연어 분석 과정
자연어 데이터를 준비한 후 다음 과정을 통해 처리함
자연어 데이터는 음성, 문서, 이미지 등 다양하게 존재함
자연어 처리
자연어 데이터 | 숫자 형태 변환 | 자연어 채석 | 의미 추출 | 응용 |
- 자연어 데이터
- 자연어 데이터는 음성, 문서, 이미지 등에 다양하게 존재함
- 숫자 형태 변환
- 기계가 자연어를 이해할 수 있도록 vector화 시킴
- 자연어 해석
- 알고리즘, 모델 등을 통해 자연어를 해석하고 분석함
- 의미 추출
- 해석된 자연어에서 의미를 추출함
형태소 분석 (Morphological Analysis) |
구문 분석 (Syntactic Analysis) |
의미 분석 (Semantic Analysis) |
담화 분석 (Discourse Analysis) |
형태소 분석, 구문 분석은 많은 연구가 진행되었고 의미 분석과 담화 분석은 많은 연구가 필요하다.
형태소 분석
- 문장을 '형태소'라는 최소 의미 단위로 분리하는 것으로 문장을 형태소 열로 분리하고 품사를 부착함
- 중의성, 고유명사처리, 사전 미등록어 처리 문제 등으로 인해 형태소 분석이 어려워짐
구문 분석
- 문장의 구성요소를 분해하고 그들 사이의 위계 관계를 분석해 문장의 구조를 찾는 것으로 보통은 각각 어절 단위로 나눠 Parsing tree를 통해 tag를 부여하여 분리함
- Time flies like an arrow
- Time(N), flies(V), like(P), an(D), arrow(N) -> 시간은 화살과 같이 날라간다.
- Time(A), flies(N), like(V), an(D), arrow(N) -> 시간 파리들은 화살을 좋아한다.
의미 분석
- 문장의 뜻을 파악하는 작업으로 문장을 구성하는 술어와 인자들 사이의 의미적 적합성을 분석함
- 사람이 사과를 먹는다.(O)
- 비행기가 사과를 먹는다.(X)
- 사람이 비행기를 먹는다.(X)
담화 분석
- 대화 문맥을 파악하여 상호 참조를 해결하고 의도를 파악함
- 이 집 대박 맛있다! -> 대박은 긍정의 의미를 지님
- 이 집 대박 맛없다! -> 대박은 부정의 의미를 지님
자연어 처리가 이뤄지는 4가지 프로세는 앞의 단계가 뒤의 단계에 영향을 끼치기 때문에 단계별 유기적 통합이 중요함
사용분야
자연어 처리는 텍스트 분류, 챗봇, 감정분석, 번역, 텍스트 요약, 질문 응답 시스템 등 다양하게 사용될 수 있으며 텍스트 데이터의 불연속성, 모호성에도 불구하고 다양한 연구가 진행되고 있음
자연어 처리 어려움
자연어 데이터는 모호성, 다양한 표현, 불연속성 속성을 가지고 있음
- 모호성
- 단어의 중의성 문장 정보가 부족하면 문제가 됨
- 다양한 표현(동음이의어)
- 같은 의미에 대한 다양한 표현이 있음
- 불연속성
- 자연어는 불연속적으로 존재하며 앞 단어와 뒷 단어의 연관성이 없음(회귀로 알 수 없음)
단어의 동음이의어 때문에 모호성 문제가 발생함 이는 의미 분석이 가능할 정도로 많은 데이터가 필요함
발전 과정
전통적인 자연어 처리 기술
알고리즘 기반 후보 생성
70 ~ 80년대에는 Rule-Base 기반으로 알고리즘을 이용해 여러 개의 후보를 생성하고 확률적인 방법으로 모호함을 해소하고자 했음
확률 기반 애매성 해소
90 ~ 00년대에는 전보다 대용량의 데이터를 구할 수 있기 때문에 대용량 통계 데이터를 바탕으로 확률적 선택을 통해 모호함을 해소함
형태소 분석의 경우 애매성을 해소하는 전통적인 방법으로 HMM(Hidden Markov Model)이 존재함
머신 러닝의 도입
자언어 처리 분야에서도 딥러닝 모델을 통한 자연어 처리 연구가 활발히 진행되고 있음
2013년 word2 vec의 발견 이후 딥러닝 연구자들의 자연어 처리에 대한 이해도가 높아짐
이후 딥러닝 RNN을 통한 자연어 처리 연구가 진행 중임
'NLP' 카테고리의 다른 글
[NLP] 자연어데이터 전처리, NLTK (0) | 2023.04.03 |
---|---|
[NLP] 한국어 자연어처리 (0) | 2023.04.03 |
[RNN] Transformer (0) | 2023.01.31 |
[NLP] Seq2Seq with Attention (0) | 2023.01.31 |
[RNN] Backpropagation through time (0) | 2023.01.30 |