728x90
반응형
불용어
문장에서 대세로 작용하지 않는, 중요도가 낮은 단어를 제거한다. 예를 들면, I, my, me, over, 조사, 접미사 같은 단어들은 문장에서 자주 등장하지만 실제 의미 분석을 하는 데는 거의 기여하는 바가 없는 경우가 있다. 이러한 단어들을 불용어라고 하며, NLTK에서는 위와 같은 100여개 이상의 영어 단어들을 불용어로 패키지 내에서 미리 정의하고 있다.
불용어 제거 방법
1. 불용어(Stopword) 목록을 받아온다.
2. 정제할 문장을 토큰화한다.
3. 토큰화된 각 단어마다:
3-1. 단어가 불용어 목록에 없는 경우 -> 정제 결과에 추가
3-2. 단어가 불용어 목록에 있는 경우 -> Pass
영어 불용어
NLTK에서 불용어 확인하기
불용어 개수 : 179
불용어 10개 출력 : ['i', 'me', 'my', 'myself', 'we', 'our', 'ours', 'ourselves', 'you', "you're"]
이처럼 NLTK가 정의한 영어 불용어는 179개인 것을 확인할 수 있다.
NLTK를 통해서 불용어 제거하기
불용어 제거 전 : ['Family', 'is', 'not', 'an', 'important', 'thing', '.', 'It', "'s", 'everything', '.']
불용어 제거 후 : ['Family', 'important', 'thing', '.', 'It', "'s", 'everything', '.']
한국어 불용어
한국어 불용어 처리 제거하기
한국어에서 불용어를 제거하는 방법으로는 간단하게는 토큰화 후에 조사, 접속사 등을 제거하는 방법이 있다. 하지만 불용어를 제거하려고 하다보면 조사나 접속사와 같은 단어들뿐만 아니라 명사, 형용사와 같은 단어들 중에서 불용어로서 제거하고 싶은 단어들이 생기기도 한다. 이에 결국에는 사용자가 직접 불용어 사전을 만들게 되는 경우가 많다.
불용어 제거 전 : ['고기', '를', '아무렇게나', '구', '우려', '고', '하면', '안', '돼', '.', '고기', '라고', '다', '같은', '게', '아니거든', '.', '예컨데', '삼겹살', '을', '구울', '때', '는', '중요한', '게', '있지', '.']
불용어 제거 후 : ['고기', '하면', '.', '고기', '라고', '다', '아니거든', '.', '예컨데', '삼겹살', '을', '중요한', '있지', '.']
728x90
반응형
'NLP > 딥러닝을 이용한 자연어 처리 입문' 카테고리의 다른 글
[NLP] 1-6. 패딩(Padding) (0) | 2023.12.01 |
---|---|
[NLP] 1-5. 정수 인코딩 (0) | 2023.11.30 |
[NLP] 1-3. 추출(Stemming) (1) | 2023.11.29 |
[NLP] 1-2. 정제(Cleaning)와 정규화(Normalization) (0) | 2023.11.29 |
[NLP] 1-1. 토큰화(Tokenization) (0) | 2023.11.28 |