8/2 NLP
이 포스팅은 위의 강의와 자료를 보고 정리한 게시글입니다..
자연어
- 일상적으로 사람이 말하고 듣고 쓰는 언어
- 언어를 통해 생각이나 감정을 전달
- 프로그래밍 언어(인공 언어)와 반대되는 개념
자연어 처리
● 인공지능의 한 분야로, 사람의 언어 현상을 컴퓨터와 같은 기계를 사용해 다루는 작업
● 자연어 처리의 최종 목표는 컴퓨터가 자연어를 이해하고 여러 문제를 해결하게 하는 것
자연어 처리 과정
● 자연어 데이터 수집 : 처리할 코퍼스(자연어 데이터)를 준비합니다.
● 숫자형태 반환 : 데이터를 컴퓨터가 이해할 수 있는 숫자로 변환합니다.(벡터화, embedding)
● 자연어 해석
● 의미 추출
● 응용 : 감정 분석, 문장 생성 등 응용해서 문제 해결
자연어 분석 단계
● 자연어 데이터 : 코퍼스 수집
● 형태소 분석 : 문장을 형태소로 분리
● 구문 분석 : 각 어절의 구문적 역할을 찾기(동사, 명사, 형용사 …)
● 의미 분석 : 여러가지 방향으로 해석될 수 있는 문장의 여러 의미 중 가장 적합한 의미를 찾기
● 담화 분석 : 문맥을 파악하여 의도를 파악한다.
예 ) 여기 고기 진짜 맛없네. 대단하다 대단해 (부정의 의미)
자연어 처리의 어려움
● 다양한 표현 : 같은 표현에 대한 다양한 의미(동음이의어)
● 모호성 : 단어의 중의성
● 불연속적 데이터
코퍼스(Corpus)
- 자연어 연구를 위해 목적을 가지고 언어의 표본을 추출한 집합
- 둘 이상의 코퍼스는 코포라(corpora)라고 부름
- 코포라 타입
- Isolate corpus : 텍스트, 자연어 모음
- Categorized corpus : 뉴스, 취미, 유머 등 다양한 타입의 부류로 그룹화된 텍스트
- Overlapping corpus : 분류된 텍스트 모음이지만 카테고리가 겹침
- Temporal corpus : 일정 기간동안 자연어를 사용한 데이터 모음
NLTK
-
Python으로 작성된 영어의 자연어 처리를 위한 라이브러리
데이터 토큰화
- 주어진 코퍼스를 토큰이라는 단위로 나누는 과정
- 글은 문단 => 문장 => 단어 => 형태소 => 음소로 세분화 되므로 토큰화하는 과정이 필요하다.
데이터 정제
- 데이터에서 손상되거나 부정확한 부분을 감지하고 수정하는 과정
데이터 정규화
-
텍스트 데이터에서 정규화는 표현 방법이 다른 단어들을 통합시켜 같은 단어로 통합시키는 과
##
댓글남기기