한글 토큰화 예제
한국어 토큰화는 앞서 배운 KoNLPy 라이브러리를 사용합니다. 9장 예제 data 폴더의 ratings_train.txt5 데이터 파일을 사용합니다.
코드 9-19 라이브러리 호출 및 데이터셋 준비
import csv
from konlpy.tag import Okt
from gensim.models import word2vec
f = open(r'..\data\ratings_train.txt', 'r', encoding='utf-8')
rdr = csv.reader(f, delimiter='\t')
rdw = list(rdr)
f.close()
한글 형태소 분석을 위해 오픈 소스 한글 형태소 분석기(Twitter(Okt))를 사용합니다.
코드 9-20 오픈 소스 한글 형태소 분석기 호출
twitter = Okt()
result = []
for line in rdw: ------텍스트를 한 줄씩 처리
malist = twitter.pos(line[1], norm=True, stem=True) ------ 형태소 분석
r = []
for word in malist:
if not word[1] in ["Josa","Eomi","Punctuation"]: ------ 조사, 어미, 문장 부호는 제외하고 처리
r.append(word[0])
rl = (" ".join(r)).strip() ------ 형태소 사이에 공백 “ ”을 넣고, 양쪽 공백은 삭제
result.append(rl)
print(rl)
5 https://github.com/e9t/nsmc에 오픈된 데이터 중 하나입니다.