Notice
Recent Comments
- 아이고 도움이 되셨다니 다행이네요. 감사합니다
- 제가 본 R-CNN 정리글 중에 가장 이해가 잘 되는것 같습니다! 정성스럽고 자세⋯
- 오 빠른 댓글 감사합니다 ㅎㅎ
- 오늘도 잘 보고 갑니다!!
- 읽어주셔서 감사합니다 :-)
- 포스팅 잘 보구 가요!! :)
- RCNN 계열을 2 stage detector, YOLO 계열을 1 stage ⋯
- 안녕하세요! 논문 리뷰 잘 읽었습니다. abstract에서 end-to-end 라⋯
- 안녕하세요! 최종분류 부분에서 '따라서 최종적으로 Heart Disease가 있⋯
- 안녕하세요! 어느 부분을 말씀하시는 것인가요? 마지막에 yes 4개, no 4개인⋯
- 안녕하세요! 글감사합니다. 마지막 결론이 헷갈리는데요, 샘플에서 Heart dis⋯
- 둘 다 보면 더욱 좋죠 ㅎㅎ 읽어주셔서 감사합니다~
- 클린 코드 읽어봐야지 했었는데, 파이썬 코드로 된 버전도 나왔다니 좋은 정보네요!⋯
- 댓글 감사합니다. 머신러닝을 해야 하는데 책들이 재밌어서 딴 짓을 하고 있네요 제⋯
- 머신러닝 공부하려고 들어왔는데 모든 포스팅이 왜 다 제 취향이죠... 저도 민음사⋯
귀퉁이 서재
NLP - 3. 불용어(Stop word) 제거 본문

텍스트 전처리 두 번째 주제는 불용어(Stop word) 제거입니다.
불용어(Stop word)는 분석에 큰 의미가 없는 단어를 지칭합니다. 예를 들어 the, a, an, is, I, my 등과 같이 문장을 구성하는 필수 요소지만 문맥적으로 큰 의미가 없는 단어가 이에 속합니다. 이런 불용어는 텍스트에 빈번하게 나타나기 때문에 중요한 단어로 인지될 수 있습니다. 하지만 실질적으로는 중요한 단어가 아니므로 사전에 제거해줘야 합니다.
이전과 마찬가지로 파이썬 머신러닝 완벽 가이드 (권철민 저), 딥 러닝을 이용한 자연어 처리 입문 (유원주 저)을 요약정리했습니다.
불용어 확인하기
import nltk
nltk.download('stopwords')
print('영어 불용어 갯수:',len(nltk.corpus.stopwords.words('english')))
print(nltk.corpus.stopwords.words('english')[:40])
영어 불용어 갯수: 179
['i', 'me', 'my', 'myself', 'we', 'our', 'ours', 'ourselves', 'you', "you're", "you've", "you'll", "you'd", 'your', 'yours', 'yourself', 'yourselves', 'he', 'him', 'his', 'himself', 'she', "she's", 'her', 'hers', 'herself', 'it', "it's", 'its', 'itself', 'they', 'them', 'their', 'theirs', 'themselves', 'what', 'which', 'who', 'whom', 'this']
불용어 제거하기
from nltk.corpus import stopwords
from nltk.tokenize import word_tokenize
example = "Family is not an important thing. It's everything."
stop_words = set(stopwords.words('english'))
word_tokens = word_tokenize(example)
result = []
for token in word_tokens:
if token not in stop_words:
result.append(token)
print(word_tokens)
print(result)
['Family', 'is', 'not', 'an', 'important', 'thing', '.', 'It', "'s", 'everything', '.']
['Family', 'important', 'thing', '.', 'It', "'s", 'everything', '.']
is, not, an과 같은 불용어가 제외된 것을 볼 수 있습니다.
한국어 불용어
nltk의 stopwords에서는 한국어 불용어를 지원하지 않기 때문에 별도로 처리해줘야 합니다.
(Reference3) 링크에서 일반적으로 사용되는 한국어 불용어 리스트를 볼 수 있습니다. 한국어 불용어를 처리하는 가장 좋은 방법은 txt나 csv 파일에 불용어를 직접 정리해놓고, 이를 불러와서 사용하는 것입니다.
References
Reference1: 파이썬 머신러닝 완벽 가이드 (권철민 저)
'자연어 처리 (NLP)' 카테고리의 다른 글
NLP - 6. 카운트 기반 벡터화(CountVectorizer)와 TF-IDF 벡터화 (2) | 2020.02.15 |
---|---|
NLP - 5. Bag of Words (BOW) (0) | 2020.02.13 |
NLP - 4. 어간 추출(Stemming)과 표제어 추출(Lemmatization) (0) | 2020.02.12 |
NLP - 2. 텍스트 토큰화(Text Tokenization) (0) | 2020.02.10 |
NLP - 1. 자연어 처리(Natural Language Processing)란 무엇인가? (0) | 2020.02.09 |
0 Comments