본문 바로가기
IT 와 Social 이야기/Python

[데이터 사이언스 스쿨] ml3.1 NLTK 자연어 처리 패키지

by manga0713 2021. 5. 6.

NLTK(Natural Language Toolkit) 패키지는 교육용으로 개발된 자연어 처리 및 문서 분석용 파이썬 패키지다.

 

○ 말뭉치(corpus) : 자연어 분석 작업을 위해 만든 샘플 문서 집합을 말한다.

 

- 단순히 소설, 신문 등의 문서를 모아놓은 것도 있지만 품사, 형태소 등의 보조적 의미를 추가하고 쉬운 분석을 위해 구조적인 형태로 정리해 놓은 것을 포함한다.

 

- NLTK의 말뭉치 자료는 설치시에 제공되지 않고 download 명령으로 사용자가 다운로드 받아야 한다.

 

 

 

○ 토큰(token) 생성

 

자연어 문서를 분석하기 위해서는 우선 긴 문자열을 분석을 위한 작은 단위로 나누어야 한다. 이 문자열 단위를 토큰(token)이라고 하고 이렇게 문자열을 토큰으로 나누는 작업을 토큰 생성(tokenizing)이라고 한다.

 

문자열을 토큰으로 분리하는 함수를 토큰 생성 함수(tokenizer)라고 한다. 토큰 생성 함수는 문자열을 입력받아 토큰 문자열의 리스트를 출력한다.

 

 

 

 

○ 형태소(morpheme) : 언어학에서 일정한 의미가 있는 가장 작은 말의 단위. 보통 자연어 처리에서는 토큰으로 형태소를 이용한다.

 

○ 형태소 분석(morphological analysis) : 단어로부터 어근, 접두사, 접미사, 품사 등 다양한 언어적 속성을 파악하고 이를 이용하여 형태소를 찾아내거나 처리하는 작업이다.

 

- 어간추출(stemming)

- 원형복원(lemmatizing)

- 품사부착(part-of-speech tagging)

 

 

○ 품사(POS, part-of-speech) : 낱말을 문법적인 기능이나 형태, 뜻에 따라 구분한 것

 

 

○ Text 클래스 : 토큰열을 입력하여 생성한다.

 

 

○ FreqDist : 문서에 사용된 단어(토큰)의 사용빈도 정보를 담는 클래스

 

- 단어를 키(key), 출현빈도를 값(value)으로 가지는 사전 자료형과 유사

 

 

 

○ 워드클라우드 : 단어의 사용 빈도수에 따라 워드클라우드(Word Cloud) 시각화

 

 

 

dss_ml3.1 nltk 자연어 처리 패키지.ipynb
0.15MB

 

- 출처 : [데이터 사이언스 스쿨] ml3.1 NLTK 자연어 처리 패키지