NLP (자연어 처리)란?
자연어(natural language)는 일상생활에서 사용하는 보편적인 언어를 뜻하며
자연어 처리(natural language processing, NLP)는 컴퓨터가 자연어를 처리하는 일을 뜻한다.
NLP를 활용하고 있는 예시
NLP를 활용하고 있는 예시들을 통해 NLP의 개념을 간략하게 이해해 보자.
챗봇(Chatbot)
챗봇은 사용자의 메시지에 응답하는 봇을 말한다. 단순히 미리 설정된 규칙에 따라 발화를 하는 것이 아닌 NPL 및 생성 기술을 통해 사용자와 인간 같은 대화를 할 수 있게 하는 챗봇에는 다음과 같은 기술들이 적용되어 있다.
- 감정분석(Sentiment Analtsis) : 텍스트에 녹아 있는 감성 또는 의견을 파악할 수 있다.
- 토큰화(Tokenization) : 주어진 텍스트를 최소한의 의미만을 담는 단위로 쪼갤 수 있다.
- 개체명 인식(Named Entity Recognition) : 주어진 텍스트로부터 주제를 파악할 수 있다.
- 정규화(Nomalization) : 의도된 오타를 파악할 수 있다.
- 의존 구문분석(Dependency Parsing) : 문장 구성 성분(동사, 명사 등..)을 분석할 수 있다.
인공지능 개인 비서
Siri와 같은 인공지능 개인 비서는 사용자의 음성을 통한 질문을 파악한 후에 이에 대한 답변을 사용자에게 전달한다. 여기에는 다음과 같은 기술들이 적용되어 있다.
- 피처 분석(Feature Analysis) : 음성데이터로부터 특징을 추출할 수 있다.
- 언어 모델(Language Model) : 언어별로 갖고 있는 특성을 반영할 수 있다. 예시로 영어는 주어-동사-목적어 순이지만 한국어는 주어-목적어-동사이다. 이러한 언어별 특성을 반영해야 한다.
- 딥러닝(Deep Learning) : 이미 학습된 데이터로부터 음성 신호를 처리할 수 있다. 현재 금 시세와 같은 사용자의 질문에 미리 학습된 데이터로부터 이에 대한 적절한 답변을 할 수 있어야 한다.
- 은닉 마르코프 모델(Hidden Markov Model, HMM) : 앞으로 나올 단어 또는 주제를 예측할 수 있다.
- 유사도 분석(Similarity Analysis) : 음성 신호가 어떤 기준에 부합하는지 분석할 수 있다. 사용자의 음성을 질문, 감탄, 혼잣말과 같은 기준으로 분석할 수 있어야 한다.
번역기
번역기에는 다음과 같은 기술들이 적용되어 있다.
- 인코딩(Encording) : 유사도를 기반으로 자연어의 특징을 추출할 수 있다. 인코딩을 통해 텍스트에서 중요한 부분만 추출할 수 있다.
- 시계열 모델링(Time Series Modeling) : 문장을 시간에 따른 데이터로 처리할 수 있다.
- 어텐션 메커니즘(Attention Mehanism) : 번역에 필요한 부분에만 집중할 수 있다.
- 셀프 어텐션(Self-Attention) : 문장 사이의 상관관계를 분석할 수 있다.
- 트랜스포머(Transformer) : Attention 구조를 이용한 번역 원리.
'AI인공지능' 카테고리의 다른 글
| 언어모델(Language Model, LM) 소개 (0) | 2024.08.15 |
|---|---|
| 텍스트 전처리(Text preprocessing) (0) | 2024.08.13 |