[python] NLTK를 사용해 텍스트의 감정을 분류하는 방법은 무엇인가요?

텍스트 감정 분류는 텍스트 데이터에 대한 감정이나 감성을 자동적으로 분류하는 작업입니다. 이는 자연어 처리 분야에서 널리 사용되며, NLTK(Natural Language Toolkit) 라이브러리를 사용하면 쉽게 구현할 수 있습니다.

NLTK는 파이썬의 강력한 자연어 처리 라이브러리로, 텍스트 분석에 필요한 다양한 기능을 제공합니다. 여기에서는 NLTK의 감정 분류를 위한 간단한 예제를 살펴보겠습니다.

먼저, NLTK를 설치하고 import합니다:

!pip install nltk

import nltk
from nltk.sentiment import SentimentIntensityAnalyzer
nltk.download('vader_lexicon')

이제 텍스트를 입력하고 SentimentIntensityAnalyzer를 사용하여 감정을 분류해보겠습니다:

text = "이 영화 정말 대박이다!"
sia = SentimentIntensityAnalyzer()
sentiment = sia.polarity_scores(text)

if sentiment['compound'] >= 0.05:
    print("긍정적인 감정입니다.")
elif sentiment['compound'] <= -0.05:
    print("부정적인 감정입니다.")
else:
    print("중립적인 감정입니다.")

위의 코드에서는 “이 영화 정말 대박이다!”라는 텍스트를 사용하고, SentimentIntensityAnalyzer를 사용하여 감정을 평가합니다. 감정은 “compound” 값을 기준으로 분류됩니다. compound 값이 0.05 이상이면 긍정적인 감정으로 분류되고, -0.05 이하면 부정적인 감정으로 분류됩니다. 그 외의 경우에는 중립적인 감정으로 분류됩니다.

위의 코드는 NLTK를 사용한 텍스트 감정 분류의 간단한 예시입니다. NLTK는 다양한 감정 분류 알고리즘과 데이터셋을 제공하므로, 복잡한 텍스트 감정 분류 작업에도 적용할 수 있습니다.

참고 자료: