딥 러닝을 이용한 자연어처리 입문1. 텍스트 전처리(4)

0. 불용어(Stopword)

  • cleaning. 데이터에서 의미가 없는 토큰 제거. (분석에 도움이 되지 않으며 복잡도만 높임)
  • konlpy example
import nltk
nltk.download('punkt')
from nltk.corpus import stopwords 
from nltk.tokenize import word_tokenize 

example = '1980년대, 약 10년 전 한국을 떠나 미국에 정착한 한인 이민자인 제이콥(스티븐 연)과 모니카(한예리) 부부는 아칸소 주의 농장이 딸린 트레일러 집으로 첫째 딸 앤과 심장병이 있는 둘째 아들 데이빗을 데리고 이사를 한다. 제이콥은 자식들에게 농장을 소개하며 이제 농사를 짓고 살 거라고 말하지만, 모니카는 한인들이 많이 사는 도시인 캘리포니아 로스앤젤레스를 떠나 낯설고 아무 것도 없는 시골 땅에 정착하는 이 상황이 막막하고 짜증만 난다.'
stop_words = "아 휴 어 나 \
우리 \
저희 \
따라 \
의해 \
을 \
를 \
에 \
의 \
가 \
으로 \
로 \
...
"#csv/json등 불용어 사전형식으로 저장/불러다 사용

stop_words=stop_words.split(' ')
word_tokens = word_tokenize(example)

result = [] 
for w in word_tokens: 
    if w not in stop_words: 
        result.append(w) 
# 위의 4줄은 아래의 한 줄로 대체 가능
# result=[word for word in word_tokens if not word in stop_words]

print(word_tokens) 
print(result)
----------------------------------------------------
['1980년대', ',', '약', '10년', '전', '한국을', '떠나', '미국에', '정착한', '한인', '이민자인', '제이콥', '(', '스티븐', '연', ')', '과', '모니카', '(', '한예리', ')', '부부는', '아칸소', '주의', '농장이', '딸린', '트레일러', '집으로', '첫째', '딸', '앤과', '심장병이', '있는', '둘째', '아들', '데이빗을', '데리고', '이사를', '한다', '.', '제이콥은', '자식들에게', '농장을', '소개하며', '이제', '농사를', '짓고', '살', '거라고', '말하지만', ',', '모니카는', '한인들이', '많이', '사는', '도시인', '캘리포니아', '로스앤젤레스를', '떠나', '낯설고', '아무', '것도', '없는', '시골', '땅에', '정착하는', '이', '상황이', '막막하고', '짜증만', '난다', '.']
['1980년대', '10년', '전', '한국을', '떠나', '미국에', '정착한', '한인', '이민자인', '제이콥', '스티븐', '연', '모니카', '한예리', '부부는', '아칸소', '주의', '농장이', '딸린', '트레일러', '집으로', '첫째', '딸', '앤과', '심장병이', '둘째', '아들', '데이빗을', '데리고', '이사를', '.', '제이콥은', '자식들에게', '농장을', '소개하며', '농사를', '짓고', '살', '거라고', '말하지만', '모니카는', '한인들이', '많이', '사는', '도시인', '캘리포니아', '로스앤젤레스를', '떠나', '낯설고', '아무', '것도', '없는', '시골', '땅에', '정착하는', '상황이', '막막하고', '짜증만', '난다', '.']

stopword사전 :https://www.ranks.nl/stopwords/korean 참고

좋은 웹페이지 즐겨찾기