이 프로젝트에서는 트위터의 텍스트 데이터 (Tweet) 를 이용하여 감성 분석을 하고 텍스트가 작성된 점 공간과 감성 분석의 결과를 지도에 나타내 볼 것이다.
감성 분석 (혹은 감정 분석, Sentiment Analysis) 은 주어진 이미지나 텍스트, 음성 파일 등의 자료를 바탕으로 작성자의 기분과 감정을 파악하는 분석기법이다. 감성 분석은 주로 특정 서비스나 제품을 출시한 후 사람들의 리뷰를 분석해봄으로써 대중이 제품을 어떻게 받아들이는지 쉽게 파악하기 위해 쓰인다. 예를 들어, 개봉 직후 영화를 본 시청자들의 리뷰를 분석하여 영화의 흥망을 예측할 수 있다.
아래 그림은 감성 분석의 원리를 추상화하여 나타낸 것이다. 분석 결과로 내고자 하는 데이터와 감정 카테고리의 분류가 다 되어 있는 Labeled Data를 이용하여 기계 학습을 한다. 그 후 내가 분석하고자 하는 실제 데이터 (test data) 를 넣어 결과를 받는다.
감성 분석은 데이터를 positive, negative의 2가지로만 분석하는 ‘polarity sentiment analysis’와 [positive, neutral, negative], [0~9] 혹은 happy, sad, angry 등 세분화된 감정 카테고리로 분류하는 ‘multi-class sentiment analysis’ 가 있다. polarity 감성 분석은 [positive, neutral, negative], [0~9] 와 동일하게 positive 와 negative 를 양 극단에 두고 숫자를 부여하여 positive 쪽에 가까우면 positive 라고 칭하는 방식이기 때문에 multi-class 분석과 크게 다르지 않지만, 세분화된 감정을 분류하는 과정을 학습이 까다롭다. 우선 이 매뉴얼에서는 우선 polarity sentiment analysis 를 다뤄볼 것이다.
프로젝트 의도
트윗을 이용한 감성분석 결과를 실제 지도에 나타내는 것은 사람들의 감정을 공간적인 측면에서 분석해볼 수 있다는 점에서 의미가 있다. 이 프로젝트의 결과물인 ‘감정지도, EmotiMap’ 은 공간의 특성에 따라 그 곳에 머물렀던 사람들이 느끼는 감정을 파악하여 부정적인 감정을 주는 공간에는 개선의 필요성을 부여할 것이다. 또한 특정 공간을 지나갈 사람들에게 그 공간에 대한 기대감을 줄 수 있다. 지금까지 감성 분석은 주로 상업적인 의도로 사용되어 왔지만, 이 프로젝트는 도시 지역의 그림자가 드리워진 지역을 시민들이 남긴 기록을 이용하여 비추는 것을 목표로 한다.
준비사항
Python과 Jupyter Notebook 설치: 이전 게시글을 참고하여 파이썬 환경설정을 해두자.
2020/01/29 - [Computer/Textmining] - [파이썬을 이용한 토픽모델링] step 1. Python, Jupyter Notebook 설치
준비가 완료되었다면 본격적으로 데이터를 수집하고 모델에 적용시켜보겠다.
'컴퓨터 COMPUTER > Urban Data Analytics 데이터분석' 카테고리의 다른 글
[R 기초] 기초 연산자와 데이터 타입/자료형의 종류 (0) | 2020.12.26 |
---|---|
[R기초] R 설치, Rstudio 설치하기 Windows 10 (0) | 2020.10.21 |
[파이썬을 이용한 웹크롤링] Twitter 트위터 데이터 크롤링 (TwitterScraper) (4) | 2020.07.20 |
(Windows10) ArcPy 를 Jupyter Notebook 과 연결하기 (0) | 2020.07.09 |
내 Conda Environment를 Jupyter Notebook 에서 사용하기 (0) | 2020.07.07 |