WPM(Word Piece Model)을 활용한 구글 플레이스토어 앱의 댓글 감정 분석 연구
박재훈
O, 구명완
서강대학교 정보통신대학원
[email protected], [email protected]
A Study on the Sentiment analysis of Google Play Store App Comment Based on WPM(Word Piece Model)
Park jae Hoon
O, Myong-wan Koo
Sogang University, Graduate School of Information & Technology 요 약
본 논문에서는 한국어 기본 유니트 단위로 WPM을 활용한 구글 플레이 스토어 앱의 댓글 감정분석을 수
행하였다. 먼저 자동 띄어쓰기 시스템을 적용한 후, 어절단위, 형태소 분석기, WPM을 각각 적용하여 모델
을 생성하고, 로지스틱 회귀(Logistic Regression), 소프트맥스 회귀(Softmax Regression), 서포트 벡터
머신(Support Vector Machine, SVM)등의 알고리즘을 이용하여 댓글 감정(긍정과 부정)을 비교 분석하였
다. 그 결과 어절단위, 형태소 분석기보다 WPM이 최대 25%의 향상된 결과를 얻었다. 또한 분류 과정에
서 로지스틱회귀, 소프트맥스 회귀보다는 SVM 성능이 우수했으며, SVM의 기본 파라미터({
‘kernel’:(‘linear’), ‘c’:[4]})보다 최적의 파라미터를 적용({‘kernel’: (‘linear’,‘rbf', ’sigmoid’, ‘poly’),
‘C’:[0.01, 0.1, 1.4.5]} 하였을 때, 최대 91%의 성능이 나타났다.
주제어: WPM,Word Piece Model, 감정 분석, 오피니언 마이닝, 기계 학습
1. 서론
최근 수년간 안드로이드 운영체제 스마트폰이 급속도 로 대중화되면서 앱 시장도 끊임없이 성장해 왔다. 사용 자들은 앱을 설치하고 사용한 경험을 바탕으로 이에 대 한 평가를 앱에 댓글로 표현한다. 또한 사용자들은 자신 이 설치 또는 구매 하기 전에 사람들의 반응 즉, 댓글을 이용하여 설치 또는 구매한다. 하지만 앱 댓글은 전체를 읽을 수 없기 때문에 일부 댓글과 댓글 개개의 평점보다 는 전체 평점을 참고하여 의사결정을 하는 정도가 대부 분이다. 이처럼 전체 평점만을 참고하면 편향적인 습득 으로 인하여 이용자가 올바른 정보를 습득한다고 보기 어렵다. 이러한 특성에도 불구하고 댓글은 사용자의 의 견을 풍부하게 드러내고 앱을 사용해 보지 않은 다른 이 용자들의 선택에 영향을 미친다는 점에서 다양한 실용적 활용성을 갖는 데이터임은 분명하다.
앱 댓글의 '정보' 는 크게 '의견'이라는 두 개의 영역 으로 나누어진다. '사실'은 객관적인 정보를 전달하고, '의견'은 사용자의 감정을 표현한다. 앱 댓글은 '의견' 을 표현한 정보이다. 댓글의 '의견' 즉 감정과 평가의 측면을 다룬다는 점에서 본 연구는 감성을 분석한다고 할 수 있다. 즉 이 연구는 앱 댓글의 평가와 평점을 기 반으로 감성 사전을 구축하고 기계 학습 기반의 알고리 즘으로 검증하고 평점을 예측함으로써 수많은 인터넷 문 서의 '의견'문서에서 '평가'나 '의견'의 정도를 긍정과 부정으로 변환하여 사용자에게 직관적인 정보를 제공하 는 것과 관련된 연구이다.[1]
본 논문에서는 구글 플레이에서 제공되는 앱의 댓글을 수집(2016.07 이전의 카테고리의 앱 댓글 총 1,580,234 건 중 무작위로 선정된 682,000건)하여 댓글 감정 분석 결과를 예측하고자 한다. 특히 스마트폰 환경에서 댓글 을 쓸 때 나타나는 오타, 띄어쓰기의 부정확함을 줄이기 위해서 띄어쓰기 교정기를 사용하고, 구글의 음성 검색 (Voice Search)에 적용된 WPM(Word Piece Model)기법과 형태소 분석기를 사용하여 한국어 기본 유니트 단위를 도출한다. 그리고 기계학습 모델인 로지스틱 회귀 (Logistic Regression), 소프트맥스 회귀(Softmax Regression), 서포트 벡터 머신(Support Vector Machine, SVM)을 사용하여 각각 성능 실험 결과를 도출 하였다.
2. 관련 연구
2.1 자동 띄어쓰기 시스템
텍스트 분석에서 가장 기초적인 작업은 텍스트로부터
단어를 식별하고 추출하는 토큰화(Tokenization)라고 할
수 있다. 한국어는 '어절(語節)'로 토큰의 단위 기준으
로 보고, 중국어나 일본어와 같이 어절 경계 표지가 없
는 언어와는 달리, 어절과 어절 사이에 공백을 두어 띄
어쓰기를 하도록 규정하였다. 한국어에 있어서 잘못된
띄어쓰기는 중의성(ambiguity)을 유발 시키거나 텍스트
분석에서 잡음(noise)을 일으켜 오히려 토큰화를 방해하
며, 가독성을 떨어뜨린다. 이와 같이 한국어에서 띄어쓰