KR102155692B1 - 소셜 네트워크 서비스 메시지의 감정 분석을 위한 POS(part of speech) 특징기반의 감정 분석 방법 및 이를 수행하는 감정 분석 장치 - Google Patents

소셜 네트워크 서비스 메시지의 감정 분석을 위한 POS(part of speech) 특징기반의 감정 분석 방법 및 이를 수행하는 감정 분석 장치 Download PDF

Info

Publication number
KR102155692B1
KR102155692B1 KR1020190004827A KR20190004827A KR102155692B1 KR 102155692 B1 KR102155692 B1 KR 102155692B1 KR 1020190004827 A KR1020190004827 A KR 1020190004827A KR 20190004827 A KR20190004827 A KR 20190004827A KR 102155692 B1 KR102155692 B1 KR 102155692B1
Authority
KR
South Korea
Prior art keywords
sentences
training dataset
words
feature
pos
Prior art date
Application number
KR1020190004827A
Other languages
English (en)
Other versions
KR20200088164A (ko
Inventor
윤희용
김경태
이병준
왕이리
김민우
이태호
Original Assignee
성균관대학교산학협력단
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 성균관대학교산학협력단 filed Critical 성균관대학교산학협력단
Priority to KR1020190004827A priority Critical patent/KR102155692B1/ko
Publication of KR20200088164A publication Critical patent/KR20200088164A/ko
Application granted granted Critical
Publication of KR102155692B1 publication Critical patent/KR102155692B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L25/00Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
    • G10L25/48Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 specially adapted for particular use
    • G10L25/51Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 specially adapted for particular use for comparison or discrimination
    • G10L25/63Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 specially adapted for particular use for comparison or discrimination for estimating an emotional state
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K19/00Record carriers for use with machines and with at least a part designed to carry digital markings
    • G06K19/06Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code
    • G06K19/067Record carriers with conductive marks, printed circuits or semiconductor circuit elements, e.g. credit or identity cards also with resonating or responding marks without active components
    • G06K19/07Record carriers with conductive marks, printed circuits or semiconductor circuit elements, e.g. credit or identity cards also with resonating or responding marks without active components with integrated circuit chips
    • G06K19/0723Record carriers with conductive marks, printed circuits or semiconductor circuit elements, e.g. credit or identity cards also with resonating or responding marks without active components with integrated circuit chips the record carrier comprising an arrangement for non-contact communication, e.g. wireless communication circuits on transponder cards, non-contact smart cards or RFIDs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/01Social networking

Landscapes

  • Engineering & Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • General Health & Medical Sciences (AREA)
  • Marketing (AREA)
  • Computational Linguistics (AREA)
  • Strategic Management (AREA)
  • Tourism & Hospitality (AREA)
  • Human Resources & Organizations (AREA)
  • General Business, Economics & Management (AREA)
  • Economics (AREA)
  • Computing Systems (AREA)
  • Child & Adolescent Psychology (AREA)
  • Hospice & Palliative Care (AREA)
  • Psychiatry (AREA)
  • Primary Health Care (AREA)
  • Signal Processing (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computer Hardware Design (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Machine Translation (AREA)

Abstract

소셜 네트워크 서비스(SNS) 메시지의 감정 분석을 위한 감정 분석 장치에서 수행되는 POS 특징 기반의 감정 분석 방법은, SNS 메시지내 문장들의 적어도 하나의 문장을 훈련 데이터 셋으로 선택하는 단계와, 상기 선택된 훈련 데이터셋 내의 문장 중에서 감정적 특징에 기초하여 상기 감정적 특징과 관련이 낮거나 관련이 없는 문장은 상기 훈련 데이터셋에서 제거하는 단계와, 상기 훈련 데이터셋에 포함된 문장내의 단어들을 POS 태깅 규칙(tagging rule)에 따라 태깅하여 특징 집합으로 그룹화하는 단계와, 상기 그룹화된(clustered) 특징 집합의 종속성(dependency)을 기반으로 상기 선택된 훈련 데이터셋에 포함된 문장내의 단어들에 대하여 가중치를 할당하는 단계와, 상기 훈련 데이터셋에 포함된 문장을 양수와 음수의 적어도 2가지 극성을 가진 클래스로 그룹화하는 단계-여기서, 상기 훈련 데이터셋에 포함된 문장을 상기 극성에 따라 긍정적 문장과 부정적 문장으로 분류됨-를 포함한다.

Description

소셜 네트워크 서비스 메시지의 감정 분석을 위한 POS(part of speech) 특징기반의 감정 분석 방법 및 이를 수행하는 감정 분석 장치{METHODS FOR PERFORMING SENTIMENT ANALYSIS OF MESSAGES IN SOCIAL NETWORK SERVICE BASED ON PART OF SPEECH FEATURE AND SENTIMENT ANALYSIS APPARATUS FOR PERFORMING THE SAME}
본 발명은 감정 분석에 관한 것으로서, 트위터(twitter)와 같은 소셜 네트워크 서비스(SNS) 메시지의 감정 분석 방법 및 장치에 관한 것이다.
트위터(twitter)와 같은 소셜 미디어 데이터는 설문조사나 인터뷰 자료처럼 인위적으로 제어된 환경에서 생산된 것이 아닌, 소비자가 자발적으로 표현한 ‘날 것 그대로’의 데이터라는 점에서 소비자를 가장 잘 파악할 수 있는 마케팅 지표로 각광받고 있다. 이러한 소셜 데이터에서 소비자가 특정 대상에 대해 느끼는 좋고 싫음, 그리고 나아가 그 이유를 분석해 주는 ‘감정 분석(Sentiment Analysis)’은 소셜 마케터들의 관심을 사로잡고 있다.
감정 분석 또는 감성 분석(Sentiment Analysis)은 ‘오피니언 마이닝(Opinion Mining)’으로도 불리는데, 이는 텍스트에 나타난 사람들의 태도, 의견, 성향과 같은 주관적인 데이터를 분석하는 자연어 처리 기술을 지칭할 수 있다.
예를 들면, 감정 분석은 데이터에 포함된 텍스트를 분석함으로써 대상에 대한 긍정/부정(또는 긍정/부정/중립)으로 데이터를 분류할 수 있다. 이처럼 감정분석에 의해서 분류된 데이터는 다양한 분야, 예컨대 마케팅, 선거 등에 중요한 자료로써 활용될 수 있다. 이에 따라, 트위터(twitter)와 같은 소셜 네트워크 서비스(SNS) 등을 통해서 수많은 사람들이 인터넷을 통해 자신의 의견을 표현하고 다른 사람의 의견을 확인할 수 있는 환경에서, 정확한 결과를 도출하는 감정 분석은 현저한 파급 효과를 가질 수 있다.
모든 마케팅이 그러하지만 특히 소셜 마케팅이 성공하기 위해서는 다양한 소셜 플랫폼에 올라오는 사용자의 활동이나 각종 피드백 데이터를 수집한 뒤, 체계적으로 ‘수치화’하는 작업이 필요하다. 이 가운데서도 긍정적, 부정적 의견은 물론 심지어는 중립적인 의견을 해석할 수 있어야 한다.
기업의 규모가 커지고 시장 규모가 방대해 질수록 소비자의 의견 각각을 추적하는 것 자체가 매우 어렵다는 문제가 있다.
이러한 방대한 작업을 처리하기 위해 수많은 기업이 소셜 데이터를 자동으로 처리하는 감정 분석 기술에 주목하며 효과적인 분석 솔루션을 차례로 제시하고 있다.
예를들어, 웹 전체가 자사에 대해 어떤 말(긍정/부정)을 하고 있는지 실시간으로 추적이 가능하다는 점에서 감성 분석은 소비자 모니터링 과정에서 빠른 대응을 가능하게 하는 전략적인 툴이 될 것으로 전망된다.
소셜 네트워크 서비스(SNS) 메시지내의 필요한 텍스트를 수집하고 난 뒤에는 감정 분석에 사용될 텍스트 요소만을 분리, 분류하는 작업이 필요하다. 일반적으로 소셜 네트워크 서비스(SNS) 메시지내에서 수집된 텍스트는 문장 내에서 지나친 정보 수집에서 따르는 문제를 피하기 위해 이름, 성별과 같은 개인 정보를 걸러내는 과정을 거친다.
소셜 네트워크 서비스(SNS) 메시지내의 구조화되어 있지 않은 텍스트에서 의미있는 정보를 추출하며, 주어진 텍스트의 구성 요소들을 감정적 문장(‘긍정’, ‘부정’), 비 감정적 문장으로 구분할 수 있다. 예를 들어, '오늘 스마트폰을 새로 샀다’와 같이 사실만을 진술하는 문장은 가치판단이 전혀 개입되지 않은 문장으로 분류돼 감정 분석 대상에서 제외시킬 필요가 있다.
텍스트 안에 있는 긍정적, 부정적인 단어를 탐지, 이를 정량화한 뒤 통계적 기법을 적용한다. 예를 들어, 문서에서 각 단어가 나타나는 ‘빈도’나, 긍정이나 부정과 같은 ‘속성’에 따라 점수나 가중치를 부여한 뒤, 각 단어가 나타내는 점수의 총합이나 평균을 구해 전체 텍스트가 과연 긍정적인지 혹은 부정적인지 알아내는 것이다.
감성 분석에는 크게 ‘문서’ 단위의 극성 분석, ‘속성’ 단위의 극성 분석, 그리고 감성어 사전(lexicon)을 이용한 분석 방법이 있다. 문서 단위의 극성 분석은 주로 기계 학습을 이용하며, 다양한 기계학습 기법들을 적용하여 트위터 메시지를 ‘긍정’, ‘부정’, '중립'으로 분류(classify)할 수 있다.
이러한 기계 학습 기법에는 ‘훈련’과 ‘분류’의 두 과정이 포함된다.
기계 학습이란 인공지능의 한 분야로, 주어진 데이터에 존재하는 특정한 패턴을 공식화한 뒤 이를 바탕으로 컴퓨터가 다른 유사한 데이터를 해석할 수 있도록 학습시키는 것이다.
기계 학습의 훈련 단계에서 사용자는 수작업으로 긍정 혹은 부정으로 분류된 문서에서 특정 값을 추출해 ‘훈련 데이터(Training Data)’를 생성한다. 컴퓨터는 그 다음, 일정한 학습 모델을 통해 문서 전체가 긍정인지 부정인지를 ‘분류(classify)’하게 된다.
트위터(twitter)와 같은 소셜 미디어 데이터에 대한 기존의 기계 학습을 이용한 감정 분석 또는 감성 분석(Sentiment Analysis)에는 두 가지 접근법이 있다. 첫 번째 접근법은 텍스트의 단어 단위로 기능을 분석하는 것으로 단어를 필터링 하여 설정된다. 두 번째 접근법은 문장의 문법 트리(tree)를 기반으로 감정 분류자를 설정하여 단어 사이의 관계를 나타내고 문법 관계, 양극성, 단어 기능을 기반으로 분류기를 구축한다. 그러나 잘 사용되지 않는 단어는 쓸모없는 데이터로 취급되어 감정 분석 성능을 저하시키며 모든 단어에 가중치를 주는 계산 오버헤드를 발생시키는 문제점이 있다.
본 발명의 목적은 소셜 네트워크 서비스(SNS) 메시지의 감정 분석의 정확성을 높이기 위한 POS(part of speech) 특징(feature) 기반의 감정 분석 방법 및 이를 수행하는 감정 분석 장치를 제공하는 것에 목적이 있다.
본 발명의 일 실시 예에 따르면, 소셜 네트워크 서비스(SNS) 메시지의 감정 분석을 위한 감정 분석 장치에서 수행되는 POS(part of speech) 특징(feature) 기반의 감정 분석 방법은, 소셜 네트워크 서비스(SNS) 메시지내 문장들(sentences)의 적어도 하나의 문장을 훈련 데이터 셋(training data set)으로 선택하는 단계와, 상기 선택된 훈련 데이터셋 내의 문장 중에서 감정적 특징에 기초하여 상기 감정적 특징과 관련이 낮거나 관련이 없는 문장은 상기 훈련 데이터셋에서 제거하는 단계와, 상기 훈련 데이터셋에 포함된 문장내의 단어들(words)을 POS 태깅 규칙(tagging rule)에 따라 태깅하여 특징 집합(feature set)으로 그룹화하는 단계와, 상기 그룹화된(clustered) 특징 집합(feature set)의 종속성(dependency)을 기반으로 상기 선택된 훈련 데이터셋에 포함된 문장내의 단어들에 대하여 가중치(weight)를 할당하는 단계와, 상기 훈련 데이터셋에 포함된 문장을 양수와 음수의 적어도 2가지 극성을 가진 클래스(class)로 그룹화하는 단계-여기서, 상기 훈련 데이터셋에 포함된 문장을 상기 극성에 따라 긍정적 문장과 부정적 문장으로 분류됨-를 포함한다. 상기 훈련 데이터셋에 포함된 문장내의 단어들(words)을 POS 태깅 규칙(tagging rule)에 따라 태깅하여 특징 집합(feature set)으로 그룹화하는 단계는 상기 훈련 데이터셋에 포함된 문장내의 단어들(words)을 명사, 동사, 형용사 및 부사 중 하나의 태그(tag)를 할당하는 단계를 포함할 수 있다. 상기 훈련 데이터셋에 포함된 문장이 상기 감정적 특징과 관련이 낮거나 관련이 없는 문장인지를 결정할 때 상기 부사, 형용사 및 동사 중 적어도 하나의 유형을 포함하는 경우 감정적 특징과 관련이 있는 문장으로 간주할 수 있다. 상기 훈련 데이터셋에 포함된 문장 중에서 두 가지 이하 유형의 감정적 특징을 포함하는 문장은 상기 감정적 특징과 관련이 낮거나 관련이 없는 문장으로 간주하여 상기 훈련 데이터셋에서 제외할 수 있다. 상기 훈련 데이터셋에 포함된 문장 중에서 상기 감정적 특징을 가진 단어의 개수가 소정 개수 보다 적은 문장은 상기 훈련 데이터셋에서 제외할 수 있다. 단어 식별성(word discrimination; WD)은 단어와 관련하여 얼마나 많은 차별 정보가 있는지를 측정하는 데 사용되며, 높은 단어 식별성(word discrimination; WD)의 단어는 상기 훈련 데이터셋에 포함된 문장의 상기 감정적 특징과 관련이 낮거나 관련이 없는지 판단시 높은 가중치를 할당할 수 있다. 상기 훈련 데이터셋에 포함된 문장내의 단어들에 대한 가중치 할당은 단어의 중요성에 따라 할당될 수 있다. 상기 훈련 데이터셋에 포함된 문장내의 단어들에 대한 가중치 할당은 카이 스퀘어(Chi Square) 값으로 측정된 클래스와 함께 상기 그룹화된(clustered) 특징 집합(feature set)의 종속성(dependency)을 고려하며 카이 스퀘어(Chi Square) 값이 클수록 상기 특징 집합의 종속성이 강해질 수 있다. 상기 특징 집합의 종속성을 측정하기 위해 카이 스퀘어(Chi Square)의 임계값 CV을 사용하며, 주어진 카이 스퀘어(Chi Square) 값이 상기 임계값 CV보다 큰 경우, 테스트된 그룹화된 특징 집합은 클래스에 종속된 것으로 간주될 수 있다. 상기 특징 집합의 종속성을 측정하기 위해 카이 스퀘어(Chi Square)의 임계값 CV을 사용하며, 주어진 카이 스퀘어(Chi Square) 값이 상기 임계값 CV보다 작거나 같은 경우, 테스트된 그룹화된 특징 집합은 서로 독립적으로 간주되며, 상기 서로 독립적으로 간주되는 경우 상기 종속성의 신뢰성을 보장하기 위해 상기 임계값 CV가 높게 설정될 수 있다. 더 정확한 예측을 위해 상기 감정적인 특징을 가진 단어에 다른 단어들보다 더 많은 가중치를 할당함으로써 상기 감정적인 특징을 가진 단어의 영향력을 강화할 수 있다.
한편, 본 발명의 다른 실시 예에 따르면, 소셜 네트워크 서비스(SNS) 메시지의 감정 분석을 수행하는 감정 분석 장치는 적어도 하나의 명령어를 저장하는 메모리와, 상기 메모리와 연결되는 프로세서를 포함하고, 상기 프로세서는, 상기 적어도 하나의 명령어를 실행함으로써, 소셜 네트워크 서비스(SNS) 메시지내 문장들(sentences)의 적어도 하나의 문장을 훈련 데이터 셋(training data set)으로 선택하고, 상기 훈련 데이터셋으로 선택된 문장을 감정적 특징에 기초하여 상기 감정적 특징과 관련없는 문장은 상기 훈련 데이터셋에서 제거하고, 상기 훈련 데이터셋에 포함된 문장을 양수와 음수의 2가지 극성을 가진 클래스(class)로 그룹화하고-상기 훈련 데이터셋에 포함된 문장을 상기 극성에 따라 긍정적 문장과 부정적 문장으로 분류됨-, 상기 훈련 데이터셋에 포함된 문장내의 단어들(words)을 POS(part of speech) 태그(tag)를 사용하여 분류하여 특징 집합으로 그룹화하고, 상기 그룹화된(clustered) 특징 집합(feature set)의 종속성(dependency)을 기반으로 상기 훈련 데이터셋에 포함된 문장내의 단어들에 대하여 가중치(weight)를 할당한다. 상기 프로세서는 상기 훈련 데이터셋에 포함된 문장내의 단어들(words)을 명사, 동사, 형용사 및 부사 중 하나의 태그(tag)를 할당할 수 있다. 상기 프로세서는 상기 훈련 데이터셋에 포함된 문장이 상기 감정적 특징과 관련이 낮거나 관련이 없는 문장인지를 결정할 때 상기 부사, 형용사 및 동사 중 적어도 하나의 유형을 포함하는 경우 감정적 특징과 관련이 있는 문장으로 간주할 수 있다. 상기 훈련 데이터셋에 포함된 문장 중에서 두 가지 이하 유형의 감정적 특징을 포함하는 문장이거나, 상기 훈련 데이터셋에 포함된 문장 중에서 상기 감정적 특징을 가진 단어의 개수가 소정 개수 보다 적은 문장은 상기 감정적 특징과 관련이 낮거나 관련이 없는 문장으로 간주할 수 있다. 단어 식별성(word discrimination; WD)은 단어와 관련하여 얼마나 많은 차별 정보가 있는지를 측정하는 데 사용되며, 높은 단어 식별성(word discrimination; WD)의 단어는 상기 훈련 데이터셋에 포함된 문장의 상기 감정적 특징과 관련이 낮거나 관련이 없는지 판단시 높은 가중치를 할당할 수 있다. 상기 훈련 데이터셋에 포함된 문장내의 단어들에 대한 가중치 할당은 단어의 중요성에 따라 할당될 수 있다. 상기 훈련 데이터셋에 포함된 문장내의 단어들에 대한 가중치 할당은 카이 스퀘어(Chi Square) 값으로 측정된 클래스와 함께 상기 그룹화된(clustered) 특징 집합(feature set)의 종속성(dependency)을 고려하며 카이 스퀘어(Chi Square) 값이 클수록 상기 특징 집합의 종속성이 강해질 수 있다. 더 정확한 예측을 위해 상기 감정적인 특징을 가진 단어에 다른 단어들보다 더 많은 가중치를 할당함으로써 상기 감정적인 특징을 가진 단어의 영향력을 강화할 수 있다.
한편, 본 발명의 또 다른 실시 예에 따르면, 프로세서 실행 가능한 명령어들을 포함하는 컴퓨터 판독 가능한 저장 매체로서, 상기 명령어들은 상기 프로세서에 의해 실행되었을 때 상기 프로세서로 하여금, 소셜 네트워크 서비스(SNS) 메시지내 문장들(sentences)의 적어도 하나의 문장을 훈련 데이터 셋(training data set)으로 선택하고, 상기 훈련 데이터셋으로 선택된 문장을 감정적 특징에 기초하여 상기 감정적 특징과 관련없는 문장은 상기 훈련 데이터셋에서 제거하고, 상기 훈련 데이터셋에 포함된 문장을 양수와 음수의 2가지 극성을 가진 클래스(class)로 그룹화하고-상기 훈련 데이터셋에 포함된 문장을 상기 극성에 따라 긍정적 문장과 부정적 문장으로 분류됨-, 상기 훈련 데이터셋에 포함된 문장내의 단어들(words)을 POS(part of speech) 태그(tag)를 사용하여 분류하여 특징 집합으로 그룹화하고, 상기 그룹화된(clustered) 특징 집합(feature set)의 종속성(dependency)을 기반으로 상기 훈련 데이터셋에 포함된 문장내의 단어들에 대하여 가중치(weight)를 할당하도록 구성된다.
본 발명의 실시 예들에 따른 소셜 네트워크 서비스(SNS) 메시지의 감정 분석을 위한 감정 분석 장치에서 수행되는 POS(part of speech) 특징(feature) 기반의 감정 분석 방법에 의하면, 훈련 데이터셋 내의 문장 중에서 감정적 특징과 관련이 낮거나 관련이 없는 문장은 상기 훈련 데이터셋에서 생략 또는 제거하여 차원(dimension)의 수를 감소시켜 가중치를 부여할 때의 계산 오버헤드를 줄여 계산 복작도를 줄일 수 있다.
또한, 본 발명의 실시 예들에 따른 소셜 네트워크 서비스(SNS) 메시지의 감정 분석을 위한 감정 분석 장치에서 수행되는 POS(part of speech) 특징(feature) 기반의 감정 분석 방법에 의하면, 강한 식별성을 가진 단어에 높은 가중치를 할당함으로써, 기존 감정 분석 기법들에 비하여 감정 분석의 정확도를 개선할 수 있다.
또한, 본 발명의 실시 예들에 따른 소셜 네트워크 서비스(SNS) 메시지의 감정 분석을 위한 감정 분석 장치에서 수행되는 POS(part of speech) 특징(feature) 기반의 감정 분석 방법에 의하면, 훈련 데이터셋에 포함된 문장내의 단어들(words)을 POS 태그(tag)를 사용하여 분류하여 특징 집합으로 그룹화하고 상기 그룹화된(clustered) 특징 집합(feature set)과 대응되는 클래스간의 종속성(dependency)을 기반으로 상기 훈련 데이터셋에 포함된 문장내의 단어들에 대하여 가중치(weight)를 할당함으로써 기존 감정 분석 기법들에 비하여 감정 분석의 정확도를 크게 향상시켜 최상의 성능을 보여줄 수 있다.
또한, 본 발명의 실시 예들에 따른 소셜 네트워크 서비스(SNS) 메시지의 감정 분석을 위한 감정 분석 장치에서 수행되는 POS(part of speech) 특징(feature) 기반의 감정 분석 방법에 의하면, 수정된 카이 스퀘어(Chi Square) 기법을 사용하여 측정된 종속성과 분류된 특징 세트의 식별성을 고려한 새로운 복합 특징 가중치 기법을 제공함으로써 기존 감정 분석 기법들에 비하여 감정 분석의 정확도를 크게 향상시켜 최상의 성능을 보여줄 수 있다.
도 1은 본 발명의 일 실시 예에 따른 소셜 네트워크 서비스(SNS) 메시지의 감정 분석을 위한 감정 분석 장치에서 수행되는 POS(part of speech) 특징(feature) 기반의 감정 분석 방법의 전체적인 동작을 설명하기 위한 순서도이다.
도 2a는 도 1의 POS 특징 기반의 감정 분석 방법을 전처리 스테이지, 학습 스테이지 및 평가 스테이지로 구분하여 설명하기 위한 순서도이다.
도 2b는 본 발명의 일 실시 예에 따른 POS 특징 기반의 감정 분석 방법에서 사용되는 POS 태그(tag)을 예시적으로 나타내는 테이블이다.
도 3은 도 2a의 POS 태깅(tagging)의 태깅 단계를 나타낸 개념도이다.
도 4는 도 2a의 POS 태깅(tagging)의 훈련 단계를 나타낸 개념도이다.
도 5는 본 발명의 일 실시 예에 따른 POS 태깅(tagging) 방법을 적용한 3가지 예를 나타낸다.
도 6은 본 발명의 일 실시 예에 따른 POS 특징 기반의 감정 분석 방법에 의해 설정된 특집 집합을 나타낸 테이블이다.
도 7은 본 발명의 일 실시 예에 따른 POS 특징 기반의 감정 분석 방법에서 예시적으로 정의한 단어와 그 빈도를 나타낸 테이블이다.
도 8은 본 발명의 일 실시 예에 따른 POS 특징 기반의 감정 분석 방법 특징 집합
Figure 112019004544742-pat00001
와 관련된 특징 선택의 사례 중 빈도수의 합계가 다른 경우를 비교하여 나타낸 테이블이다.
도 9는
Figure 112019004544742-pat00002
분포의 PDF(Probability Density Function) 그래프를 나타낸다.
도 10은 본 발명의 일 실시 예에 따른 POS 특징 기반의 감정 분석 방법을 수행하는 감정 분석 장치의 블록도이다.
도 11 내지 도 13은 2000,4000,6000개의 동일한 크기의 부정, 긍정 문서(document) 데이터로 구성된 3개의 실험 데이터셋(dataset)를 5,000 내지 30,000개의 기준으로 6가지 크기의 훈련 데이터셋(dataset) 크기로 나눠 정확성을 본 발명의 일 실시 예에 따른 POS 특징 기반의 감정 분석 방법과 기존의 감정 분석 방법들을 비교한 그래프이다.
도 14 내지 도 16은 5000,15000,25000개의 양극성이 균형을 이루며 무작위로 선택된 3가지 테스트 데이터를 500 내지 6000개의 기준으로 12가지 크기의 시험 데이터셋(dataset) 크기로 나눠 정확성을 본 발명의 일 실시 예에 따른 POS 특징 기반의 감정 분석 방법과 기존의 감정 분석 방법들을 비교한 그래프이다.
도 17 내지 도 19는 5000,20000,30000개의 양극성이 불균형을 이루며 무작위로 선택된 3가지 테스트 데이터를 500 내지 6000개의 기준으로 12가지 크기의 시험 데이터셋(dataset) 크기로 나눠 정확성을 본 발명의 일 실시 예에 따른 POS 특징 기반의 감정 분석 방법과 기존의 감정 분석 방법들을 비교한 그래프이다.
도 20 내지 도 22는 본 발명에서 사용한 Sentiment 140에서 테스트 데이터셋(dataset)이 무작위로 선택되었을 때의 성능을 3가지 기준으로 본 발명의 일 실시 예에 따른 POS 특징 기반의 감정 분석 방법과 기존의 감정 분석 방법들을 비교한 그래프이다.
본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는바, 특정 실시 예들을 도면에 예시하고 상세하게 설명하고자 한다.
그러나 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.
제1, 제2 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다. 및/또는 이라는 용어는 복수의 관련된 기재된 항목들의 조합 또는 복수의 관련된 기재된 항목들 중의 어느 항목을 포함한다.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다.
본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 의미를 가진 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
이하, 첨부한 도면들을 참조하여, 본 발명의 바람직한 실시예를 보다 상세하게 설명하고자 한다. 본 발명을 설명함에 있어 전체적인 이해를 용이하게 하기 위하여 도면상의 동일한 구성요소에 대해서는 동일한 참조부호를 사용하고 동일한 구성요소에 대해서 중복된 설명은 생략한다.
트위터(twitter)와 같은 소셜 미디어 데이터에 대한 기존의 기계 학습을 이용한 감정 분석 또는 감성 분석(Sentiment Analysis)에서 문장의 문법 트리(tree)를 기반으로 감정 분류자(sentiment classifier)를 사용하는 경우, 상기 감정 분류자는 단어들의 문맥 관계, 극성 및 특징들에 기초하여 구축된다. 이러한 기계 학습을 이용한 감정 분석(Sentiment Analysis)에서는 수동으로 태깅된 클래스(class) 라벨을 가지는 훈련 데이터 셋으로부터 효과적인 분류 모델을 추출하는 것이 감정 분석의 성능 결정에 중요하다. 또한, 단어의 관련성 및 식별력 있는 특징에 적절한 가중치를 할당하는 것이 상기 감정 분류자를 사용하여 감정 분석의 정확도를 높이는데 중요하다.
감정 분석을 위한 기존의 특징 가중치 기법(feature weighting scheme) 중에서, 가장 널리 사용되는 기법 중 하나는 단순성과 효율성에 기인한 FF(Feature Frequency) 기법이다. FF 기법에서는 문서(document) 내에 나타나는 단어의 빈도(frequency)이 문서의 특징의 값으로 사용되며, 전체 문서들 내의 가장 높은 값은 전체 훈련 데이터셋의 특징값으로 간주된다. FF 기법은 여러 경우에 합리적인 성능을 보여준다.
그러나, 상기 특징 값이 균일하게 분포되는 경우에는 문서의 특징 정보를 적절하게 분석하기가 어렵다. DF(Document Frequency) 기법은 상기와 같은 특징들의 균일한 분포로 인한 이슈를 효과적으로 처리할 수 있다. DF 기법에서는 목표 단어를 포함하는 문서들의 개수가 훈련 데이터셋으로부터 카운트되며, 특징들의 균일한 분포의 경우에도 상기 특징의 통계정보를 효과적으로 나타낼 수 있다. DF 기법은 합리적인 계산 복잡도로 대량의 훈련 데이터에 적용가능하며 간단하다는 장점을 가진다. 그러나, DF 기법에서는 희귀한 단어들은 쓸모없는 데이터로 취급되고, 이는 감정 분석의 성능을 떨어뜨린다.
PSW(Part of Speech-based weighting) 기법은 트위터 감정 분석을 위해 최근 제안된 특징 가중치 기법으로서, 각각의 카테고리내에서 고유한 단어(unique word)의 빈도를 고려하여 일종의 단어 빈도(Word Frequency, WF) 기반 기법이다. PSW 기법에서는 훈련 데이터셋 중의 단어의 관련성(relevance)이 또한 고려된다. 그러나 상기 단어들의 가중치들이 이론적으로 설정되므로 감정 분석의 성능은 안정적이지 않은 단점이 있다.
TF-IDF(Term Frequency and Inversed Document Frequency) 기법은 효율성 및 안정성으로 인해 특징 가중치에 일반적으로 사용된다. TF-IDF는 단어의 중요성(importance)이 문서내의 단어의 발생 빈도와 총 문서의 개수 대 단어를 포함하는 문서들의 개수의 비율에 크게 의존한다는 가정에 기반한다. TF-IDF 기법은 훈련 데이터셋의 문서들 중에서 단어들의 중요성을 측정하는데 효과적이며, 이는 감정 분석의 정확도를 크게 개선한다. 그러나, TF-IDF 기법은 차원수(dimensionality)의 과장이 여전히 존재하며, 이는 특징들의 크기를 전체 훈련 데이터셋의 단어들의 볼륨(volume)으로 취급하며, 모든 단어들의 가중치 할당시 계산 오버헤드를 발생시킨다.
기존에 감정 분석을 위한 다양한 가중치 부여 방법이 개발되었지만, 가중치를 할당할 때 그룹화된 특징들(clustered features)과 클래스 간의 관련성(relevancy)는 조사되지 않았다.
본 발명의 실시예들에 따른 소셜 네트워크 서비스(SNS) 메시지의 감정 분석에서는 새로운 가중치 부여 기법을 제공하여 강한 식별력을 가진 단어의 강도를 향상시킴으로써 감정 분석의 정확도를 개선한다.
또한, 본 발명의 실시예들에 따른 소셜 네트워크 서비스(SNS) 메시지의 감정 분석에서는 클래스들의 POS 특징이 동일한 형태의 단어들은 소정의 특징 집합으로 그룹화된다. 상기 그룹화된 특징 집합과 대응되는 클래스간의 종속성(dependency)은 본 발명의 실시예에 따라 수정된 카이 스퀘어(Chi Square) 기법에 의해 측정된다. 이것은 단어들의 식별력과 함께 감정적인 단어들에 가중치를 할당하기 위한 기준으로 사용된다.
이하, 본 발명의 실시예들에 따른 소셜 네트워크 서비스(SNS) 메시지의 감정 분석을 위한 POS(part of speech) 특징(feature) 기반의 감정 분석 방법 및 이를 수행하는 감정 분석 장치에 대해 설명한다.
도 1은 본 발명의 일 실시 예에 따른 소셜 네트워크 서비스(SNS) 메시지의 감정 분석을 위한 감정 분석 장치에서 수행되는 POS(part of speech) 특징(feature) 기반의 감정 분석 방법의 전체적인 동작을 설명하기 위한 순서도이다.
도 1을 참조하면, 먼저, 감정 분석 장치에서는 트위터와 같은 소셜 네트워크 서비스(SNS) 메시지내 문장들(sentences)의 적어도 하나의 문장을 훈련 데이터 셋(training data set)으로 선택한다(단계 110).
감정 분석 장치에서는 상기 훈련 데이터셋 내의 문장 중에서 감정적 특징(emotional feature)에 기초하여 상기 감정적 특징과 관련없거나 관련이 낮은 문장은 상기 훈련 데이터셋에서 제거한다(단계 120).
감정 분석 장치에서는 상기 훈련 데이터셋에 포함된 문장내의 단어들(words)을 POS 태깅(tagging) 규칙(rule)에 따라 태깅하여 특징 집합(feature set)으로 그룹화한다(단계 130).
감정 분석 장치에서는 상기 그룹화된(clustered) 특징 집합(feature set)의 종속성(dependency)을 기반으로 상기 선택된 훈련 데이터셋에 포함된 문장내의 단어들에 대하여 가중치(weight)를 할당한다(단계 140). 구체적으로 감정 분석 장치에서는 그룹화된(clustered) 특징 집합(feature set)과 대응되는 클래스간의 종속성(dependency)을 기반으로 상기 선택된 훈련 데이터셋에 포함된 문장내의 단어들에 대하여 가중치(weight)를 할당할 수 있다.
감정 분석 장치에서는 상기 훈련 데이터셋에 포함된 문장을 양수와 음수의 적어도 2가지 극성을 가진 클래스(class)로 그룹화한다(단계 150). 상기 훈련 데이터셋에 포함된 문장을 상기 극성에 따라 긍정적 문장과 부정적 문장으로 분류할 수 있다.
도 2a는 도 1의 POS 특징 기반의 감정 분석 방법을 전처리 스테이지, 학습 스테이지 및 평가 스테이지로 구분하여 설명하기 위한 순서도이다. 도 2b는 본 발명의 일 실시 예에 따른 POS 특징 기반의 감정 분석 방법에서 사용되는 POS 태그(tag)을 예시적으로 나타내는 테이블이다. 도 3은 도 2a의 POS 태깅(tagging)의 태깅 단계를 나타낸 개념도이다. 도 4는 도 2a의 POS 태깅(tagging)의 훈련 단계를 나타낸 개념도이다. 도 5는 본 발명의 일 실시 예에 따른 POS 태깅(tagging) 방법을 적용한 3가지 예를 나타낸다. 도 6은 본 발명의 일 실시 예에 따른 POS 특징 기반의 감정 분석 방법에 의해 설정된 특집 집합을 나타낸 테이블이다. 도 7은 본 발명의 일 실시 예에 따른 POS 특징 기반의 감정 분석 방법에서 예시적으로 정의한 단어와 그 빈도를 나타낸 테이블이다. 도 8은 본 발명의 일 실시 예에 따른 POS 특징 기반의 감정 분석 방법 특징 집합 _와 관련된 특징 선택의 사례 중 빈도수의 합계가 다른 경우를 비교하여 나타낸 테이블이다.
POS(Part of Speech) 태깅(tagging)은 문장(sentence)을 단어(word)로 분할하고 명사(Noon), 동사(Verb), 형용사(Adjective) 및 부사(Adverb)와 같은 적절한 태그(tag)를 POS 태깅 규칙을 기반으로 각 단어에 부여하는 방법이다. 이러한 POS의 태그(tag)들의 예시는 도 2b에 도시되어 있다.
트위터(Twitter)의 문장은 POS 태깅이 먼저 수행되며 일부 문장들은 기준에 따라 설정된 훈련 데이터셋으로 선택되어 극성(polarity)에 따라 양수 및 음수의 두 클래스로 그룹화될(clustered) 수 있다.
POS 태깅 단계는 도 3의 태깅되는 텍스트 세그먼트(314), 매핑 매트릭스(316), 문맥 윈도우 파라미터를 이용하여 입력 패턴을 구성한후(310), 확률 트랜스 코딩(320), POS 태거(330), 최대 엔트로피(340)을 거쳐서 POS 태깅을 수행한다.
상기 훈련 데이터셋에 포함된 문장내의 단어들을 POS 태깅 규칙에 따라 태깅하여 특징 집합(feature set)으로 그룹화된다.
클래스의 단어들은 POS 태그를 사용하여 분류되고 그룹화된 기능 집합 또는 특징 집합(feature set)의 종속성(dependency) 및 단어의 관련성을 기반으로 모든 단어에 가중치가 할당될 수 있다.
POS 태깅의 훈련 단계는 도 4에 도시된 바와 같이, POS 태깅 훈련 단계에서 태깅되고 있는 코퍼스(corpus)-예를 들어, 감정어 사전-, 매핑 매트릭스(416), 매핑 파라미터들을 이용하여 매핑 매트릭스 어셈블리(410), 훈련 패턴들의 구성(420), 확률의 트랜스코딩(430), POS 태거의 훈련(440), 최대 엔트로피(450)를 거쳐서 POS 태깅의 훈련을 수행한다.
코퍼스(corpus)는 다른 문맥의 환경에서 단어를 공급하기 위해 사용되고, 문맥의 정보는 어휘 등급을 결정하는 데 필요한 규칙 구성의 기반으로 사용된다. 그런 다음 POS 태그 단계에서 단어와 인접한 문맥이 나타날 확률을 계산하여 단어에 대한 가장 가능성이 높은 태그를 선택한다.
POS 태깅 훈련 단계가 끝나면 통계 표가 생성되며 트위터(twitter) 문장에 대한 감정은 통계표를 기준으로 판단된다.
감정 분석에서 훈련 데이터셋에 포함된 문장 내의 단어들은 내용별 특징으로 분류된 다음, 가중치를 단어의 특징에 할당하여 단어의 주요성(importance)을 구분한다.
일반적으로 사용되는 특징 가중치 기법은 TF-IDF(Term Frequency and Inversed Document Frequency)이다. TF_IDE의 두 부분 중 TF를 의미하는 tf(w,d)는 document_d에 나타나는 word_w의 빈도(frequency)를 나타낸다. IDF를 의미하는 idf(w,D)는 docoument_d에 대해 workd_w가 제공하는 정보량을 나타내는 측정치이다. idf(w,D)는 총 문서(document) 수를 word_w가 나타나는 문서의 수로 나눈 후 다음과 같은 로그값을 갖는다.
Figure 112019004544742-pat00003
TF_IDF값은
Figure 112019004544742-pat00004
로 얻는다. 높은 TF_IDF 값을 갖는 단어는 적은 수의 문서(document)에서 큰 빈도를 나타내고 전체 문서(document) 세트에서 단어를 포함하는 빈도가 낮음을 나타낸다. 반대로 TF_IDF 값이 낮으면 모든 문서에 단어가 고르게 나타난다.
전처리(Preprocessing)
전처리 스테이지(Preprocessing stage)에서 감정 분석은 주로 초기 코퍼스(corpus)의 유용성에 의존하며,
Figure 112019004544742-pat00005
및 미리 정의된 클래스
Figure 112019004544742-pat00006
로 정의한다. 여기서
Figure 112019004544742-pat00007
는 원래의 코퍼스(corpus)와 클래스 |C|의
Figure 112019004544742-pat00008
문서(document) 중 문장 |S|로 구성된 문서(document)를 나타낸다. 첫 번째로
Figure 112019004544742-pat00009
의 구성요소는 사전 정의된 집합인 C로 분류된다. 이 작업에서 분류과정을 함수
Figure 112019004544742-pat00010
로 공식화 할 수 있다. 특히
Figure 112019004544742-pat00011
인 경우, document_
Figure 112019004544742-pat00012
Figure 112019004544742-pat00013
의 부정의 데이터셋이고, 그렇지 않은
Figure 112019004544742-pat00014
이면
Figure 112019004544742-pat00015
Figure 112019004544742-pat00016
의 긍정의 데이터셋을 나타낸다. 초기의 코퍼스(corpus)
Figure 112019004544742-pat00017
는 두 개의 클래스
Figure 112019004544742-pat00018
Figure 112019004544742-pat00019
로 분류된다.
Figure 112019004544742-pat00020
,
Figure 112019004544742-pat00021
로 정의되며 sn과 sp는 각각 부정과 긍정의 문장들로 구성된 문서의 크기이다.
Figure 112019004544742-pat00022
Figure 112019004544742-pat00023
의 모든 문장을 POS 태거를 통해 파싱되고 문장의 모든 단어에는 해당 POS 태그가 특징으로서 부여된다. 본 발명의 일 실시예에 따른 POS 태그 방법을 적용한 예시는 도 5에 도시되어 있다.
훈련의 트위터(twitter) 문장은 긍정 및 부정문으로 분류되며, 또는 주관적, 객관적으로 분류될 수도 있다. 따라서 감정적인 단어가 적은 문장을 제거하면 감정 분석의 정확도를 높일 수 있다. 본 발명의 일 실시예에 따른 POS 태그 방법에서는 부사, 형용사, 동사와 같은 유형은 감정을 결정할 때 중요한 감정적 요소로 간주한다. 본 발명의 다른 실시예에 따른 POS 태그 방법은 두가지 이하 유형의 정서적 특징을 포함하는 문장은 감정 분석 또는 정서 분석과 무관한 것으로 간주하여 훈련 데이터셋에서 제외된다. 도 4의 예에서 세 번째 문장의 의미가 부정적으로 보이지만 동사 한 가지 유형의 감정적 특징만 문장에 나타나기 때문에 훈련에 사용되지 않는다.
특징 그룹화(Feature clustering)
유니그램(Unigram) 특징 추출기는 단순함과 효율성으로 트위트(tweet)의 특징을 검색하는데 사용된다. 이 특징은 훈련 데이터셋의 각 고유한 단어를 개별 특징을 나타내는 단위로 취급한다. 그렇기 때문에 문서(document) 작성 클래스는 불용어 또는 정지단어(stop word)를 제외한 고유한 단어(unique word)로 구성된 특징 기반의 배열로 다음과 같이 표현된다.
Figure 112019004544742-pat00024
Figure 112019004544742-pat00025
는 클래스
Figure 112019004544742-pat00026
에서 발생하는 고유한 단어로 다음과 같이 표현된다.
Figure 112019004544742-pat00027
여기서
Figure 112019004544742-pat00028
는 POS 특징 태그
Figure 112019004544742-pat00029
가 있는
Figure 112019004544742-pat00030
의 전체 문서에서 고유한 단어
Figure 112019004544742-pat00031
의 발생 횟수이다.
Figure 112019004544742-pat00032
는 단어의 중요성(importance)을 반영하는
Figure 112019004544742-pat00033
의 가중치 빈도이다. 모든 문서(document)에서 단어 빈도(term frequency)를 계산하고 문서(document)의 기능 또는 특징(feature)을 나타내기 위해 가장 큰 값을 선택하는 기존 체계와 달리 클래스 데이터셋을 사용하여 계산되므로 낮은 빈도의 단어의 역할이 과장 되어지는 문제를 피할 수 있다. 본 발명의 일 실시예에 따른 POS 특징 기반의 감정 분석 방법에서는
Figure 112019004544742-pat00034
Figure 112019004544742-pat00035
의 동일한 POS 특징 단어들을 분류된 특징 집합
Figure 112019004544742-pat00036
에 모으기 위해 새로운 특징 분류 방법을 제공한다.
Figure 112019004544742-pat00037
Figure 112019004544742-pat00038
의 부사와 형용사, 동사의 POS 태그 단어를 유지하는 감정적 특징의 집합(emotional feature set)이다.
Figure 112019004544742-pat00039
은 나머지 태그(remaining tag)의 단어를 유지하는 일반적인 특징 집합(normal feature set) 역할을 하며 세부 분류(classification)는 다음과 같다(도면 도 5 참조).
이 과정은 다음과 같이 공식화 된다.
Figure 112019004544742-pat00040
중요도 측정(Measuring Importance)
감정적 단어(emotional word)는 그룹화 된(clusterd) 특징 집합
Figure 112019004544742-pat00041
로 분류된다. 여기에 태그가 붙은 감정적 단어가 실제 클래스에 중요한 것인지 아닌지를 결정하는 단어의 중요성(importance)을 반영하는 것이 중요하다. 일반적으로 단어 식별성(word discrimination, WD)는 단어와 관련하여 얼마나 많은 차별(또는 식별) 정보를 단어가 보유하는지를 측정하는 데 적용된다. 클래스에 대한 단어의 중요성은
Figure 112019004544742-pat00042
Figure 112019004544742-pat00043
로 계량된다. 여기서
Figure 112019004544742-pat00044
는 class_v에 대한 class_u의 word_i의 WD(word discrimination)를 나타내며, 이는
Figure 112019004544742-pat00045
Figure 112019004544742-pat00046
에 나타나는 word_i의 빈도 차이로 측정된다.
높은 WD의 단어는 다른 클래스들과 차별화된(또는 식별되는) 클래스에 강한 선호도를 갖기 때문에 클래스에서 중요하게 여겨지며 결국 문장들의 감정 판단에 크게 작용한다. 만약
Figure 112019004544742-pat00047
인 경우 word_i는 class_u와 긍정의 상관관계가 있지만 그렇지 않은 경우 class_u와 관련이 없는 것으로 간주한다. 다음은 도 7에 도시된 바와 같이 열거된 빈도와 함께 w1과 w2 두 단어가
Figure 112019004544742-pat00048
Figure 112019004544742-pat00049
에서 동시에 있다고 가정한다.
여기서
Figure 112019004544742-pat00050
는 부정의 클래스
Figure 112019004544742-pat00051
에서 나타나는 w1의 빈도이다.
Figure 112019004544742-pat00052
의 w1과 w2의 WD(word discrimination)는 다음과 같이 계산된다.
Figure 112019004544742-pat00053
만약
Figure 112019004544742-pat00054
일 때, w1은
Figure 112019004544742-pat00055
대신
Figure 112019004544742-pat00056
의 필수 단어로 간주된다. 한편
Figure 112019004544742-pat00057
의 경우 w1는 감정 분석을 위해 w2보다
Figure 112019004544742-pat00058
에 대한 더 많은 정보를 포함한 단어로 간주된다.
Figure 112019004544742-pat00059
에 있는 모든 단어의 POS 특징을 고려하여
Figure 112019004544742-pat00060
Figure 112019004544742-pat00061
의 두 가지 특징 집합이 작성되었으며
Figure 112019004544742-pat00062
는 감정적인 단어(emotional word)를,
Figure 112019004544742-pat00063
은 다른 단어(normal word)의 기능(또는 특징)을 유지한다. 감정적인 단어들은 다른 단어들(normal words)에 비해 감정의 극성에 관해 더 많은 정보를 전달할 것으로 예상된다. 또한 감정적인 단어는 강한 식별력 때문에 여러 클래스에서 발생할 가능성이 없다. 예를 들어 “좋다(like)”는 긍정적인(positive) 감정을 나타내는 단어이므로
Figure 112019004544742-pat00064
Figure 112019004544742-pat00065
보다 훨씬 크다. 감정적 단어로 분류되기 때문에 POS 태그를 기준으로
Figure 112019004544742-pat00066
에 있는 단어 WD의 평균값은
Figure 112019004544742-pat00067
보다 클 것이다. 만약 p와 q가 에서 각각
Figure 112019004544742-pat00068
Figure 112019004544742-pat00069
의 고유한 단어의 수인 경우는 다음과 같은 수학식 6으로 나타낸다.
Figure 112019004544742-pat00070
종속성 측정(Measuring Dependency)
DF(Document Frequency)와는 달리 WF(Word Frequency)는 단어가 전체 데이터셋에 나타나는 빈도이며 다음의 수학식 7과 같이 표현된다.
Figure 112019004544742-pat00071
WF는 전체 데이터 공간에서 단어의 중요성(Importance)을 측정한다. 구체적으로 특정 클래스의 최적 단어가 훈련 데이터셋의 문서(document) 중에 가장 고르게 분포되어 있다는 것에 기반을 둔다. 그러므로 DF가 높고 WF 값이 낮은 단어만 데이터셋에서 클래스를 나타내는 특징으로 선택한 반면 낮은 DF와 높은 WF 값의 단어는 비효율적일 수 있으므로 삭제한다. WF를 카이 스퀘어(Chi Square) 방법에 대한 입력으로 통합함으로써,
Figure 112019004544742-pat00072
에 대한 특징 집합
Figure 112019004544742-pat00073
의 의존성 또는 종속성은 다음과 같이 측정되며 먼저, 가설문제는 아래와 같이 설정된다.
귀무가설_1 : 특징집합 와 클래스 는 독립적이다.
대립가설_1 : 특징집합 와 클래스 는 의존적이다.
r과 c는 각각 행의 수와 열의 수이며 r, c에 대한 우발 사건 테이블(contingency table)은 도 8에 도시된 바와 같다.
카이 스퀘어(Chi Square) 값
Figure 112019004544742-pat00074
Figure 112019004544742-pat00075
를 사용하여 계산한다. O는 관측된 빈도수이고 E는 상기 가설 하에서 예상되는 빈도수이다. 도 8의 A는
Figure 112019004544742-pat00076
로 표현된 특징 집합
Figure 112019004544742-pat00077
안의 단어들의 WF(word frequency) 합계이며 p는
Figure 112019004544742-pat00078
의 단어 수이다. 유사하게, C 값은
Figure 112019004544742-pat00079
로 계산되며, p는
Figure 112019004544742-pat00080
내의 단어들의 개수이다. B는 대칭 클래스의 경우이며 다음의 수학식 8과 같이 표현된다.
Figure 112019004544742-pat00081
여기서 z는 클래스
Figure 112019004544742-pat00082
에 나타나는
Figure 112019004544742-pat00083
내의
Figure 112019004544742-pat00084
의 단어 수이며,
Figure 112019004544742-pat00085
의 단어 수가 q일 때
Figure 112019004544742-pat00086
이다. D는 다음의 수학식 9와 같이 계산된다.
Figure 112019004544742-pat00087
Figure 112019004544742-pat00088
Figure 112019004544742-pat00089
는 각각
Figure 112019004544742-pat00090
Figure 112019004544742-pat00091
Figure 112019004544742-pat00092
의 단어 수이다.
단어의 가중치화 (Weighting of the word)
단어 가중치는 훈련 데이터셋에서 단어의 중요성에 따라 수행된다. 본 발명에서 제안된 가중치 방식은
Figure 112019004544742-pat00093
의 카이 스퀘어(Chi Square) 값으로 측정된 클래스와 함께 그룹화된(clustered) 특징 집합의 종속성(dependency)을 고려하며 카이 스퀘어(Chi Square) 값이 클수록 종속성(또는 의존성)이 강해진다. 종속성(또는 의존성)을 측정하기 위해 카이 스퀘어(Chi Square)의 임계값 CV가 주어진다. CV는 3.84로 계산하여 카이 스퀘어(Chi Square)의 누적 분포 함수를 기준으로 다음의 수학식 10으로 표현된다.
Figure 112019004544742-pat00094
여기서 k는 각도(degree),
Figure 112019004544742-pat00095
는 불안전한 감마함수,
Figure 112019004544742-pat00096
는 감마함수로 다음의 수학식 11과 같이 다시 표현된다.
Figure 112019004544742-pat00097
Figure 112019004544742-pat00098
분포의 확률 밀도 함수 PDF(Probability Density Function)인
Figure 112019004544742-pat00099
는 도 9와 같이 그려진다.
카이 스퀘어(Chi Square) 임계값 CV는 3.84의 분포의 양면 테스트를 보여준다. 주어진
Figure 112019004544742-pat00100
의 값은 카이 스퀘어(Chi Square) 임계값 CV보다 큰 경우, 귀무가설이 거부될 것이며 테스트 된 그룹화된 특징 집합은 클래스에 종속된 것으로 간주한다. 그렇지 않으면 서로 독립적으로 취급되며 종속성의 신뢰성을 보장하기 위해
Figure 112019004544742-pat00101
의 CV가 높게 설정된다.
도 8에서
Figure 112019004544742-pat00102
는 B, C 및 D가 상수 값이기 때문에 A의 성장에 따라 증가한다. 따라서 A값은
Figure 112019004544742-pat00103
의 단어를 더 분별력 있게 만들기 위해 증가되며, 단어의 중요성의 왜곡은 다음의 수학식 12와 같이 정의된다.
Figure 112019004544742-pat00104
여기서
Figure 112019004544742-pat00105
는 관찰과 예측 사이의 단어의 중요성을 측정한다.
Figure 112019004544742-pat00106
는 단어의 예측된 중요도를 나타내고, 카이 스퀘어(Chi Square) 방법의 기대치와의 편차에 의해 계산된다. 그룹화 된 특징 집합
Figure 112019004544742-pat00107
에 대한 중요도 왜곡은 다음의 수학식 13과 같이 정의된다.
Figure 112019004544742-pat00108
Figure 112019004544742-pat00109
는 그룹화된(clustered)
Figure 112019004544742-pat00110
와 클래스
Figure 112019004544742-pat00111
사이의 중요도 왜곡을 측정한다.
비감정적 단어들 또한 작은 식별성을 가지기 때문에
Figure 112019004544742-pat00112
이 가능할 수 있다. 또한
Figure 112019004544742-pat00113
의 데이터 양이
Figure 112019004544742-pat00114
보다 훨씬 크기 때문에
Figure 112019004544742-pat00115
의 값
Figure 112019004544742-pat00116
Figure 112019004544742-pat00117
의 CV보다 클 수 있다. 따라서 r1는 다음의 표에 기초하여 계산되며 증가율
Figure 112019004544742-pat00118
는 다음 수학식 14와 같다(도 11 참조).
Figure 112019004544742-pat00119
테스트(Test)
감정 분석의 텍스트 분류에서 목표는 테스트 된 문장에 대해 가장 일치하는 클래스를 찾는 것이다. 가장 가능성 있거나 MAP(Maximum Posteriori)클래스인
Figure 112019004544742-pat00120
으로 다음의 수학식 15와 같이 계산된다.
Figure 112019004544742-pat00121
c는 훈련 데이터셋 C 전체 클래스 안에 있는 클래스이며,
Figure 112019004544742-pat00122
Figure 112019004544742-pat00123
에서 계산한 것과 같이 class_c에 sentence_S가 있을 확률을 측정하는 class_c의 사후 확률이다. 본 발명에서는 두 개의 클래스
Figure 112019004544742-pat00124
Figure 112019004544742-pat00125
가 정의되며 베이즈 정리를 적용하여 모든 테스트 된 문장에 대해 C 중에서 가장 일치하는 클래스를 찾으며 다음의 수학식 16과 같이 계산된다.
Figure 112019004544742-pat00126
문장의 확률 P(S)는 상수이기 때문에 버려질 수 있다. 많은 조건부 확률을 곱할 때의 문제점으로 인해 곱셈 대신 확률의 로그함수 계산을 수행한다. 로그 함수는 단조로워 가장 높은 확률의 클래스가 대상 클래스로 선택될 수 있다. 로그를 사용한 수학식은 다음과 같다.
Figure 112019004544742-pat00127
더 정확한 예측을 위해 다른 단어들보다 감정적인 단어에 더 많은 가중치를 할당함으로써 감정적인 단어의 영향력이 강화된 대상 클래스(target class)에서 단어의 종속성과 차별성(또는 식별력, discriminability)을 기반으로
Figure 112019004544742-pat00128
를 얻는다. 중복된 특징 단어들은 MNB 모델로 간주되며 중복된 단어에는 더 많은 가중치가 주어지며 편향되고 정확도가 낮은 예측을 하게 된다. 따라서 본 발명의 실시예들에서는 테스트된 문장내의 확실한 단어(distinct word)만 카운트된다.
도 10에 도시된 바와 같이, 본 발명의 일 실시 예에 따른 소셜 네트워크 서비스(SNS) 메시지의 감정 분석을 수행하는 감정 분석 장치(1000)는, 프로세서(1010) 및 메모리(1020)를 포함한다.
메모리(1020)는 적어도 하나의 명령어를 저장하고, 프로세서(1010)는 메모리와 연결된다.
프로세서(1010)는, 상기 적어도 하나의 명령어를 실행함으로써, 소셜 네트워크 서비스(SNS) 메시지내 문장들(sentences)의 적어도 하나의 문장을 훈련 데이터 셋(training data set)으로 선택하고, 상기 훈련 데이터셋으로 선택된 문장을 감정적 특징에 기초하여 상기 감정적 특징과 관련없는 문장은 상기 훈련 데이터셋에서 제거하고, 상기 훈련 데이터셋에 포함된 문장을 양수와 음수의 2가지 극성을 가진 클래스(class)로 그룹화하고-상기 훈련 데이터셋에 포함된 문장을 상기 극성에 따라 긍정적 문장과 부정적 문장으로 분류됨-, 상기 훈련 데이터셋에 포함된 문장내의 단어들(words)을 POS(part of speech) 태그(tag)를 사용하여 분류하여 특징 집합으로 그룹화하고, 상기 그룹화된(clustered) 특징 집합(feature set)의 종속성(dependency)을 기반으로 상기 훈련 데이터셋에 포함된 문장내의 단어들에 대하여 가중치(weight)를 할당한다.
시뮬레이션 결과
본 발명의 결과를 검증하기 위해 Matlab을 사용한 시뮬레이션에 의해 평가를 진행하였고, 이를 위해 Sentiment 140에서 얻은 작업량(workload)는 140개의 문자 메시지를 사용하는 트위터 감정 분석을 위해 본 발명의 일 실시 예에 따른 POS 특징 기반의 감정 분석 방법의 정확도를 분석하는데 사용되었으며, 또한 기존의 FF, PSW, DF, TF-IDF 체계와 비교하였다.
시뮬레이션에 사용된 작업량은 160만 라인의 트위트(tweet) 데이터가 들어있는 Sentiment 140에서 추출되었다. 그 중 절반인 800,000개는 부정 클래스이며 나머지는 긍정 클래스로 두 가지 범주로 나누어 분류하였다. 안정적인 성능 데이터를 얻기 위해 광범위한 시뮬레이션을 실행하였고 무작위로 선택된 6가지 트위트(tweet) 훈련 데이터셋 (5000, 10,000, 15,000, 20,000, 25,000, 30,000)가 구축되고 각각의 데이터셋는 Sentiment 140에서 추출된 동일한 개수의 긍정 및 부정의 임의 선택된 트위트로 구성된다. 이러한 결과는 도 11 내지 도 13에 도시되어 있다. 도 11 내지 도 13을 참조하면, 본 발명의 기법은 훈련 데이터셋과 테스트 데이터 셋의 크기에 무관하게 기존의 기법들보다 지속적으로 성능이 우수함을 알수 있다. 직관적으로 훈련 데이터셋의 크기의 증가에 따라 감정 분석의 정확도가 증가함을 알 수 있다. 도 11 내지 도 13에 도시된 바와 같이 본 발명의 기법의 정확도는 훈련 데이터셋의 크기의 증가에 따라 점진적으로 증가함을 알 수 있다. 또한 본 발명의 실시 예들에 따른 POS 특징 기반의 감정 분석 방법이 도 11 내지 도 13에서 볼 수 있듯이 최소 훈련 데이터(5000)와 최대 테스트 데이터(6000) 최악의 조건에서도 기존의 기법들보다 훨씬 정확하다는 것을 보여준다.
본 발명의 실시 예들에 따른 POS 특징 기반의 감정 분석 방법의 견고성을 확인하기 위해, 3000개의 긍정 데이터와 3000개의 부정 데이터를 각각 포함하는 무작위로 선택된 3개의 테스트 데이터셋을 측정한다. 테스트 데이터를 처리하기 위해 5,000, 20,000, 30,000의 훈련 데이터 집합이 사용되었다. 그 결과 훈련 및 테스트의 양에 관계없이 본 발명의 실시 예들에 따른 POS 특징 기반의 감정 분석 방법이 더 높은 정확도를 나타내며 DF와 FF보다 꾸준히 우수함을 보여준다.
Sentiment 140에서 테스트 데이터셋이 무작위로 선택되었을 때의 정확도(Accuracy), 리콜(Recall), F1-measure 성능을 비교한 것이며 테스트 데이터셋의 크기가 500에서 6,000까지인 경우 모두 최상의 성능을 보인다.
상술한 본 발명의 실시 예들에 따른 소셜 네트워크 서비스(SNS) 메시지의 감정 분석을 위한 POS(part of speech) 특징(feature) 기반의 감정 분석 방법은 컴퓨터로 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현되는 것이 가능하다. 본 발명의 실시 예들에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터로 읽을 수 있는 기록매체에 기록될 수 있다.
본 발명의 실시 예들에 따른 소셜 네트워크 서비스(SNS) 메시지의 감정 분석을 위한 POS(part of speech) 특징(feature) 기반의 감정 분석 방법을 컴퓨터에 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체에 있어서, 소셜 네트워크 서비스(SNS) 메시지내 문장들(sentences)의 적어도 하나의 문장을 훈련 데이터 셋(training data set)으로 선택하는 단계, 상기 훈련 데이터셋으로 선택된 문장을 감정적 특징에 기초하여 상기 감정적 특징과 관련없는 문장은 상기 훈련 데이터셋에서 제거하는 단계, 상기 훈련 데이터셋에 포함된 문장을 양수와 음수의 2가지 극성을 가진 클래스(class)로 그룹화하는 단계-상기 훈련 데이터셋에 포함된 문장을 상기 극성에 따라 긍정적 문장과 부정적 문장으로 분류됨-, 상기 훈련 데이터셋에 포함된 문장내의 단어들(words)을 POS(part of speech) 태그(tag)를 사용하여 분류하여 특징 집합으로 그룹화하는 단계, 상기 그룹화된(clustered) 특징 집합(feature set)의 종속성(dependency)을 기반으로 상기 훈련 데이터셋에 포함된 문장내의 단어들에 대하여 가중치(weight)를 할당하는 단계를 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체가 제공될 수 있다.
컴퓨터가 읽을 수 있는 기록 매체로는 컴퓨터 시스템에 의하여 해독될 수 있는 데이터가 저장된 모든 종류의 기록 매체를 포함한다. 예를 들어, ROM(Read Only Memory), RAM(Random Access Memory), 자기 테이프, 자기 디스크, 플래시 메모리, 광 데이터 저장장치 등이 있을 수 있다. 또한, 컴퓨터로 판독 가능한 기록매체는 컴퓨터 통신망으로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 읽을 수 있는 코드로서 저장되고 실행될 수 있다.
구체적으로, 설명된 특징들은 디지털 전자 회로, 또는 컴퓨터 하드웨어, 펌웨어, 또는 그들의 조합들 내에서 실행될 수 있다. 특징들은 예컨대, 프로그래밍 가능한 프로세서에 의한 실행을 위해, 기계 판독 가능한 저장 디바이스 내의 저장장치 내에서 구현되는 컴퓨터 프로그램 제품에서 실행될 수 있다. 그리고 특징들은 입력 데이터 상에서 동작하고 출력을 생성함으로써 설명된 실시예들의 함수들을 수행하기 위한 지시어들의 프로그램을 실행하는 프로그래밍 가능한 프로세서에 의해 수행될 수 있다. 설명된 특징들은, 데이터 저장 시스템으로부터 데이터 및 지시어들을 수신하기 위해, 및 데이터 저장 시스템으로 데이터 및 지시어들을 전송하기 위해, 결합된 적어도 하나의 프로그래밍 가능한 프로세서, 적어도 하나의 입력 디바이스, 및 적어도 하나의 출력 디바이스를 포함하는 프로그래밍 가능한 시스템 상에서 실행될 수 있는 하나 이상의 컴퓨터 프로그램들 내에서 실행될 수 있다. 컴퓨터 프로그램은 소정 결과에 대해 특정 동작을 수행하기 위해 컴퓨터 내에서 직접 또는 간접적으로 사용될 수 있는 지시어들의 집합을 포함한다. 컴퓨터 프로그램은 컴파일된 또는 해석된 언어들을 포함하는 프로그래밍 언어 중 어느 형태로 쓰여지고, 모듈, 소자, 서브루틴(subroutine), 또는 다른 컴퓨터 환경에서 사용을 위해 적합한 다른 유닛으로서, 또는 독립 조작 가능한 프로그램으로서 포함하는 어느 형태로도 사용될 수 있다.
지시어들의 프로그램의 실행을 위한 적합한 프로세서들은, 예를 들어, 범용 및 특수 용도 마이크로프로세서들 둘 모두, 및 단독 프로세서 또는 다른 종류의 컴퓨터의 다중 프로세서들 중 하나를 포함한다. 또한 설명된 특징들을 구현하는 컴퓨터 프로그램 지시어들 및 데이터를 구현하기 적합한 저장 디바이스들은 예컨대, EPROM, EEPROM, 및 플래쉬 메모리 디바이스들과 같은 반도체 메모리 디바이스들, 내부 하드 디스크들 및 제거 가능한 디스크들과 같은 자기 디바이스들, 광자기 디스크들 및 CD-ROM 및 DVD-ROM 디스크들을 포함하는 비휘발성 메모리의 모든 형태들을 포함한다. 프로세서 및 메모리는 ASIC들(application-specific integrated circuits) 내에서 통합되거나 또는 ASIC들에 의해 추가될 수 있다.
이상에서 설명한 본 발명은 일련의 기능 블록들을 기초로 설명되고 있지만, 전술한 실시 예 및 첨부된 도면에 의해 한정되는 것이 아니고, 본 발명의 기술적 사상을 벗어나지 않는 범위 내에서 여러 가지 치환, 변형 및 변경 가능하다는 것이 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 있어 명백할 것이다.
전술한 실시 예들의 조합은 전술한 실시 예에 한정되는 것이 아니며, 구현 및/또는 필요에 따라 전술한 실시예들 뿐 아니라 다양한 형태의 조합이 제공될 수 있다.
전술한 실시 예들에서, 방법들은 일련의 단계 또는 블록으로서 순서도를 기초로 설명되고 있으나, 본 발명은 단계들의 순서에 한정되는 것은 아니며, 어떤 단계는 상술한 바와 다른 단계와 다른 순서로 또는 동시에 발생할 수 있다. 또한, 당해 기술 분야에서 통상의 지식을 가진 자라면 순서도에 나타난 단계들이 배타적이지 않고, 다른 단계가 포함되거나, 순서도의 하나 또는 그 이상의 단계가 본 발명의 범위에 영향을 미치지 않고 삭제될 수 있음을 이해할 수 있을 것이다.
전술한 실시 예는 다양한 양태의 예시들을 포함한다. 다양한 양태들을 나타내기 위한 모든 가능한 조합을 기술할 수는 없지만, 해당 기술 분야의 통상의 지식을 가진 자는 다른 조합이 가능함을 인식할 수 있을 것이다. 따라서, 본 발명은 이하의 특허청구범위 내에 속하는 모든 다른 교체, 수정 및 변경을 포함한다고 할 것이다.

Claims (20)

  1. 소셜 네트워크 서비스(SNS) 메시지의 감정 분석을 위한 감정 분석 장치에서 수행되는 POS(part of speech) 특징(feature) 기반의 감정 분석 방법에 있어서,
    소셜 네트워크 서비스(SNS) 메시지내 문장들(sentences)의 적어도 하나의 문장을 훈련 데이터 셋(training data set)으로 선택하는 단계;
    상기 선택된 훈련 데이터셋 내의 문장 중에서 감정적 특징에 기초하여 상기 감정적 특징과 관련이 낮거나 관련이 없는 문장은 상기 훈련 데이터 셋에서 제거하는 단계;
    상기 훈련 데이터셋에 포함된 문장내의 단어들(words)을 POS 태깅 규칙(tagging rule)에 따라 태깅하여 특징 집합(feature set)으로 그룹화하는 단계;
    상기 그룹화된(clustered) 특징 집합(feature set)의 종속성(dependency)을 기반으로 상기 선택된 훈련 데이터셋에 포함된 문장내의 단어들에 대하여 가중치(weight)를 할당하는 단계; 및
    상기 훈련 데이터셋에 포함된 문장을 양수와 음수의 적어도 2가지 극성을 가진 클래스(class)로 그룹화하는 단계-여기서, 상기 훈련 데이터셋에 포함된 문장을 상기 극성에 따라 긍정적 문장과 부정적 문장으로 분류됨-
    를 포함하는 소셜 네트워크 서비스(SNS) 메시지의 감정 분석을 위한 POS(part of speech) 특징(feature) 기반의 감정 분석 방법.
  2. 제1항에 있어서, 상기 훈련 데이터셋에 포함된 문장내의 단어들(words)을 POS 태깅 규칙(tagging rule)에 따라 태깅하여 특징 집합(feature set)으로 그룹화하는 단계는
    상기 훈련 데이터셋에 포함된 문장내의 단어들(words)을 명사, 동사, 형용사 및 부사 중 하나의 태그(tag)를 할당하는 단계를 포함하는 것을 특징으로하는 소셜 네트워크 서비스(SNS) 메시지의 감정 분석을 위한 POS(part of speech) 특징(feature) 기반의 감정 분석 방법.
  3. 제2항에 있어서, 상기 훈련 데이터셋에 포함된 문장이 상기 감정적 특징과 관련이 낮거나 관련이 없는 문장인지를 결정할 때 상기 부사, 형용사 및 동사 중 적어도 하나의 유형을 포함하는 경우 감정적 특징과 관련이 있는 문장으로 간주하는 것을 특징으로하는 소셜 네트워크 서비스(SNS) 메시지의 감정 분석을 위한 POS(part of speech) 특징(feature) 기반의 감정 분석 방법.
  4. 제3항에 있어서, 상기 훈련 데이터셋에 포함된 문장 중에서 상기 부사, 형용사 및 동사 중 두 가지 이하의 유형을 포함하는 문장은 상기 감정적 특징과 관련이 낮거나 관련이 없는 문장으로 간주하여 상기 훈련 데이터셋에서 제외하는 것을 특징으로하는 소셜 네트워크 서비스(SNS) 메시지의 감정 분석을 위한 POS(part of speech) 특징(feature) 기반의 감정 분석 방법.
  5. 제3항에 있어서, 상기 훈련 데이터셋에 포함된 문장 중에서 상기 감정적 특징을 가진 단어의 개수가 소정 개수 보다 적은 문장은 상기 훈련 데이터셋에서 제외하는 것을 특징으로하는 소셜 네트워크 서비스(SNS) 메시지의 감정 분석을 위한 POS(part of speech) 특징(feature) 기반의 감정 분석 방법.
  6. 제1항에 있어서, 단어 식별성(word discrimination; WD)은 단어와 관련하여 얼마나 많은 차별 정보가 있는지를 측정하는 데 사용되며,
    높은 단어 식별성(word discrimination; WD)의 단어는 상기 훈련 데이터셋에 포함된 문장의 상기 감정적 특징과 관련이 낮거나 관련이 없는지 판단시 높은 가중치를 할당하는 것을 특징으로하는 소셜 네트워크 서비스(SNS) 메시지의 감정 분석을 위한 POS(part of speech) 특징(feature) 기반의 감정 분석 방법.
  7. 제1항에 있어서, 상기 훈련 데이터셋에 포함된 문장내의 단어들에 대한 가중치 할당은 단어의 중요성에 따라 할당되는 것을 특징으로하는 소셜 네트워크 서비스(SNS) 메시지의 감정 분석을 위한 POS(part of speech) 특징(feature) 기반의 감정 분석 방법.
  8. 제1항에 있어서, 상기 훈련 데이터셋에 포함된 문장내의 단어들에 대한 가중치 할당은 카이 스퀘어(Chi Square) 값으로 측정된 클래스와 함께 상기 그룹화된(clustered) 특징 집합(feature set)의 종속성(dependency)을 고려하며 카이 스퀘어(Chi Square) 값이 클수록 상기 특징 집합의 종속성이 강해지는 것을 특징으로하는 소셜 네트워크 서비스(SNS) 메시지의 감정 분석을 위한 POS(part of speech) 특징(feature) 기반의 감정 분석 방법.
  9. 제8항에 있어서, 상기 특징 집합의 종속성을 측정하기 위해 카이 스퀘어(Chi Square)의 임계값 CV을 사용하며, 주어진 카이 스퀘어(Chi Square) 값이 상기 임계값 CV보다 큰 경우, 테스트된 그룹화된 특징 집합은 클래스에 종속된 것으로 간주되는 것을 특징으로하는 소셜 네트워크 서비스(SNS) 메시지의 감정 분석을 위한 POS(part of speech) 특징(feature) 기반의 감정 분석 방법.
  10. 제8항에 있어서, 상기 특징 집합의 종속성을 측정하기 위해 카이 스퀘어(Chi Square)의 임계값 CV을 사용하며, 주어진 카이 스퀘어(Chi Square) 값이 상기 임계값 CV보다 작거나 같은 경우, 테스트된 그룹화된 특징 집합은 서로 독립적으로 간주되며, 상기 서로 독립적으로 간주되는 경우 상기 종속성의 신뢰성을 보장하기 위해 상기 임계값 CV가 높게 설정되는 것을 특징으로하는 소셜 네트워크 서비스(SNS) 메시지의 감정 분석을 위한 POS(part of speech) 특징(feature) 기반의 감정 분석 방법.
  11. 제1항에 있어서, 더 정확한 예측을 위해 상기 감정적인 특징을 가진 단어에 다른 단어들보다 더 많은 가중치를 할당함으로써 상기 감정적인 특징을 가진 단어의 영향력을 강화하는 것을 특징으로하는 소셜 네트워크 서비스(SNS) 메시지의 감정 분석을 위한 POS(part of speech) 특징(feature) 기반의 감정 분석 방법.
  12. 적어도 하나의 명령어를 저장하는 메모리; 및
    상기 메모리와 연결되는 프로세서를 포함하고,
    상기 프로세서는, 상기 적어도 하나의 명령어를 실행함으로써,
    소셜 네트워크 서비스(SNS) 메시지내 문장들(sentences)의 적어도 하나의 문장을 훈련 데이터 셋(training data set)으로 선택하고,
    상기 훈련 데이터셋으로 선택된 문장을 감정적 특징에 기초하여 상기 감정적 특징과 관련없는 문장은 상기 훈련 데이터셋에서 제거하고,
    상기 훈련 데이터셋에 포함된 문장을 양수와 음수의 2가지 극성을 가진 클래스(class)로 그룹화하고-상기 훈련 데이터셋에 포함된 문장을 상기 극성에 따라 긍정적 문장과 부정적 문장으로 분류됨-,
    상기 훈련 데이터셋에 포함된 문장내의 단어들(words)을 POS(part of speech) 태그(tag)를 사용하여 분류하여 특징 집합으로 그룹화하고,
    상기 그룹화된(clustered) 특징 집합(feature set)의 종속성(dependency)을 기반으로 상기 훈련 데이터셋에 포함된 문장내의 단어들에 대하여 가중치(weight)를 할당하는, 소셜 네트워크 서비스(SNS) 메시지의 감정 분석을 수행하는 감정 분석 장치.
  13. 제12항에 있어서, 상기 프로세서는
    상기 훈련 데이터셋에 포함된 문장내의 단어들(words)을 명사, 동사, 형용사 및 부사 중 하나의 태그(tag)를 할당하는 것을 특징으로하는 소셜 네트워크 서비스(SNS) 메시지의 감정 분석을 수행하는 감정 분석 장치.
  14. 제13항에 있어서, 상기 프로세서는
    상기 훈련 데이터셋에 포함된 문장이 상기 감정적 특징과 관련이 낮거나 관련이 없는 문장인지를 결정할 때 상기 부사, 형용사 및 동사 중 적어도 하나의 유형을 포함하는 경우 감정적 특징과 관련이 있는 문장으로 간주하는 것을 특징으로하는 소셜 네트워크 서비스(SNS) 메시지의 감정 분석을 수행하는 감정 분석 장치.
  15. 제14항에 있어서, 상기 훈련 데이터셋에 포함된 문장 중에서 상기 부사, 형용사 및 동사 중 두 가지 이하의 유형을 포함하는 문장이거나, 상기 훈련 데이터셋에 포함된 문장 중에서 상기 감정적 특징을 가진 단어의 개수가 소정 개수 보다 적은 문장은 상기 감정적 특징과 관련이 낮거나 관련이 없는 문장으로 간주하여 상기 훈련 데이터셋에서 제외하는 것을 특징으로하는 소셜 네트워크 서비스(SNS) 메시지의 감정 분석을 수행하는 감정 분석 장치.
  16. 제12항에 있어서, 단어 식별성(word discrimination; WD)은 단어와 관련하여 얼마나 많은 차별 정보가 있는지를 측정하는 데 사용되며,
    높은 단어 식별성(word discrimination; WD)의 단어는 상기 훈련 데이터셋에 포함된 문장의 상기 감정적 특징과 관련이 낮거나 관련이 없는지 판단시 높은 가중치를 할당하는 것을 특징으로하는 소셜 네트워크 서비스(SNS) 메시지의 감정 분석을 수행하는 감정 분석 장치.
  17. 제12항에 있어서, 상기 훈련 데이터셋에 포함된 문장내의 단어들에 대한 가중치 할당은 단어의 중요성에 따라 할당되는 것을 특징으로하는 소셜 네트워크 서비스(SNS) 메시지의 감정 분석을 수행하는 감정 분석 장치.
  18. 제12항에 있어서, 상기 훈련 데이터셋에 포함된 문장내의 단어들에 대한 가중치 할당은 카이 스퀘어(Chi Square) 값으로 측정된 클래스와 함께 상기 그룹화된(clustered) 특징 집합(feature set)의 종속성(dependency)을 고려하며 카이 스퀘어(Chi Square) 값이 클수록 상기 특징 집합의 종속성이 강해지는 것을 특징으로하는 소셜 네트워크 서비스(SNS) 메시지의 감정 분석을 수행하는 감정 분석 장치.
  19. 제12항에 있어서, 더 정확한 예측을 위해 상기 감정적인 특징을 가진 단어에 다른 단어들보다 더 많은 가중치를 할당함으로써 상기 감정적인 특징을 가진 단어의 영향력을 강화하는 것을 특징으로하는 소셜 네트워크 서비스(SNS) 메시지의 감정 분석을 수행하는 감정 분석 장치.
  20. 프로세서 실행 가능한 명령어들을 포함하는 컴퓨터 판독 가능한 저장 매체로서, 상기 명령어들은 상기 프로세서에 의해 실행되었을 때 상기 프로세서로 하여금,
    소셜 네트워크 서비스(SNS) 메시지내 문장들(sentences)의 적어도 하나의 문장을 훈련 데이터 셋(training data set)으로 선택하고,
    상기 훈련 데이터셋으로 선택된 문장을 감정적 특징에 기초하여 상기 감정적 특징과 관련없는 문장은 상기 훈련 데이터셋에서 제거하고,
    상기 훈련 데이터셋에 포함된 문장을 양수와 음수의 2가지 극성을 가진 클래스(class)로 그룹화하고-상기 훈련 데이터셋에 포함된 문장을 상기 극성에 따라 긍정적 문장과 부정적 문장으로 분류됨-,
    상기 훈련 데이터셋에 포함된 문장내의 단어들(words)을 POS(part of speech) 태그(tag)를 사용하여 분류하여 특징 집합으로 그룹화하고,
    상기 그룹화된(clustered) 특징 집합(feature set)의 종속성(dependency)을 기반으로 상기 훈련 데이터셋에 포함된 문장내의 단어들에 대하여 가중치(weight)를 할당하도록 구성된, 컴퓨터 판독 가능한 저장 매체.
KR1020190004827A 2019-01-14 2019-01-14 소셜 네트워크 서비스 메시지의 감정 분석을 위한 POS(part of speech) 특징기반의 감정 분석 방법 및 이를 수행하는 감정 분석 장치 KR102155692B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020190004827A KR102155692B1 (ko) 2019-01-14 2019-01-14 소셜 네트워크 서비스 메시지의 감정 분석을 위한 POS(part of speech) 특징기반의 감정 분석 방법 및 이를 수행하는 감정 분석 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190004827A KR102155692B1 (ko) 2019-01-14 2019-01-14 소셜 네트워크 서비스 메시지의 감정 분석을 위한 POS(part of speech) 특징기반의 감정 분석 방법 및 이를 수행하는 감정 분석 장치

Publications (2)

Publication Number Publication Date
KR20200088164A KR20200088164A (ko) 2020-07-22
KR102155692B1 true KR102155692B1 (ko) 2020-09-14

Family

ID=71893283

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190004827A KR102155692B1 (ko) 2019-01-14 2019-01-14 소셜 네트워크 서비스 메시지의 감정 분석을 위한 POS(part of speech) 특징기반의 감정 분석 방법 및 이를 수행하는 감정 분석 장치

Country Status (1)

Country Link
KR (1) KR102155692B1 (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115906835B (zh) * 2022-11-23 2024-02-20 之江实验室 一种基于聚类和对比学习的中文问句文本表示学习的方法

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101330158B1 (ko) * 2013-07-12 2013-11-15 주식회사 메조미디어 텍스트의 감정지수 분석 방법 및 컴퓨터 판독 가능한 기록 매체

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101330158B1 (ko) * 2013-07-12 2013-11-15 주식회사 메조미디어 텍스트의 감정지수 분석 방법 및 컴퓨터 판독 가능한 기록 매체

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Yili wang 외 1명, "Feature Weighting Based on Inter-Category and Intra-Category Strength for Twitter Sentiment Analysis", Applied Sciences, Volume 9, Issue 1, (2018.12.27.) 1부.*

Also Published As

Publication number Publication date
KR20200088164A (ko) 2020-07-22

Similar Documents

Publication Publication Date Title
Singh et al. Optimization of sentiment analysis using machine learning classifiers
Ghanbari-Adivi et al. Text emotion detection in social networks using a novel ensemble classifier based on Parzen Tree Estimator (TPE)
US20200311145A1 (en) System and method for generating an answer based on clustering and sentence similarity
US20140229164A1 (en) Apparatus, method and computer-accessible medium for explaining classifications of documents
WO2018184518A1 (zh) 微博数据处理方法、装置、计算机设备及存储介质
Cerón-Guzmán et al. A sentiment analysis system of Spanish tweets and its application in Colombia 2014 presidential election
Rezapour Sentiment classification of skewed shoppers' reviews using machine learning techniques, examining the textual features
Kilroy et al. Using machine learning to improve lead times in the identification of emerging customer needs
Narayanaswamy Exploiting BERT and RoBERTa to improve performance for aspect based sentiment analysis
Shyamasundar et al. A multiple-layer machine learning architecture for improved accuracy in sentiment analysis
Ruposh et al. A computational approach of recognizing emotion from Bengali texts
Yenkikar et al. Sentimlbench: Benchmark evaluation of machine learning algorithms for sentiment analysis
Och Dag et al. Evaluating automated support for requirements similarity analysis in market-driven development
Hamza et al. a Comparison of Sentimental Analysis Algorithms on Twitter Data Using Machine Learning
KR102155692B1 (ko) 소셜 네트워크 서비스 메시지의 감정 분석을 위한 POS(part of speech) 특징기반의 감정 분석 방법 및 이를 수행하는 감정 분석 장치
Ali et al. Identifying and Profiling User Interest over time using Social Data
JP6026036B1 (ja) データ分析システム、その制御方法、プログラム、及び、記録媒体
Rao et al. A Framework for Hate Speech Detection using Different ML Algorithms
Spliethöver et al. No word embedding model is perfect: Evaluating the representation accuracy for social bias in the media
Wong et al. Sentiment Analysis of Snapchat Application's Reviews
Jardim et al. A Multilingual Lexicon-based Approach for Sentiment Analysis in Social and Cultural Information System Data
Innork et al. Machine Learning-based Multiclass Classification Methods for Sentiment Analysis
KR102165863B1 (ko) 소셜 네트워크 서비스에서 카테고리 간의 강도 및 카테고리 내의 강도 기반의 감정 분석 방법 및 장치
Muita A Model for processing public participation feedback using topic Modeling
Sharma et al. A study of social sentiment analysis in the times of covid-19 using twitter

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant