텍스트 데이터 분석
텍스트 (비정형데이터로부터) 정보를 추출해 내는 작업
자연어처리(NLP,Natural Language Processing)에 기반
전처리과정 텍스트 분석
- 텍스트 정규화(Text Normalization)
텍스트의 형태를 일관되게 변형하는 작업
- 토큰화(Tokenization)
텍스트를 의미단위(토큰)로 분할하는 작업
- 어간추출(Stemming)
형태가 변형된 단어로부터 어간을 부누리하는 작업
- 형태소 분석(POS-Tagging)
토큰의 형태소를 파악하는 작업
텍스트분석의 종류
- 정보 추출 : 문서내의 정형데이터를 추출하는 작업
- 문서 분류 : 문서들을 특정 분류 체계에 따라 분류하는 작업
- 감성 분석 : 문서에 내포되어있는 감정과 의견을 추출하는 작업
토큰화
텍스트를 의미단위로 분할하는 작업 단위: 토큰
Type 단어요소, 어간
Token 텍스트 내부의 원소
언어별 토큰화 방법
- 한국어 : 단순 공백기준이 아닌 품사 기준으로 토큰
- 영어 : 단순 공백 기준 분할
- 독일어 : 복합명사에 대한 분리 방법이 요구됨
- 중국어 : 공백이 없으며 여러 문자로 한 단어가 이루어짐
Lemmatization : 문장 속 다양한 형태로 변형된 단어의 표제어를 찾는 작업
표제어 : 단어의 의미를 사전에서 찾을 때 사용하는 기본형
어간 추출(Stemming)
형태가 변형된 단어에 대해 접사 등을 제거하고 어간을 분리해 내는 작업
포터 알고리즘 : 영어의 어간을 추출하는 대표적인 알고리즘
포터알고리즘의 규칙
명사의 복수형을 단수형으로 고치기 위한 규칙을 적용
동사를 원형으로 변환, 단어의 품사가 바뀌면서 단어가 변형된 경우에 그 단어의 기본형으로 다시 변환
단어의 어미에 변형이 일어난 경우에 다시 기본형으로 변환
형태소 분석
토큰의 품사정보를 추출하는 작업
- Closed Class
상대적으로 고정되어 있는 세트
대표적으로 전치사, 조동사, 대명사 주로 문장내에서 문법적인 역할을 하는 단어
- Open class
새로운 단어의 등장이 상대적으로 많은 세트
대표적으로 명사, 동사 형용사
정보 추출
구조화되지 않은 문서내에서 필요한 정보를 포함하고 있는 문서를 찾아내는 작업
Bag of Words 모델 : 문서 내에 등장하는 단어들의 순서를 무시함
각 단어가 문서에서 정말 중요한 단어인지 알아보는 방법
- Term Frequency(TF)
단어 빈도 tf는 특정 단어 t가 특정문서 d 내에 등장하는 빈도
문서의 관련도, 타당성 : term frequency와 비례하게 증가하지 않음
- Inverse Document Frequency(IDF)
df : 단어 t가 등장한 문서의 수
이 숫자가 작을수록 이 단어는 문서에 나타났을 때 그 문서에서 중요한 역할을 하고 있을 가능성이 높다.