텍스트 데이터는 단순한 문자들의 나열이 아니라, 사람들의 감정, 감성, 그리고 의견을 담고 있는 중요한 정보입니다. 하지만 이러한 것들을 정량적으로 분석하는 것은 쉽지 않습니다. 센티멘트 분석(Sentiment Analysis)은 이런 문제를 해결하기 위해 개발된 기법으로, 대량의 텍스트 데이터를 분석하여 문서의 긍정적, 부정적, 또는 중립적 감성을 판단하는 데 도움을 줍니다.

11.1 감성/센티멘트 분석의 개념

센티멘트 분석(Sentiment Analysis)은 텍스트 데이터를 분석하여 그 속에 담긴 의견의 극성(polarity) — 즉, 긍정적인지, 부정적인지, 중립적인지를 판단하는 자연어 처리(NLP) 기술입니다. 이 분석은 기업의 고객 피드백, 소셜미디어의 여론 파악, 금융 뉴스 기반 투자 분석 등 다양한 분야에서 활용됩니다.

<aside> 📌

여기서 잠깐, 용어 정리가 필요합니다!

Sentiment Analysis를 한국어로 번역할 때 ‘감성 분석’, ‘감정 분석’, ‘긍부정 분석’ 등이 혼용됩니다.

그러나 여기에서는 혼란을 피하기 위해 'Sentiment Analysis'를 ‘센티멘트 분석'으로 음역하여 사용하겠습니다.

</aside>

11.2 센티멘트 분석 모델

텍스트 감성 분석이란 문장이나 문서가 긍정적인지, 부정적인지, 혹은 중립적인지를 자동으로 판별하는 기술입니다. 컴퓨터가 감정을 인식하는 방식은 크게 세 가지로 나눌 수 있습니다.


1. 사전 기반 센티멘트 분석 (Lexicon-based Sentiment Analysis)

사전 기반 센티멘트 분석은 감정을 나타내는 단어를 미리 정의된 감성 사전(sentiment lexicon)에 따라 판별하는 방법입니다. 즉, 사람이 만들어 둔 ‘긍정 단어 목록’과 ‘부정 단어 목록’을 기준으로 텍스트의 감성을 판단하는 단순하고 직관적인 방법입니다. 예를 들어 “이 영화 정말 훌륭해요!”라는 문장은 ‘훌륭하다’가 긍정 단어로 분류되어 긍정으로 판정됩니다. 반대로 “정말 끔찍한 경험이었어요.”라는 문장은 ‘끔찍하다’가 부정 단어로 분류되어 부정으로 판정됩니다.

✅ 작동 과정

  1. 텍스트에서 단어를 추출합니다.
  2. 추출된 단어가 감성 사전에 있는지 확인합니다.
  3. 긍정 단어가 더 많으면 긍정 문장, 부정 단어가 더 많으면 부정 문장으로 분류합니다.