SpaCy를 사용하여 텍스트에서 의미 없는 단어 제거(Stopword Removal)

텍스트 처리에서 중요한 단계 중 하나는 의미 없는 단어(stopword)를 제거하는 것입니다. 의미 없는 단어는 문맥을 이해하는 데 도움이 되지 않으며, 자주 등장하는 단어들로 일반적으로 결정됩니다.

이번 포스트에서는 SpaCy를 사용하여 텍스트에서 의미 없는 단어를 제거하는 간단한 방법을 알아보겠습니다.

SpaCy 설치하기

먼저, SpaCy를 설치해야 합니다. 아래 명령어를 사용하여 SpaCy를 설치합니다.

!pip install spacy

또한, 필요한 언어 모델도 설치해야 합니다. 예를 들어, 영어 언어 모델인 “en_core_web_sm”은 아래 명령어로 설치할 수 있습니다.

!python -m spacy download en_core_web_sm

의미 없는 단어 제거하기

SpaCy를 사용하여 텍스트에서 의미 없는 단어를 제거하는 예제 코드는 다음과 같습니다.

import spacy

# SpaCy 언어 모델 로드
nlp = spacy.load("en_core_web_sm")

# 텍스트 문서
text = "This is an example sentence showcasing stop word removal using SpaCy."

# 텍스트를 SpaCy 문서로 변환
doc = nlp(text)

# 의미 있는 토큰만 추출
tokens = [token.text for token in doc if not token.is_stop]

# 결과 출력
print(tokens)

위의 코드는 “en_core_web_sm” 영어 언어 모델을 사용하여 텍스트 문서를 SpaCy 문서로 변환한 후, 의미 있는 토큰만 추출하는 방법을 보여줍니다. token.is_stop를 사용하여 의미 없는 단어를 필터링하고 필터링되지 않은 단어를 리스트에 저장합니다.

이제 결과를 출력하면 다음과 같이 의미 있는 단어만 추출된 것을 확인할 수 있습니다.

['example', 'sentence', 'showcasing', 'stop', 'word', 'removal', 'Using', 'SpaCy', '.']

이제 본인의 텍스트 데이터에 적용하여 의미 없는 단어(stopword)를 제거해 보세요. SpaCy를 사용하면 텍스트 데이터의 전처리 과정을 간단하게 수행할 수 있습니다.

#NLP #SpaCy