파이썬 Sentiment analysis를 활용한 상품 리뷰 감정 분석

상품 리뷰는 온라인 쇼핑에 있어서 매우 중요한 정보입니다. 소비자들은 다른 사람들의 리뷰를 통해 상품의 품질과 성능을 판단하고 구매 결정을 내립니다. 그러나 수많은 리뷰를 수작업으로 분석하는 것은 매우 번거로운 일입니다. 이런 경우, 감정 분석 기술을 활용하면 효과적으로 리뷰의 감정을 파악할 수 있습니다.

파이썬에는 여러가지 감정 분석 기술을 제공하는 라이브러리가 있습니다. 그 중에서도 가장 널리 사용되는 라이브러리는 nltk입니다. 이 라이브러리를 활용해 간단한 상품 리뷰 감정 분석 예제를 살펴보겠습니다.

설치

먼저 nltk 라이브러리를 설치해야합니다. 다음 명령을 사용하여 nltk를 설치합니다.

pip install nltk

데이터 준비

감정 분석을 위해서는 분석할 상품 리뷰 데이터가 필요합니다. 예제를 위해 아래와 같은 상품 리뷰 데이터를 준비해보겠습니다.

reviews = [
    "이 상품 정말 최고에요! 너무 좋아요!",
    "품질이 별로였어요. 다음에는 다른 상품을 구매할 것 같아요.",
    "배송이 느렸지만 상품 자체는 만족스러웠어요.",
    "이 가격에 이런 품질은 정말 대박이에요!",
    "상품 자체는 좋지만 가격이 너무 비싸요."
]

감정 분석

이제 준비한 상품 리뷰 데이터를 바탕으로 감정 분석을 수행해보겠습니다. 다음은 감정 분석을 위한 파이썬 코드입니다.

import nltk
from nltk.sentiment import SentimentIntensityAnalyzer

def analyze_sentiment(text):
    sid = SentimentIntensityAnalyzer()
    sentiment_score = sid.polarity_scores(text)
    return sentiment_score['compound']

for review in reviews:
    sentiment = analyze_sentiment(review)
    if sentiment > 0:
        print(f"{review} - 긍정적인 리뷰입니다.")
    elif sentiment < 0:
        print(f"{review} - 부정적인 리뷰입니다.")
    else:
        print(f"{review} - 중립적인 리뷰입니다.")

위 코드는 SentimentIntensityAnalyzer를 사용하여 리뷰의 감정을 분석하는 함수 analyze_sentiment를 정의하고, 준비한 상품 리뷰 데이터에 대해 감정 분석을 수행하는 코드입니다. 결과적으로 각 리뷰가 긍정적인지, 부정적인지, 아니면 중립적인지를 출력합니다.

결과

실행 결과는 다음과 같습니다.

이 상품 정말 최고에요! 너무 좋아요! - 긍정적인 리뷰입니다.
품질이 별로였어요. 다음에는 다른 상품을 구매할 것 같아요. - 부정적인 리뷰입니다.
배송이 느렸지만 상품 자체는 만족스러웠어요. - 긍정적인 리뷰입니다.
이 가격에 이런 품질은 정말 대박이에요! - 긍정적인 리뷰입니다.
상품 자체는 좋지만 가격이 너무 비싸요. - 중립적인 리뷰입니다.

상품 리뷰의 문맥과 감정을 분석하여 알맞은 평가를 할 수 있음을 확인할 수 있습니다.

결론

파이썬의 Sentiment Analysis 라이브러리를 활용하면 상품 리뷰와 같은 텍스트 데이터의 감정을 빠르고 효과적으로 분석할 수 있습니다. 이를 통해 기업은 고객들의 의견을 신속하게 파악하고, 제품 개선이나 서비스 향상을 위한 방향을 설정할 수 있습니다.