Chapter 2. 텍스트 전처리

텍스트 전처리: 텍스트에서 불필요한 특수문자(문장부호)등을 제거하고 각 단어의 "품사"까지 파악하는 것

전처리 단계

  1. 정제 : 텍스트에서 노이즈 및 분석에 별 도움이 안 되는 단어들(=불용어)제거. 이때, "정제"단계는 대부분 토큰화 이전에 이루어지지만, 토큰화 이후에도 지속적으로 실행이 됨
  2. 토큰화 : 주어진 텍스트를 원하는 단위(토큰)으로 나누는 작업, 보통은 단어를 기준으로 나눔(=단어 토큰화)
  3. 정규화 : 같은 의미를 가진 동일한 단어임에도 불구하고 형태가 다르게 쓰일 경우, 이를 통일시켜 표준 단어로 만드는 작업. 예를 들어 go같은 경우에는 주어가 3인칭일 때 goes로 쓰이고, 1인칭이나 2인칭일 때 go로 쓰이는데 이를 같은 단어로 통일 시켜주는 작업을 의미한다. 즉, 단어의 다양한 변형을 원형의 형태로 통일하는 작업을 정규화라고 한다. 정규화는 방법에 따라 어간추출과 표제어 추출로 나뉜다.
  4. 품사 태깅 : 토큰화한 단어에 대해 품사(=단어를 문법적 기능에 따라 분류한 것,(명사, 대명사, 동사, 형용사등등))를 파악해 부착하는 것을 의미. 이때 같은 단어이더라도 문장에서 어떻게 쓰이냐에 따라 의미와 품사가 바뀔 수도 있음.

2. 토큰화(Tokenization)

NLTK (https://www.nltk.org/) 설치

2.1 문장 토큰화(sentence tokenize)

2.2 단어 토큰화 (word tokenize)

2.3 정규표현식을 이용한 토큰화

2.4 노이즈와 불용어 제거

2. 정규화(Normalization)

같은 의미로 쓰인 동일한 단어임에도 불구하고 다른 형태로 쓰여진 단어들을 통일해 표준 단어로 만드는 작업

즉, 다양한 변형을 원형의 형태로 통일하는 작업 = 정규화

* 방법에 따라 어간추출과 표제어 추출로 나뉘어짐

2.1 어간 추출(Stemming)

포터스테머(PorterStemmer)

랑캐스터 스티머(Lancaster Stemmer)

2.2 표제어 추출(Lemmatization)

이때 정확한 기본형을 알기 위해서는 품사를 알아야 하는데, 품사는 문장의 문맥을 파악해야만 알 수 있다

3. 품사 태깅(Part-of-Speech Tagging)

3.1 품사의 이해

3.2 NLTK를 이용한 품사 태깅

3.3 한글 형태소 분석과 품사 태깅

KoNLPy 설치

https://konlpy.org/ko/latest/install/