데이터 전처리: 개념 및 실천 – Tokenization
ㅁ 개념 및 실천
1. Tokenization
ㅇ 정의:
텍스트 데이터를 의미 있는 최소 단위(토큰)로 분리하는 과정으로, 자연어 처리에서 문장이나 단어, 서브워드 단위로 나눌 수 있음.
ㅇ 특징:
– 언어별로 규칙이 다르며, 영어는 공백 기반이 많지만 한국어는 형태소 분석이 필요함
– 공백, 구두점, 특수문자 처리 규칙이 중요
– 전처리 단계에서 후속 분석(벡터화, 임베딩)에 직접적인 영향을 미침
ㅇ 적합한 경우:
– 텍스트 분류, 감성 분석, 기계 번역 등 NLP 모델 학습 전 데이터 준비 시
– 비정형 텍스트를 구조화된 형태로 변환해야 하는 경우
ㅇ 시험 함정:
– 토큰 단위가 항상 단어라는 오해 (서브워드, 문자 단위도 가능)
– 언어별 토크나이저 차이를 무시하고 동일 규칙 적용
– 구두점 제거가 항상 좋은 것은 아님 (의미 손실 가능)
ㅇ 시험 대비 “패턴 보기” 예시:
– O: “토큰화는 문장을 의미 있는 최소 단위로 분리하는 과정이다.”
– O: “한국어 토큰화에는 형태소 분석이 필요할 수 있다.”
– X: “토큰화는 항상 공백 기준으로만 수행된다.”
– X: “토큰 단위는 반드시 단어여야 한다.”
ㅁ 추가 학습 내용
토큰화 기법은 크게 Rule-based, Statistical, Subword 기반(BPE, WordPiece)으로 나눌 수 있다.
서브워드 토큰화는 희귀 단어 처리와 OOV(Out-Of-Vocabulary) 문제 해결에 유리하다.
Byte-level 토큰화(GPT 계열)는 문자를 바이트 단위로 처리하며, Whitespace 토큰화는 공백을 기준으로 단어를 분리한다.
한국어 형태소 분석기 예시로 Komoran, Mecab, Khaiii가 있다.
토큰화 과정에서 대소문자 변환, 불용어 제거, 표제어 추출(lemmatization)과의 차이를 구분해야 하며, 이 부분이 혼동되기 쉬운 출제 포인트다.