KR101005337B1 - 웹 문서에서의 의견 추출 및 분석 장치 및 그 방법 - Google Patents

웹 문서에서의 의견 추출 및 분석 장치 및 그 방법 Download PDF

Info

Publication number
KR101005337B1
KR101005337B1 KR1020080095330A KR20080095330A KR101005337B1 KR 101005337 B1 KR101005337 B1 KR 101005337B1 KR 1020080095330 A KR1020080095330 A KR 1020080095330A KR 20080095330 A KR20080095330 A KR 20080095330A KR 101005337 B1 KR101005337 B1 KR 101005337B1
Authority
KR
South Korea
Prior art keywords
opinion
web document
language
module
domain
Prior art date
Application number
KR1020080095330A
Other languages
English (en)
Other versions
KR20100035940A (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 KR1020080095330A priority Critical patent/KR101005337B1/ko
Priority to PCT/KR2009/005408 priority patent/WO2010036013A2/ko
Priority to US13/121,644 priority patent/US8731904B2/en
Publication of KR20100035940A publication Critical patent/KR20100035940A/ko
Application granted granted Critical
Publication of KR101005337B1 publication Critical patent/KR101005337B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/36Creation of semantic tools, e.g. ontology or thesauri
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/30Semantic analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/951Indexing; Web crawling techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/268Morphological analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/279Recognition of textual entities
    • G06F40/289Phrasal analysis, e.g. finite state techniques or chunking

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computational Linguistics (AREA)
  • Databases & Information Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • General Health & Medical Sciences (AREA)
  • Data Mining & Analysis (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

본 발명은 웹 문서에서의 의견 추출 및 분석 장치 및 그 방법에 관한 것으로, 인터넷 상에 존재하는 여러 웹사이트들에 흩어져 있는 웹 문서에서 사용자 의견 정보들을 자동 추출 및 분석함으로써, 긍정/부정 의견별로 검색 및 통계를 확인할 수 있는 의견 검색 서비스를 간편하게 구현할 수 있으며, 의견 검색 사용자들은 특정 키워드에 대하여 다른 사용자들의 의견을 손쉽게 한눈에 검색 및 모니터링(Monitoring)하는 시스템을 용이하게 구현할 수 있는 효과가 있다.
또한, 본 발명에 의하면, 각 회사의 마케팅 담당자나 주식 투자자, 기업 가치 평가자 등은 방대한 인터넷 상에서 존재하는 해당 기업이나 물품에 대한 여러 사용자들의 의견을 한눈에 확인할 수 있으며, 기존에 사용자들의 의견을 알기 위해서 실시했던 설문조사나 컨설팅 회사에 들였던 비용을 대폭 줄일 수 있으면서 효과적으로 각 사용자들의 의견 추출 및 통계를 내서 활용할 수 있다.
인터넷, 의견, 긍정, 부정, 웹 문서, 형태소 분석, 띄어쓰기, 기계학습 알고리즘

Description

웹 문서에서의 의견 추출 및 분석 장치 및 그 방법{SYSTEM FOR EXTRACTION AND ANALYSIS OF OPINION IN WEB DOCUMENTS AND METHOD THEREOF}
본 발명은 웹 문서에서의 의견 추출 및 분석 장치 및 그 방법에 관한 것으로, 보다 상세하게는 인터넷 상에 존재하는 여러 웹사이트들에 흩어져 있는 웹 문서에서 사용자 의견 정보들을 자동 추출 및 분석함으로써, 긍정/부정 의견별로 검색 및 통계를 확인할 수 있는 의견 검색 서비스를 간편하게 구현할 수 있으며, 의견 검색 사용자들은 특정 키워드에 대하여 다른 사용자들의 의견을 손쉽게 한눈에 검색 및 모니터링하는 시스템을 용이하게 구현할 수 있도록 한 웹 문서에서의 의견 자동 추출 및 분석 장치 및 그 방법에 관한 것이다.
최근에 인터넷 사용이 점차 활발해 짐에 따라, 많은 사람들이 인터넷에서 예컨대, 블로그(Blog), 위키(Wiki)와 같은 매체를 통해서 자신의 의견을 표현하고 있는 추세이다. 또한, 특정한 정보의 가치를 평가할 때, 이러한 다른 사람들이 인터넷 상에 올려놓은 의견 정보를 참조하고자 하는 수요도 높아지고 있다.
예를 들면, 인터넷 상에는 상품 리뷰(Review)에서 영화 리뷰까지 다양한 사용자들의 의견이 존재한다. 이러한 각 사용자들의 의견들은 일반 사용자들이 물품을 구매하거나, 영화를 보기 전에 다른 사용자들의 의견을 보고자 하는 경우에도 이용될 수 있으며, 마케팅 담당자나 주식 매매자 등이 각 물품이나 회사에 대한 일반 사용자들의 다양한 의견을 알고자 하는 경우에도 사용될 수 있다. 특히, 일반 사용자들은 특정 물품을 구매하기 전에 다른 사용자들의 평가를 먼저 보고 나서 이런 물품을 구매하려는 경향이 크다.
하지만, 이러한 인터넷 상에 존재하는 의견들은 개개의 웹사이트들에만 존재하여, 이러한 의견 정보들을 사용하고자 할 경우에는 사용자가 일일이 이러한 개개의 모든 웹사이트를 수동으로 찾아보아야 하는 번거로움이 존재한다.
이러한 모든 웹사이트들을 사용자들이 모두 찾아보기 어려우며 일반 검색으로 다른 사용자들의 의견을 찾고자 하는 경우에는 의견이 있는 웹 문서, 긍정적인 의견이 있는 웹 문서, 부정적인 의견이 있는 웹 문서 등이 혼재하여 효과적으로 다른 사용자들의 의견을 찾아보기 어려운 문제점이 있다.
이러한 문제점을 해결하기 위하여 국/내외 학계를 중심으로 사용자 의견 추출 기술이 활발하게 연구되고 있으며, 정보 검색 분야에서도 2000년도 초반부터 크게 발전하여 다양한 기술이 연구되고 있다.
그러나, 기존의 정보 검색 기술은 단순히 키워드가 존재하는 정보에 기반한 검색만 제공해주고 있을 뿐이고, 각 키워드가 등장하는 문서나 문장에서 긍정적/부정적으로 평가된 내용을 기반으로 한 좀더 고차원적인 검색까지 제공해주고 있지 못하고 있다. 최근에 사용자 의견 추출 기술을 정보 검색에 적용하려는 시도가 진행되고 있으나 아직도 단순히 긍정, 부정 문서를 나누는 수준에만 머무르고 있는 실정이다.
본 발명은 전술한 문제점을 해결하기 위하여 안출된 것으로서, 본 발명의 목적은 인터넷 상에 존재하는 여러 웹사이트들에 흩어져 있는 웹 문서에서 사용자 의견 정보들을 자동 추출 및 분석함으로써, 긍정/부정 의견별로 검색 및 통계를 확인할 수 있는 의견 검색 서비스를 간편하게 구현할 수 있으며, 의견 검색 사용자들은 특정 키워드에 대하여 다른 사용자들의 의견을 손쉽게 한눈에 검색 및 모니터링하는 시스템을 용이하게 구현할 수 있도록 한 웹 문서에서의 의견 추출 및 분석 장치 및 그 방법을 제공하는데 있다.
전술한 목적을 달성하기 위하여 본 발명의 제1 측면은, 의견 문장을 포함한 특정의 웹 문서 데이터를 수집하는 문서수집모듈; 상기 문서수집모듈로부터 수집된 특정의 웹 문서 데이터에 대해 문장 단위로 분리하고, 분리된 각 문장에 대해 언어처리를 수행하여 언어적인 자질들을 추출하는 언어처리모듈; 상기 언어처리모듈로부터 추출된 각 문장의 언어적인 자질들에 대해 기계학습 알고리즘을 수행하여 특정의 의견추출모델을 생성하는 의견학습모듈; 및 상기 의견학습모듈로부터 생성된 의견추출모델을 이용하여 입력되는 웹 문서 데이터에 대해 확률적으로 의견 문장을 추출하는 적어도 하나의 의견추출모듈을 포함하는 웹 문서에서의 의견 추출 장치를 제공하는 것이다.
여기서, 상기 의견추출모듈로부터 입력되는 웹 문서 데이터를 기 설정된 도메인별로 분류하여 각 의견추출모듈로 전달하기 위한 도메인 분류모듈이 더 포함됨이 바람직하다.
바람직하게, 상기 도메인 분류모듈은, 기 설정된 도메인별로 해당 도메인과 관련된 웹 문서 데이터를 수집하는 적어도 하나의 문서수집부; 상기 수집된 각 도메인별 웹 문서 데이터에 대해 언어처리를 수행하여 의미적으로 분리 가능한 자질들을 추출하는 적어도 하나의 언어처리부; 상기 추출된 각 도메인별 자질들에 대해 기계학습 알고리즘을 이용하여 확률적으로 학습한 후 특정의 도메인 분류모델을 생성하는 도메인 분류학습부; 및 상기 생성된 도메인 분류모델을 이용하여 입력되는 웹 문서 데이터에 대해 상기 기 설정된 도메인별로 확률적인 분류를 수행하는 도메인 분류부를 포함할 수 있다.
바람직하게, 각 문서수집부에서 수집하는 각 도메인별 웹 문서 데이터는 해당 도메인에 대한 의견 데이터와 사실 데이터의 조합으로 이루어질 수 있다.
바람직하게, 상기 의견 데이터와 사실 데이터의 비율은 동일하게 유지되도록 한다.
바람직하게, 상기 언어처리는 형태소 분석 또는 띄어쓰기 처리로 이루어질 수 있다.
바람직하게, 상기 띄어쓰기를 수행한 데이터를 사용할 경우, 상기 언어처리부는 유니그램(Unigram), 바이그램(Bigram) 또는 트라이그램(Trigram) 중 적어도 어느 하나의 형태의 자질을 추출하며, 상기 형태소 분석을 수행한 데이터를 사용할 경우, 상기 언어처리부는 형태소 분석 결과 특별한 의미를 가지지 않는 조사, 접사, 선 어말 어미 또는 종결 어미 중 적어도 어느 하나를 제거한 후, 유니그램(Unigram), 바이그램(Bigram) 또는 트라이그램(Trigram) 중 적어도 어느 하나의 형태의 자질을 추출할 수 있다.
본 발명의 제2 측면은, 특정의 웹 문서 데이터에 존재하는 평가 결과를 갖는 의견 문장에 대해 언어처리를 수행하여 의미적인 언어 단위들로 분리하는 언어처리모듈; 상기 분리된 각 언어 단위별로 긍정적/부정적 표현으로 될 확률값을 정규화하여 계산하는 의견표현 연산모듈; 상기 계산된 각 언어 단위별 확률값과 기 설정된 의견표현 기준값을 비교하여 그 결과에 따라 각 언어 단위별로 긍정/부정 의견표현으로 표시하는 의견표현 표시모듈; 상기 각 언어 단위별 긍정/부정 의견표현으로 표시된 의견 문장에 대해 기계학습 알고리즘을 수행하여 특정의 의견표현모델을 생성하는 의견표현 학습모듈; 및 상기 생성된 의견표현모델을 이용하여 입력되는 웹 문서 데이터의 평가 결과를 갖는 의견 문장에 대해 언어처리를 수행한 후, 긍정/부정 의견표현을 표시 및 구분하는 적어도 하나의 의견표현 구분모듈을 포함하는 웹 문서에서의 의견 분석 장치를 제공하는 것이다.
여기서, 상기 의견표현 연산모듈로부터 계산된 각 언어 단위별 확률값을 데이터베이스(DB)화하여 저장하기 위한 의견어휘 저장모듈이 더 포함됨이 바람직하다.
본 발명의 제3 측면은, 평가 결과를 갖는 의견 문장을 포함한 특정의 웹 문서 데이터를 수집하는 문서수집모듈; 상기 수집된 웹 문서 데이터에 대해 문장 단위로 분리하고, 분리된 각 문장에 대해 언어처리를 수행하여 언어적인 자질들을 추출하는 제1 언어처리모듈; 상기 추출된 각 문장의 언어적인 자질들에 대해 기계학습 알고리즘을 수행하여 특정의 의견추출모델을 생성하는 의견학습모듈; 상기 생성된 의견추출모델을 이용하여 입력되는 웹 문서 데이터에 대해 확률적으로 의견 문장을 추출하는 적어도 하나의 의견추출모듈; 상기 추출된 평가 결과를 갖는 의견 문장에 대해 언어처리를 수행하여 의미적인 언어 단위들로 분리하는 제2 언어처리모듈; 상기 분리된 각 언어 단위별로 긍정적/부정적 표현으로 될 확률값을 정규화하여 계산하는 의견표현 연산모듈; 상기 계산된 각 언어 단위별 확률값과 기 설정된 의견표현 기준값을 비교하여 그 결과에 따라 각 언어 단위별로 긍정/부정 의견표현으로 표시하는 의견표현 표시모듈; 상기 각 언어 단위별 긍정/부정 의견표현으로 표시된 의견 문장에 대해 기계학습 알고리즘을 수행하여 특정의 의견표현모델을 생성하는 의견표현 학습모듈; 및 상기 생성된 의견표현모델을 이용하여 입력되는 웹 문서 데이터의 평가 결과를 갖는 의견 문장에 대해 언어처리를 수행한 후, 긍정/부정 의견표현을 표시 및 구분하는 적어도 하나의 의견표현 구분모듈을 포함하는 웹 문서에서의 의견 추출 및 분석 장치를 제공하는 것이다.
본 발명의 제4 측면은, (a) 의견 문장을 포함한 특정의 웹 문서 데이터를 수집하는 단계; (b) 상기 수집된 특정의 웹 문서 데이터에 대해 문장 단위로 분리하 고, 분리된 각 문장에 대해 언어처리를 수행하여 언어적인 자질들을 추출하는 단계; (c) 상기 추출된 각 문장의 언어적인 자질들에 대해 기계학습 알고리즘을 수행하여 특정의 의견추출모델을 생성하는 단계; 및 (d) 상기 생성된 의견추출모델을 이용하여 입력되는 웹 문서 데이터에 대해 확률적으로 의견 문장을 추출하는 단계를 포함하는 웹 문서에서의 의견 추출 방법을 제공하는 것이다.
바람직하게, 상기 단계(d)에서 입력되는 웹 문서 데이터에 대해 기 설정된 도메인별로 확률적인 분류를 수행하는 단계를 더 포함할 수 있다.
바람직하게, 상기 기 설정된 도메인별로 확률적인 분류를 수행하는 단계는, 상기 기 설정된 도메인별로 해당 도메인과 관련된 웹 문서 데이터를 수집하는 제1 과정과, 상기 수집된 각 도메인별 웹 문서 데이터에 대해 언어처리를 수행하여 의미적으로 분리 가능한 자질들을 추출하는 제2 과정과, 상기 추출된 각 도메인별 자질들에 대해 기계학습 알고리즘을 이용하여 확률적으로 학습한 후 특정의 도메인 분류모델을 생성하는 제3 과정과, 상기 생성된 도메인 분류모델을 이용하여 입력되는 웹 문서 데이터에 대해 상기 기 설정된 도메인별로 확률적인 분류를 수행하는 제4 과정을 포함할 수 있다.
바람직하게, 상기 언어처리는 형태소 분석 또는 띄어쓰기 처리를 수행할 수 있다.
본 발명의 제5 측면은, (a') 특정의 웹 문서 데이터에 존재하는 평가 결과를 갖는 의견 문장에 대해 언어처리를 수행하여 의미적인 언어 단위들로 분리하는 단 계; (b') 상기 분리된 각 언어 단위별로 긍정적/부정적 표현으로 될 확률값을 정규화하여 계산하는 단계; (c') 상기 계산된 각 언어 단위별 확률값과 기 설정된 의견표현 기준값을 비교하여 그 결과에 따라 각 언어 단위별로 긍정/부정 의견표현으로 표시하는 단계; (d') 상기 각 언어 단위별 긍정/부정 의견표현으로 표시된 의견 문장에 대해 기계학습 알고리즘을 수행하여 특정의 의견표현모델을 생성하는 단계; 및 (e') 상기 생성된 의견표현모델을 이용하여 입력되는 웹 문서 데이터의 평가 결과를 갖는 의견 문장에 대해 언어처리를 수행한 후, 긍정/부정 의견표현을 표시 및 구분하는 단계를 포함하는 웹 문서에서의 의견 분석 방법을 제공하는 것이다.
바람직하게, 상기 단계(b')에서 계산된 각 언어 단위별 확률값을 데이터베이스(DB)화하여 별도의 저장모듈에 저장하는 단계를 더 포함할 수 있다.
본 발명의 제6 측면은, (a") 평가 결과를 갖는 의견 문장을 포함한 특정의 웹 문서 데이터를 수집하는 단계; (b") 상기 수집된 웹 문서 데이터에 대해 문장 단위로 분리하고, 분리된 각 문장에 대해 언어처리를 수행하여 언어적인 자질들을 추출하는 단계; (c") 상기 추출된 각 문장의 언어적인 자질들에 대해 기계학습 알고리즘을 수행하여 특정의 의견추출모델을 생성하는 단계; (d") 상기 생성된 의견추출모델을 이용하여 입력되는 웹 문서 데이터에 대해 확률적으로 의견 문장을 추출하는 단계; (e") 상기 추출된 평가 결과를 갖는 의견 문장에 대해 언어처리를 수행하여 의미적인 언어 단위들로 분리하는 단계; (f") 상기 분리된 각 언어 단위별로 긍정적/부정적 표현으로 될 확률값을 정규화하여 계산하는 단계; (g") 상기 계 산된 각 언어 단위별 확률값과 기 설정된 의견표현 기준값을 비교하여 그 결과에 따라 각 언어 단위별로 긍정/부정 의견표현으로 표시하는 단계; (h") 상기 각 언어 단위별 긍정/부정 의견표현으로 표시된 의견 문장에 대해 기계학습 알고리즘을 수행하여 특정의 의견표현모델을 생성하는 단계; 및 (i") 상기 생성된 의견표현모델을 이용하여 입력되는 웹 문서 데이터의 평가 결과를 갖는 의견 문장에 대해 언어처리를 수행한 후, 긍정/부정 의견표현을 표시 및 구분하는 단계를 포함하는 웹 문서에서의 의견 추출 및 분석 방법을 제공하는 것이다.
본 발명의 제7 측면은, 상술한 웹 문서에서의 의견 추출 및 분석 방법을 실행시키기 위한 프로그램을 기록한 기록매체를 제공하는 것이다.
이상에서 설명한 바와 같은 본 발명의 웹 문서에서의 의견 추출 및 분석 장치 및 그 방법에 따르면, 인터넷 상에 존재하는 여러 웹사이트들에 흩어져 있는 웹 문서에서 사용자 의견 정보들을 자동 추출 및 분석함으로써, 긍정/부정 의견별로 검색 및 통계를 확인할 수 있는 의견 검색 서비스를 간편하게 구현할 수 있으며, 의견 검색 사용자들은 특정 키워드에 대하여 다른 사용자들의 의견을 손쉽게 한눈에 검색 및 모니터링하는 시스템을 용이하게 구현할 수 있을 뿐 아니라 기존에 다른 사용자들의 의견을 검색하기 위해서 들였던 많은 시간을 크게 단축시킬 수 있는 이점이 있다.
또한, 본 발명에 의하면, 각 회사의 마케팅 담당자나 주식 투자자, 기업 가치 평가자 등은 방대한 인터넷 상에서 존재하는 해당 기업이나 물품에 대한 여러 사용자들의 의견을 한눈에 확인할 수 있으며, 기존에 사용자들의 의견을 알기 위해서 실시했던 설문조사나 컨설팅 회사에 들였던 비용을 대폭 줄일 수 있으면서 효과적으로 각 사용자들의 의견 추출 및 통계를 내서 활용할 수 있는 이점이 있다.
이하, 첨부 도면을 참조하여 본 발명의 실시예를 상세하게 설명한다. 그러나, 다음에 예시하는 본 발명의 실시예는 여러 가지 다른 형태로 변형될 수 있으며, 본 발명의 범위가 다음에 상술하는 실시예에 한정되는 것은 아니다. 본 발명의 실시예는 당업계에서 통상의 지식을 가진 자에게 본 발명을 보다 완전하게 설명하기 위하여 제공되어지는 것이다.
도 1은 본 발명의 일 실시예에 따른 웹 문서에서의 의견 추출 장치를 설명하기 위한 전체적인 블록 구성도이고, 도 2는 본 발명의 일 실시예에 적용된 도메인 분류모듈을 포함한 웹 문서에서의 의견 추출 장치를 설명하기 위한 개략적인 블록 구성도이며, 도 3은 도 2의 도메인 분류모듈을 구체적으로 설명하기 위한 블록 구성도이다.
도 1 내지 도 3을 참조하면, 본 발명의 일 실시예에 따른 웹 문서에서의 의견 추출 장치(100)는, 크게 문서수집모듈(110), 언어처리모듈(120), 의견학습모 듈(130) 및 의견추출모듈(140) 등을 포함하여 이루어진다.
여기서, 문서수집모듈(110)은 인터넷(Internet) 상에 존재하는 의견 문장을 포함하는 특정의 웹 문서(10a 내지 10n) 데이터를 수집하는 기능을 수행한다. 즉, 문서수집모듈(110)은 인터넷 상에 존재하는 특정한 웹사이트(Web Site)들의 HTML(Hyper Text Markup Language) 정보를 실시간으로 다운로드(Download) 받게 된다. 이때, 웹 문서(10a 내지 10n)는 후술하는 특정의 의견학습모델을 생성하기 위하여 임의로 선별된 의견 문장을 포함하는 특정의 웹 문서 데이터를 의미한다.
이러한 문서수집모듈(110)은 하기의 표 1과 같이, 의견정보 데이터(즉, 일반 문장/문서 데이터와 이에 대한 긍정/부정 평가가 매겨진 정보 데이터)를 포함하는 웹 문서 데이터들을 선별하여 수집함이 바람직하다.
이때, 상기 의견정보 데이터를 포함하는 웹 문서 데이터들만을 선별적으로 수집하기 위한 방법으로는, 의견정보 데이터를 포함하는 특정의 웹 문서 데이터를 선별하고, 후술하는 기계학습 알고리즘(예컨대, SVM, K-NN, Bayseian 등)을 사용하여 웹 문서 선별 모델을 생성한 후, 상기 생성된 웹 문서 선별 모델을 사용하여 전체 인터넷 웹 페이지에서 의견정보 데이터가 포함된 웹 문서 데이터들만을 선별적으로 수집할 수 있다.
최근 들어서 사용자들의 자신이 본 영화나 구매한 상품 및 유명인, 국가 정책 등에 대한 평가/의견 글들을 인터넷에 올리는 양이 급증하고 있다. 하기의 표 1에 나타난 데이터도 우리가 흔히 볼 수 있는 영화에 대한 평가 글들이다.
이처럼 현재의 웹(Web)에서는 (문장/문서, 긍정/부정 점수) 쌍으로 되어 있 는 가용데이터가 크게 증가하고 있다. 이러한 웹 문서 데이터의 증가는 자동적인 의견 어휘 사전 구축 및 의견 추출 시스템 개발에 있어서 큰 기여를 하게 된다.
표현 점수 의견내용
★★★★★ 10 재미있어 신고
★★★★★ 10 '똑똑한' 사람들이 살아가는 이야기 신고
★★★★★ 8 현명한 사람들의 일상 뜯어고치기! 신고
★★★★★ 9 삼촌의 매력에 흠뻑... 신고
★★★★★ 8 스마트한 사람들의 이야기가 아닌 평범한 사람들의 이야기 신고
★★★★★ 10 연기도 좋고 내용도 잼있고 가슴 훈훈해지는 사랑이야기. 삼촌 너무 매력적이야∼???? 신고
★★★★★ 10 정말 감동할만한 이야기이었어요. 신고
★★★★★ 10 별 기대 안하고 봤는데, 보는 내내 가슴 따뜻해지는 영화였습니다. 재미도 있고요 신고
★★★★ 6 훈훈하고 코믹하고.. 영화 넘 짧은거 같은데.. 근데 진짜 삼촌없음 어쩔뻔???? 신고
★★★ 5 돌고돌고돌아 결국은 뻔한 이야기. 신고
즉, 문서수집모듈(110)을 통해 수집되는 대상 데이터는 상기의 표 1에 나타난 바와 같이, 의견정보 데이터 즉, 일반 문장/문서 데이터와 이에 대한 긍정/부정 평가가 매겨진 정보 데이터들이다.
이때, 상기 긍정/부정 평가는 일정 범위내의 점수로 표현되어지거나, 별표(★)나 기타 기호들을 이용하여 다양하게 평가될 수 있다. 본 발명에서는 이렇게 다양한 방식으로 표현되는 긍정/부정 평가는 모두 동일한 점수 범위로 재 계산되어서 사용된다.
이를 구체적으로 설명하면, 본 발명의 일 실시예에서 사용하는 점수 범위가 a∼b 라고 하였을 때에 수집한 데이터의 점수범위가 c∼d 라고 한다면, 해당 수집 점수 x는 하기의 수학식 1과 같이 변화된다.
Figure 112008068209311-pat00001
예를 들어, 본 발명은 1∼10점 사이의 점수를 사용하고(10점에 가까울수록 긍정), 수집한 데이터는 1∼5점 사이의 점수를 사용하는 경우에, 수집한 데이터가 2점이라고 한다면, 하기의 수학식 2와 같이 계산되어 진다.
Figure 112008068209311-pat00002
다른 경우로, 본 발명에서는 1∼10점 사이의 점수를 사용하고, 수집한 데이터가 1∼20점 사이의 점수를 사용한다고 하면, 하기의 수학식 3과 같이 계산되어 진다.
Figure 112008068209311-pat00003
상기와 같이 수집한 데이터는 해당 데이터 문장/문서와 본 발명에서 사용하는 점수로 변환된 의견 점수 집합{(데이터, 점수), (데이터, 점수), (데이터, 점수), (데이터, 점수)}이 된다.
한편, 인터넷(Internet)은 TCP/IP 프로토콜 및 그 상위계층에 존재하는 여러 서비스, 즉 HTTP(Hyper Text Transfer Protocol), Telnet, FTP(File Transfer Protocol), DNS(Domain Name System), SMTP(Simple Mail Transfer Protocol), SNMP(Simple Network Management Protocol), NFS(Network File Service), NIS(Network Information Service) 등을 제공하는 전 세계적인 개방형 컴퓨터 네트워크 구조를 의미한다. 이러한 인터넷은 유선 또는 무선 인터넷일 수도 있고, 이외에도 유선 공중망, 무선 이동 통신망, 또는 휴대 인터넷 등과 통합된 코어망 일 수도 있다.
그리고, 언어처리모듈(120)은 문서수집모듈(110)로부터 수집된 특정의 웹 문서 데이터에 대해 문장 단위로 분리하고, 분리된 각 문장에 대해 언어처리를 수행하여 언어적인 자질(Feature)들을 추출하는 기능을 수행한다.
즉, 문서수집모듈(110)을 통해 의견으로 이루어진 데이터 집합과 사실 정보로만 이루어진 데이터 집합을 수집한다. 이후에, 언어처리모듈(120)을 통해 언어처리 예컨대, 형태소 분석(Morpheme Analyze)이나 띄어쓰기(Segmentation) 등을 수행하여 적절한 언어적인 자질(Feature)을 추출한다.
여기서, 상기 띄어쓰기(Segmentation)라 함은 입력 문장을 의미를 가지는 단위로 나누는 과정이다. 예를 들면, 입력 문장이 "나는 영화를 재밌게 봤다"라고 한다면, 결과 문장은 "나 는 영화 를 재밌 게 보 았 다"로 변환된다.
그리고, 상기 형태소 분석(Morpheme Analyze)이라 함은 상기 각 나뉘어진 단위에 대하여 어떤 품사(Part Of Speech) 정보를 지니고 있는지 찾아주는 작업이다. 예를 들면, 입력 문장이 "나는 영화를 재밌게 봤다"라고 한다면, 결과 문장은 " 나(CTP1 1인칭 대명사) + 는(fjb 보조사) 영화(CMCN 비서술 보통명사) + 를(fjco 목적격조사) 재밌(YBDO 일반동사) + 게(fmoca 보조 연결어미) 보(YBDO 일반동사) + 았(fmbtp 과거시제 선어말어미) + 다(fmofd 평서형 종결어미)"로 변환된다.
한편, 상기 언어처리는 예컨대, 형태소 분석(Morpheme Analyze) 또는 띄어쓰기(Segmentation) 처리로 수행됨이 바람직하지만, 이외에도 자질(또는 색인어) 추출을 위한 조사 처리, 한국어 굴절 처리, 또는 원형 복귀 처리 등을 수행할 수도 있다.
그리고, 의견학습모듈(130)은 언어처리모듈(120)로부터 추출된 각 문장의 언어적인 자질들에 대해 기계학습 알고리즘(예컨대, Naive Baysian, SVM, K-NN 등)을 수행하여 특정의 의견추출모델을 생성하는 기능을 수행한다.
이러한 의견학습모듈(130)은 상술한 통상의 기계학습 알고리즘을 이용하여 용이하게 구현될 수 있다. 즉, 언어처리모듈(120)로부터 추출된 언어적인 자질(Feature)을 이용하여 통상의 기계학습 알고리즘인 예컨대, Naive Baysian, SVM, K-NN 이나 기타 모델을 선택하여 학습을 수행한다. 이렇게 학습이 끝나고, 임의의 문장이나 문서가 입력이 되면, 해당 데이터가 의견 데이터인지 사실 데이터인지 구분할 수 있는 의견추출모델을 생성한다.
한편, 언어처리모듈(120)로부터 추출된 문장들은 의견이 있는 문장들도 있고, 의견이 존재하지 않은 일반 문장도 있다. 이러한 문장들은 의견학습모듈(130)을 통해 생성된 특정의 의견추출모델을 이용하여 의견이 존재하는 문장과 의견이 존재하지 않은 문장으로 구분할 수 있게 된다.
그리고, 의견추출모듈(140)은 의견학습모듈(130)로부터 생성된 의견추출모델을 이용하여 입력되는 웹 문서(20a 내지 20n) 데이터에 대해 확률적으로 의견 문장을 추출하는 기능을 수행한다. 이러한 의견추출모듈(140)은 후술하는 도메인 분류모듈(150)을 통해 분류된 각 도메인별 웹 문서 데이터들에 대해 각각 하나씩 구비되어 구현될 수도 있다. 이때, 웹 문서(20a 내지 20n)는 인터넷 상에 존재하는 모든 웹 문서 데이터를 의미한다.
추가적으로, 도 2 및 도 3에 도시된 바와 같이, 의견추출모듈(140)로부터 입력되는 웹 문서(20a 내지 20n) 데이터를 기 설정된 도메인별로 분류하여 각 의견추출모듈(140a 내지 140n)로 전달하기 위한 도메인 분류모듈(150)이 더 포함될 수 있다.
이러한 도메인 분류모듈(150)은, 기 설정된 도메인별로 해당 도메인과 관련된 웹 문서(25a 내지 25n) 데이터를 수집하는 적어도 하나의 문서수집부(151a 내지 151n)와, 각 문서수집부(151a 내지 151n)로부터 수집된 각 도메인별 웹 문서 데이터에 대해 언어처리를 수행하여 의미적으로 분리 가능한 자질들을 추출하는 적어도 하나의 언어처리부(152a 내지 152n)와, 각 언어처리부(152a 내지 152n)로부터 추출된 각 도메인별 자질들에 대해 기계학습 알고리즘을 이용하여 확률적으로 학습한 후 특정의 도메인 분류모델을 생성하는 도메인 분류학습부(153)와, 도메인 분류학습부(153)로부터 생성된 도메인 분류모델을 이용하여 입력되는 웹 문서(20a 내지 20b) 데이터에 대해 상기 기 설정된 도메인별로 확률적인 분류를 수행하는 도메인 분류부(154)를 포함함이 바람직하다. 이때, 웹 문서(25a 내지 25n)는 후술하는 특정의 도메인 분류모델을 생성하기 위하여 임의로 선별된 각 도메인별 웹 문서 데이터를 의미한다.
이를 구체적으로 설명하면, 먼저, 각 문서수집부(151a 내지 151n)를 통해 분류하기로 결정한 각 도메인별(예컨대, 영화, 책, 전자제품, 화장품, 의류, 인물, 기타 등등)로 해당 도메인과 관련된 데이터를 수집하여 도메인별로 데이터를 확보한다.
이때, 수집하는 각 도메인별 데이터는 해당 도메인에 대한 의견(Review) 데이터와 사실 데이터의 조합으로 이루어져 있다. 각 도메인별로 수집한 데이터의 의견 데이터와 사실 데이터의 비율은 모두 같거나 비슷한 비율을 유지하도록 하여, 데이터가 순수하게 도메인에 따라서 분류되도록 한다.
다음으로, 이렇게 수집한 도메인들에서는 각 도메인에서 적절한 자질(Feature)을 추출하기 위해서 각 언어처리부(152a 내지 152n)를 통해 언어처리를 수행하게 된다. 이때, 상기 언어처리는 예컨대, 형태소 분석(Morpheme Analyze)이나 띄어쓰기(Segmentation) 등을 통해서 의미적으로 분리 가능한 언어 단위로 나누게 된다.
한편, 후술하는 기계학습 알고리즘 모델에 입력되는 각 도메인의 자질(Feature)은 다음과 같다.
예를 들어, 도서관련 도메인에서 입력(Input) 데이터가 "저자는 도서 A에서 흥미진진하게 글을 구성하였다."일 경우, 상기 띄어쓰기(Segmentation)를 수행하면, "저자 는 도서 A 에서 흥미진진 하 게 글 을 구성하 였다."로 변환되고, 상기 형태소 분석을 수행하면, "저자(CTP3 3인칭 대명사) + 는(fjb 보조사) 도서(CMCN 비서술 보통명사) A(F 외국문자) 에(UM 체언 추정) + 에서(fjcao 일반 부사격조사) 흥미진진(CMCPA 동작성 서술 보통명사) + 하(fph 형용사파생접사) + 게(fmoca 보조 연결어미) 글(CMCN 비서술 보통명사) + 을(fjco 목적격조사) 구성하(CMCN 비서술 보통명사) + 이(fpd 동사파생접사) + 었(fmbtp 과거시제 선어말어미) + 다(fmofd 평서형 종결어미) + .(g 기호)"로 변환된다.
이때, 상기 띄어쓰기(Segmentation)를 수행한 데이터만 사용하는 경우, 해당 도메인의 자질은 다음과 같다.
① 유니그램(Unigram) : 저자, 는, 도서, A, 에서, 흥미진진, 하, 게, 글, 을, 구성하, 였다,.
=> a b c d e -> a, b, c, d, e
② 바이그램(Bigram) : 저자 는, 는 도서, 도서 A, A 에서, 에서 흥미진진, 흥미진진 하, 하 게, 게 글, 글 을, 을 구성하, 구성하 였다, 였다 .
=> a b c d e -> a b, b c, c d, d e
③ 트라이그램(Trigram) : 저자 는 도서, 는 도서 A, 도서 A 에서, A 에서 흥미진진, 에서 흥미진진 하, 흥미진진 하 게, 하 게 글, 게 글 을, 글 을 구성하, 을 구성하 였다,.
=> a b c d e -> a b c, b c d, c d e
한편, 상기 형태소 분석을 수행한 데이터를 사용하는 경우, 해당 도메인의 자질은 다음과 같다. 즉, 형태소 분석 결과 특별한 의미를 가지지 않는 조사나 접사, 선 어말 어미, 종결 어미 등을 제거한 후, 상기의 띄어쓰기와 같이 유니그램(Unigram), 바이그램(Bigram), 트라이그램(Trigram) 형태의 자질을 사용할 수 있다.
① 유니그램(Unigram) : 저자, 도서, A, 흥미진진, 글, 구성하
② 바이그램(Bigram) : 저자 도서, 도서 A, A 흥미진진, 흥미진진 글, 글 구성하
③ 트라이그램(Trigram) : 저자 도서 A,도서 A 흥미진진, A 흥미진진 글, 흥미진진 글 구성하
전술한 바와 같이, 유니그램(Unigram), 바이그램(Bigram), 트라이그램(Trigram) 형태의 자질을 모두 사용하거나, 일부분만 선택적으로 사용할 수 있으며, 이는 평가 데이터를 이용한 평가를 통해 가장 높은 성능을 보이는 경우의 조합을 선택하게 된다.
이후에, 각 도메인별 자질(Feature)들은 도메인 분류학습부(153)를 통해 예컨대, Naive Baysian, SVM 또는 K-NN, 기타 일반적인 기계학습 알고리즘(Machine Learning Classifier Algorithm)을 이용하여 확률적으로 학습을 하게 된다.
예를 들면, 선형 분류기(Linear Classifier)는 하기의 수학식 4와 같이 표현될 수 있다.
Figure 112008068209311-pat00004
여기서,
Figure 112008068209311-pat00005
는 입력 데이터 벡터로서 본 발명의 일 실시예에서는 선택한 유니그램(Unigram), 바이그램(Bigram), 트라이그램(Trigram) 입력 데이터들이 이에 해당된다.
Figure 112008068209311-pat00006
는 해당 각 자질(Feature)의 개수(Frequency)나, 존재 유무 등의 정보를 이용하여 벡터를 만들게 된다.
상기 벡터의 크기는 전체 자질(Feature) 수이며, 해당 문서에서 등장하지 않은 자질(Feature)은 "0" 값들 가지며, 해당 문서에서 등장한 자질(Feature)들은 그것의 개수(Frequency)나 "1" 값을 가지게 된다.
그래서,
Figure 112008068209311-pat00007
는 예컨대, [0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 1,….]과 같이 자질 벡터(Feature Vector)로 표현된다.
그리고,
Figure 112008068209311-pat00008
는 가중치 벡터(Weight Vector)로서 각 클래스(Class)별로 각 자질(Feature)에 가중치(Weight)를 부여하는 벡터(Vector)로서 매트릭스(Matrix) 크기는 자질(Feature)의 종류 수 × 클래스(class) 개수이다.
이와 같이 학습을 하게 되면
Figure 112008068209311-pat00009
의 값을 예측할 수 있게 된다.
Figure 112008068209311-pat00010
의 값을 알게 되면, 임의의
Figure 112008068209311-pat00011
가 입력되었을 때에
Figure 112008068209311-pat00012
와 매트릭스 연산을 수행하여 어느 클래스(Class)에서 가장 높은 값을 가지는지 알 수 있게 된다.
또한, 기계학습 알고리즘에는 상기와 같은 방식으로 데이터를 사용할 수 있 게 된다. 구체적으로 Naive Baysian을 예로 들어서 설명하면, 하기의 수학식 5와 같이 표현될 수 있다.
Figure 112008068209311-pat00013
여기서, 상기 C는 클래스(Class)를 의미하며 예컨대, 영화, 도서, 상품 등과 같은 도메인이 이에 해당된다. 상기 Fi는 각각의 자질(Feature)을 의미하며 예컨대, 유니그램(Unigram)(저자), 바이그램(Bigram)(저자 도서), 트라이그램(Trigram)(저자 도서 A) 등이 이에 해당된다.
그리고, 상기 P(C)는 클래스 C가 나올 확률이다. 예컨대, 영화 데이터가 5개, 도서 데이터가 12개, 상품 데이터가 8개라고 한다면, P(영화)는 "5/(5+12+8)" 확률이 된다.
그리고, 상기 P(F1,...,Fn)는 각각의 Fi가 동시에 나올 확률인데, 모든 클래스에 대해서 동일하게 적용되기 때문에 생략도 가능하다(모든 클래스에 동일하게 분모로 적용됨). 그리고, 상기 P(F1,...,Fn|C)는 클래스 C가 주어졌을 때, F1,...,Fn 가 생성될 확률이다.
상기의 수학식 5에서 실제 클래스 확률을 결정하는 분자들의 계산은 각각의 자질(Feature)들이 서로 조건적으로 독립적(Conditionally Independent)이라고 가정하고 구체적으로 하기의 수학식 6과 같이 계산한다.
Figure 112008068209311-pat00014
여기서, 상기 p(Fi|C)는 임의의 C가 주어졌을 때, 상기 Fi의 확률로서,
Figure 112008068209311-pat00015
와 같이 계산할 수 있으며, 상기 Freq(Fj|C)는 임의의 클래스 C 안에서의 자질(Feature) Fj의 개수(Frequency)를 나타낸다. 전체 자질(Feature)의 개수는 N개이다.
상기와 같이, Naive Baysian 이외에도 기타 기계학습 알고리즘에 상기 자질(Feature)들을 입력으로 받아서 임의의 입력 데이터들에 대하여 클래스 C를 결정해주는 모델을 생성 가능하게 된다.
마지막으로, 전술한 바와 같이 학습을 마치면, 하나의 도메인 분류모델이 생성되며, 도메인 분류부(154)를 통해 상기와 같이 생성된 도메인 분류모델을 이용하여 임의의 문장이나 문서가 입력으로 들어오게 되면, 해당 데이터가 어떤 도메인에 포함되는지 확률적으로 결정하게 된다.
한편, 실제로 도메인 분류모델을 사용할 때, 임의의 문장이나 문서가 입력되면, 상기의 예에서 자질(Feature)을 선택하였듯이, 해당 입력 데이터에 대해서 자질을 같은 방식으로 선택한다.
그런 다음, 해당 입력 데이터의 자질들을 도메인 분류모델에 입력하게 되면, 도메인 분류모델은 해당 자질들에 대해서 가장 높은 생성 확률을 보이는 클래스 C를 출력하게 된다.
전술한 바와 같이, 본 발명의 일 실시예에서 도메인 분류모듈(150)을 사용할 경우, 의견 추출 시 자동화된 방식으로 사전을 구축할 수 있으며, 본 발명의 일 실시예에 따른 의견 분석 장치(200)에서 의견 표현을 구분하기 위한 학습 모델도 자동적으로 생성할 수 있다.
이에 따라, 각 도메인별로 데이터를 분류하여 학습 모델을 구축하게 되면, 도메인에 최적화된 성능을 내는 의견 추출을 위한 모델을 자동적으로 생성할 수 있는 효과가 있다.
이하에는 본 발명의 일 실시예에 따른 웹 문서에서의 의견 추출 방법에 대하여 상세하게 설명하기로 한다.
도 4는 본 발명의 일 실시예에 따른 웹 문서에서의 의견 추출 방법을 설명하기 위한 전체적인 흐름도이다.
도 1 내지 도 4를 참조하면, 본 발명의 일 실시예에 따른 웹 문서에서의 의견 추출 방법은, 먼저, 문서수집모듈(110)을 통해 의견 문장을 포함한 특정의 웹 문서 데이터를 수집한 후(S100), 언어처리모듈(120)을 통해 상기 단계S100에서 수집된 특정의 웹 문서 데이터에 대해 문장 단위로 분리하고, 분리된 각 문장에 대해 언어처리(예컨대, 형태소 분석 또는 띄어쓰기 등)를 수행하여 언어적인 자 질(Feature)들을 추출한다(S110).
다음으로, 의견학습모듈(130)을 통해 상기 단계S110에서 추출된 각 문장의 언어적인 자질들에 대해 기계학습 알고리즘을 수행하여 특정의 의견추출모델을 생성한 후(S120), 의견추출모듈(140)을 통해 상기 단계S120에서 생성된 의견추출모델을 이용하여 입력되는 웹 문서(20a 내지 20n) 데이터에 대해 확률적으로 의견 문장을 추출한다(S130).
추가적으로, 상기 단계S130에서 입력되는 웹 문서(20a 내지 20n) 데이터에 대해 도메인 분류모듈(150)을 통해 기 설정된 도메인별로 확률적인 분류를 수행하는 단계를 더 포함할 수 있다.
이때, 상기 기 설정된 도메인별로 확률적인 분류를 수행하는 단계는, 상기 기 설정된 도메인별로 해당 도메인과 관련된 웹 문서 데이터를 수집하는 제1 과정과, 상기 수집된 각 도메인별 웹 문서 데이터에 대해 언어처리(예컨대, 형태소 분석 또는 띄어쓰기 등)를 수행하여 의미적으로 분리 가능한 자질들을 추출하는 제2 과정과, 상기 추출된 각 도메인별 자질들에 대해 기계학습 알고리즘을 이용하여 확률적으로 학습한 후 특정의 도메인 분류모델을 생성하는 제3 과정과, 상기 생성된 도메인 분류모델을 이용하여 입력되는 웹 문서 데이터에 대해 상기 기 설정된 도메인별로 확률적인 분류를 수행하는 제4 과정을 포함할 수 있다.
도 5는 본 발명의 일 실시예에 따른 웹 문서에서의 의견 분석 장치를 설명하기 위한 전체적인 블록 구성도이고, 도 6은 본 발명의 일 실시예에 적용된 도메인 분류모듈을 포함한 웹 문서에서의 의견 분석 장치를 설명하기 위한 개략적인 블록 구성도이다.
도 5 및 도 6을 참조하면, 본 발명의 일 실시예에 따른 웹 문서에서의 의견 분석 장치(200)는, 크게 언어처리모듈(210), 의견표현 연산모듈(220), 의견표현 표시모듈(230), 의견표현 학습모듈(240) 및 의견표현 구분모듈(250) 등을 포함하여 이루어진다.
여기서, 언어처리모듈(210)은 특정의 웹 문서(30a 내지 30n) 데이터에 존재하는 평가 결과를 갖는 의견 문장에 대해 언어처리(예컨대, 형태소 분석 또는 띄어쓰기 등)를 수행하여 의미적인 언어 단위들로 분리하는 기능을 수행한다. 이때, 웹 문서(30a 내지 30n)는 후술하는 특정의 의견표현모델을 생성하기 위하여 임의로 선별된 특정의 웹 문서 데이터를 의미한다.
이를 구체적으로 설명하면, 인터넷 상에는 영화 리뷰(Review), 상품평, 책 서평 등 각종 리뷰가 존재한다. 이러한 리뷰(Review)들은 보통 평가 문장들과 함께 평가 결과도 함께 게시되어 있다.
예를 들어,?quot;이 영화는 최고의 걸작이다."하고 10점을 주거나, "이거는 완전히 쓰레기 영화다."하고 1점을 주는 방식이다. 이러한 의견 데이터를 기반으로 하여 본 발명에서는 후술하는 의견표현 연산모듈(220)을 통해 각 의미 단위들이 가지는 긍정 점수와 부정 점수를 확률적으로 계산하여 자동적으로 별도의 의견어휘 저장모듈(260)에 저장하게 된다.
만약, 입력 문장이 「"이 영화는 정말 재밌었다" - 10점, "이번에 본거는 꽤 재밌었다" - 9점, "내 생애 최고로 재밌었던 영화" - 9점」이라고 한다면,
상기 언어처리를 수행할 경우, 「"이(SGR 지시 관형사) 영화(CMCN 비서술 보통명사) + 는(fjb 보조사) 정말(SBO 일반 부사) 재밌(YBDO 일반동사) + 었(fmbtp 과거시제 선어말어미) + 다(fmofd 평서형 종결어미)" - 10점, "이번(CMCN 비서술 보통명사) + 에(fjcao 일반 부사격조사) 본거(CMCN 비서술 보통명사) + 는(fjb 보조사) 꽤(SBO 일반 부사) 재밌(YBDO 일반동사) + 었(fmbtp 과거시제 선어말어미) + 다(fmofd 평서형 종결어미)" - 9점, "나(CTP1 1인칭 대명사) + 에(fjcao 일반 부사격조사) 생애(CMCN 비서술 보통명사) 최고(CMCN 비서술 보통명사) + 로(fjcao 일반 부사격조사) 재밌(YBDO 일반동사) + 었(fmbtp 과거시제 선어말어미) + 던(fmotgp 과거시제 관형형 전성어미) 영화(CMCN 비서술 보통명사)" - 9점」과 같이 언어 단위별로 분리된다.
의견표현 연산모듈(220)은 언어처리모듈(210)로부터 분리된 각 언어 단위별로 긍정적/부정적 표현으로 될 확률값을 정규화(Normalization)하여 계산하는 기능을 수행한다.
이를 구체적으로 예를 들어 설명하면, 입력 데이터는 아래와 같이, 긍정 정도를 나타내는 점수와 해당 점수에 속하는 문장/문서들로 이루어져 있다. 이 의견 데이터들은 상술한 바와 같이 일반 웹에서 사용자가 긍정/부정 점수와 의견을 같이 올리는 리뷰 사이트들을 통해서 수집하게 된다.
「① 1점 - ["A를 봤는데 지루했다", "B는 최악이다",…],
② 2점 - ["C를 봤는데 실망이었다", "D는 졸작이다",…],
③ 9점 - ["E를 봤는데 흥미진진 했다", "F는 수작이다",…],
④ 10점 - ["G는 최고의 영화이다", "H는 세계 최고의 영화이다",…].」
이러한 데이터들은 전술한 바와 같이, 띄어쓰기(Segmentation)와 언어별로 형태소 분석(Morpheme Analyze)을 수행하게 된다(다른 언어에서도 동일하게 적용 가능하다). 그러면, 아래와 같이 의견 데이터가 변환된다.
「① A(F 외국문자) + 를(fjco 목적격조사) + 보(YBDO 일반동사) + 았(fmbtp 과거시제 선어말어미) + 는데(fmocs 종속 연결어미) + 지루(CMCPA 동작성 서술 보통명사) + 하(fph 형용사파생접사) + 였(fmbtp 과거시제 선어말어미) + 다(fmofd 평서형 종결어미), B(F 외국문자) + 는(fjb 보조사) + 최악(CMCPS 상태성 서술 보통명사) + 이(fpd 동사파생접사) + 다(fmofd 평서형 종결어미),
② C(F 외국문자) + 를(fjco 목적격조사) + 보(YBDO 일반동사) + 았(fmbtp 과거시제 선어말어미) + 는데(fmocs 종속 연결어미) + 실망(CMCPA 동작성 서술 보통명사) + 이(fpd 동사파생접사) + 었(fmbtp 과거시제 선어말어미) + 다(fmofd 평서형 종결어미), D(F 외국문자) + 는(fjb 보조사) + 졸작(CMCN 비서술 보통명사) + 이(fpd 동사파생접사) + 다(fmofd 평서형 종결어미),
③ E(F 외국문자) + 를(fjco 목적격조사) + 보(YBDO 일반동사) + 았(fmbtp 과거시제 선어말어미) + 는데(fmocs 종속 연결어미) + 흥미진진(CMCN 비서술 보통명사) + 하(YBDO 일반동사) + 였(fmbtp 과거시제 선어말어미) + 다(fmofd 평서형 종결어미), F(F 외국문자) + 는(fjb 보조사) + 수작(CMCPA 동작성 서술 보통명사) + 이(fpd 동사파생접사) + 다(fmofd 평서형 종결어미),
④ G(F 외국문자) + 는(fjb 보조사) + 최고(CMCN 비서술 보통명사) + 의(fjcg 관형격조사) + 영화(CMCN 비서술 보통명사) + 이(fpd 동사파생접사) + 다(fmofd 평서형 종결어미), H(F 외국문자) + 는(fjb 보조사) + 세계(CMCN 비서술 보통명사) + 최고(CMCN 비서술 보통명사) + 의(fjcg 관형격조사) + 영화(CMCN 비서술 보통명사) + 이(fpd 동사파생접사) + 다(fmofd 평서형 종결어미)」
다음으로, 의견표현 연산모듈(220)을 통해 이렇게 언어처리가 수행된 의견 데이터를 이용하여, 각 언어 단위가 가지는 긍정/부정 수치를 얻어내는 것이다.
예를 들어, "최고(CMCN 비서술 보통명사)"가 얼마 정도의 긍정/부정을 나타내는지 "최고(CMCN 비서술 보통명사)"라는 단어가 각 점수대별(1∼10)에 어떻게 분포하는지를 확률적으로 하기의 수학식 7과 같은 수식을 거쳐서 계산하게 된다.
아래에서 나타내는 wj는 "최고(CMCN 비서술 보통명사)"이며, 이와 같이 단어와 태그정보(POS - Part Of Speech)의 조합을 나타내거나, "최고" 태그정보를 제외한 하나의 단어를 나타낼 수 있다.
즉, 모든 1∼10점의 점수대에 모두 같은 개수의 데이터가 존재한다면 하기의 수학식 7과 같이 구할 수 있게 된다.
Figure 112008068209311-pat00016
여기서, 상기 S는 모든 점수 집합을 의미한다. 예를 들어, 영화 평가문이 1 ∼10점이 있다면, 1∼10점으로 점수가 매겨진 문장 집합을 의미한다. 상기 Score(si)는 해당 점수 집합의 실제 점수를 의미한다. 즉, 10점 점수 집합의 Score(si)는 10이 된다.
그리고, 상기 Score(wi)는 wi의 긍정/부정 점수를 나타낸다. 상기 Freq(wj,si)는 단어 wj가 점수 집합 si에서 나타나는 횟수를 나타낸다.
Figure 112008068209311-pat00017
는 결국 모든 점수 집합에서 단어 wj가 나타난 횟수를 더한 값으로서, 결국 전체 데이터에서 wj가 나타난 횟수를 의미한다.
상기의 수학식 7과 같은 간단한 평균으로 구할 수 있으며, 예를 들어, "재밌"이란 10점 문장 2개, 9점 문장 2개만이 존재한다고 가정하면, 하기의 수학식 8과 같이 구할 수 있다.
Figure 112008068209311-pat00018
여기서, 의미 단위는 "재밌"을 형태소인 "YBDO"와 함께 묶어서 하나의 의미 단위로 구성할 수도 있으며, "재밌"이라는 단어 하나만을 가지고 의미 단위로 구성할 수도 있다.
한편, 현실 상황에서는 모든 점수대에서 같은 개수의 문장이 존재하는 경우는 드물다. 이런 환경에서 상기와 같은 단순히 평균을 적용하게 된다면, 10점대의 데이터가 10만개, 1점대의 데이터가 1만개가 있는 환경에서 "영화"와 같이 모든 점수대에서 자주 등장하는 단어는 단순히 평균이 되어 버리기 때문에, 10점대의 데이터가 많다는 이유 하나만으로 10점에 가까운 상당히 긍정적인 단어로 판단되는 문제점이 존재한다.
예를 들어, "영화"라는 키워드가 10만개 10점대 문장에서 5만번 등장하고, 1만개 1점대 문장에서 5000번 등장했다고 가정하면, 하기의 수학식 9와 같이 계산되어 진다.
Figure 112008068209311-pat00019
상기와 같이 "영화"라는 키워드는 10점대와, 1점대에서 등장하는 비율이 똑같아서, 상식적으로 보면 5점대에 가까워야 맞지만, 각 점수대의 데이터 개수가 다르면 상기와 같은 문제가 발생한다. 그래서, 각 점수대의 데이터의 개수를 고려하여 하기의 수학식 10이 필요하다.
Figure 112008068209311-pat00020
여기서, 상기 P(wj|si)는 wj가 si 점수 집합에서 나타날 확률 값이다. 그래서, 상기 wj의 si에서의 빈도수를 si 안의 전체 단어 수
Figure 112008068209311-pat00021
로 나눈 것이다.
상기의 수학식 10으로 위에서 예제로 든 문제상황 "영화"라는 키워드가 10만개 10점 문서에서 50000번 나타나고, 1만개 1점 문서에서 5000번 나타나는 상황을 다시 계산해 보면 하기의 수학식 11과 같이 나타낼 수 있다.
Figure 112008068209311-pat00022
전술한 바와 같이, 단어가 각 점수대에서 나타나는 확률값을 이용하여 정규화(Normalization)를 수행하여 점수대의 크기에 따라 점수가 치우치는(Biased) 문제를 해결하게 된다.
다음으로, 상기와 같이 각 의미 단위들의 긍정적/부정적인 점수를 계산하여 별도의 의견어휘 저장모듈(260)에 저장하게 된다.
그리고, 의견표현 표시모듈(230)은 의견표현 연산모듈(220)로부터 계산되거나 의견어휘 저장모듈(260)에 저장된 각 언어 단위별 확률값과 기 설정된 의견표현 기준값을 비교하여, 각 언어 단위별 확률값이 상기 기 설정된 의견표현 기준값보다 클 경우 긍정 의견표현으로 표시하고, 각 언어 단위별 확률값이 상기 기 설정된 의견표현 기준값보다 작을 경우 부정 의견표현으로 표시(Marking)하는 기능을 수행한다.
이를 구체적으로 예를 들어 설명하면, 입력 문장이 「① 이(SGR 지시 관형사) 영화(CMCN 비서술 보통명사) + 는(fjb 보조사) 정말(SBO 일반 부사) 재밌(YBDO 일반동사) + 었(fmbtp 과거시제 선어말어미) + 다(fmofd 평서형 종결어미) - 10점,
② 이번(CMCN 비서술 보통명사) + 에(fjcao 일반 부사격조사) 본거(CMCN 비서술 보통명사) + 는(fjb 보조사) 꽤(SBO 일반 부사) 재밌(YBDO 일반동사) + 었(fmbtp 과거시제 선어말어미) + 다(fmofd 평서형 종결어미) - 9점,
③ 나(CTP1 1인칭 대명사) + 에(fjcao 일반 부사격조사) 생애(CMCN 비서술 보통명사) 최고(CMCN 비서술 보통명사) + 로(fjcao 일반 부사격조사) 재밌(YBDO 일 반동사) + 었(fmbtp 과거시제 선어말어미) + 던(fmotgp 과거시제 관형형 전성어미) 영화(CMCN 비서술 보통명사) - 9 점,
④ 이(SGR 지시 관형사) 영화(CMCN 비서술 보통명사) + 는(fjb 보조사) 재밌(YBDO 일반동사) + 지(fmoca 보조 연결어미) 않(YA 보조용언) + 았(fmbtp 과거시제 선어말어미) + 다(fmofd 평서형 종결어미) + .(g 기호) - 1점」이라고 한다면,
상기 긍정/부정 의견표현으로 표시된 문장은 다음과 같다.
「① 이(SGR 지시 관형사)/NEUTRAL 영화(CMCN 비서술 보통명사) /NEUTRAL + 는(fjb 보조사) /NEUTRAL 정말(SBO 일반 부사) /NEUTRAL 재밌(YBDO 일반동사)/POSITIVE + 었(fmbtp 과거시제 선어말어미) /NEUTRAL + 다(fmofd 평서형 종결어미) /NEUTRAL - 10점,
② 이번(CMCN 비서술 보통명사) /NEUTRAL + 에(fjcao 일반 부사격조사) /NEUTRAL 본거(CMCN 비서술 보통명사) /NEUTRAL + 는(fjb 보조사) /NEUTRAL 꽤(SBO 일반 부사) /NEUTRAL 재밌(YBDO 일반동사) /POSITIVE + 었(fmbtp 과거시제 선어말어미) /NEUTRAL + 다(fmofd 평서형 종결어미) /NEUTRAL - 9점,
③ 나(CTP1 1인칭 대명사) /NEUTRAL + 에(fjcao 일반 부사격조사) /NEUTRAL 생애(CMCN 비서술 보통명사) /NEUTRAL 최고(CMCN 비서술 보통명사) /POSITIVE + 로(fjcao 일반 부사격조사) /NEUTRAL 재밌(YBDO 일반동사) /POSITIVE + 었(fmbtp 과거시제 선어말어미) /NEUTRAL + 던(fmotgp 과거시제 관형형 전성어미) /NEUTRAL 영화(CMCN 비서술 보통명사) /NEUTRAL - 9 점,
④ 이(SGR 지시 관형사) /NEUTRAL 영화(CMCN 비서술 보통명사) /NEUTRAL + 는(fjb 보조사) /NEUTRAL 재밌(YBDO 일반동사)/POSITIVE + 지(fmoca 보조 연결어미) /NEUTRAL 않(YA 보조용언) /NEGATIVE + 았(fmbtp 과거시제 선어말어미) /NEUTRAL + 다(fmofd 평서형 종결어미) /NEUTRAL + .(g 기호) /NEUTRAL」
또한, 의견어휘 저장모듈(260)에 저장되어 있는 어휘들 중에서 1∼10점 사이의 점수 중 특정 점수 이상의 어휘는 긍정, 특정 점수 이하의 어휘는 부정 어휘들로 간주한다.
그리고, 상기의 예제에서는 "재밌(YBDO 일반동사)"이 긍정 어휘, "않(YA 보조용언)"이 부정 어휘로 간주된 경우에 있어서 표시된 모습이다.
여기서, ④번 같은 경우 긍정/부정 어휘가 혼재되어 있으며, 전체적으로 긍정으로 표시해야 할지, 부정으로 표시해야 할지 판단하기 어려운 경우이다. 이러한 경우가 다음 단계에서 많기 때문에, 의견표현모델을 이용하여 의견표현 구분모듈(250)을 구현하게 된다. 즉, 의견표현 구분모듈(250)은 상기와 같이 문장이 입력되면 구체적으로 의견인 부분을 찾아서 표시(Marking)해주는 역할을 수행한다.
한편, 의견어휘로 표시를 하는 부분에서는 해당 어휘가 긍정인지 부정인지에 따라서 상기와 같이 바로 표시하는 방법도 존재하며, 동시에 해당 문장이 긍정적인 문장인지 부정적인 문장인지 정보를 이용하여 긍정/부정 어휘를 표시하는 방법도 가능하다.
예를 들어, ④번 문장이 1점 문장 집합에 속한다고 하면, ④번 문장은 부정 문장임이 확실하고, 이런 부정 문장이라는 정보를 이용하여 ④번 문장 내에서의 긍 정/부정 어휘를 모두 부정 어휘로 표시하게 된다. 즉, ④번 문장은 다음과 같이 표시하게 된다.
④ 이(SGR 지시 관형사) /NEUTRAL 영화(CMCN 비서술 보통명사) /NEUTRAL + 는(fjb 보조사) /NEUTRAL 재밌(YBDO 일반동사)/NEGATIVE + 지(fmoca 보조 연결어미) /NEUTRAL 않(YA 보조용언) /NEGATIVE + 았(fmbtp 과거시제 선어말어미) /NEUTRAL + 다(fmofd 평서형 종결어미) /NEUTRAL + .(g 기호) /NEUTRAL
그리고, 의견표현 학습모듈(240)은 의견표현 표시모듈(230)로부터 각 언어 단위별 긍정/부정 의견표현으로 표시된 의견 문장에 대해 기계학습 알고리즘을 수행하여 특정의 의견표현모델을 생성하는 기능을 수행한다.
의견표현 구분모듈(250)은 의견표현 학습모듈(240)로부터 생성된 의견표현모델을 이용하여 입력되는 웹 문서(40a 내지 40n) 데이터의 평가 결과를 갖는 의견 문장에 대해 언어처리(예컨대, 형태소 분석 또는 띄어쓰기 등)를 수행한 후, 긍정/부정 의견표현을 표시 및 구분하는 기능을 수행한다. 이때, 웹 문서(40a 내지 40n)는 인터넷 상에 존재하는 모든 웹 문서 데이터를 의미한다.
이를 구체적으로 예를 들어 설명하면, 의견표현 표시모듈(230)로부터 긍정/부정 의견표현이 표시된 문장들을 이용하여 의견표현 구분모듈(250)을 구현하기 위하여 학습하게 된다. 이때, 학습하는 데에 이용되는 모델은 예컨대, Hidden Markov Model(HMM), Maximum Entropy Model(ME), Conditional Random Field, Struct Support Vector Machine 이나 기타 기계학습(Machine Learning) 알고리즘들이다.
이러한 기계학습 알고리즘 모델들에서 공통적으로 입력되는 데이터는 (x1, y1),...,(xn, yn)로서, 상기 x는 의미 단위로서 "재밌(YBDO 일반동사)"이나 "재밌", "YBDO 일반동사" 등이 가능하며, 상기 y는 해당 의미 단위가 가질 수 있는 레벨(Label)로서, 상기에서 예로 든 "Positive", "Negative" 및 "Neutral" 등이 가능하며, "Strength"와 같이 긍정/부정을 판단하는데 도움을 주는 다른 레벨(Label)도 추가할 수 있다.
즉, 본 발명에서 원하는 의견표현모델은 결국 입력 데이터 시퀀스(Sequence) x들에 대하여 붙게 되는 레벨(Label) y를 예측하는 모델이다. 상기의 데이터 (x1, y1),...,(xn, yn)가 입력으로 주어지게 되면, 상기에 언급한 기계학습 알고리즘 모델들은 특정 위치의 xi에 대하여 xi의 앞뒤 (xi-1, yi-1), (xi+1, yi+1), 그 앞뒤의 앞뒤인 (xi-2, yi-2), (xi+2, yi+2), 이처럼 계속적으로 확장한 주변 데이터, 그 외에 해당 위치에 존재하는 다른 자질(Feature-Part Of Speech, Capital Letter, Emoticon etc.) 정보도 또한 같이 사용하여 특정한 조건하에서 xi의 yi가 어떤 레벨(Label)이 되는지 예측하게 된다.
전술한 바와 같이 기계학습 알고리즘 모델이 학습하게 되면, 특정의 의견표현모델이 생성된다. 그리고, 의견표현 구분모듈(250)은 상기 생성된 의견표현모델을 이용하여 임의의 데이터 시퀀스(Sequence) xi가 들어오게 되면, 해당 데이터 시 퀀스(Sequence)에 대해서 어떤 레벨 시퀀스(Label Sequence) yi가 생성되는지 예측하게 된다.
만약, 임의의 문장이 입력되면, 아래와 같이 띄어쓰기(Segmentation) 또는 형태소 분석(Morpheme Analyze) 등과 같은 언어처리를 선택적으로 수행하게 되고, 이러한 데이터가 의견표현 구분모듈(250)에 입력되면 다음과 같이 표현할 수 있다.
예를 들면, 입력 문장이 "④ 이(SGR 지시 관형사) 영화(CMCN 비서술 보통명사) + 는(fjb 보조사) 재밌(YBDO 일반동사) + 지(fmoca 보조 연결어미) 않(YA 보조용언) + 았(fmbtp 과거시제 선어말어미) + 다(fmofd 평서형 종결어미) + .(g 기호) - 1 점"이라고 한다면,
긍정/부정 의견표현이 구분된 문장은 "④ 이(SGR 지시 관형사) /NEUTRAL 영화(CMCN 비서술 보통명사) /NEUTRAL + 는(fjb 보조사) /NEUTRAL 재밌(YBDO 일반동사)/NEGATIVE + 지(fmoca 보조 연결어미) /NEGATIVE 않(YA 보조용언) /NEGATIVE + 았(fmbtp 과거시제 선어말어미) /NEUTRAL + 다(fmofd 평서형 종결어미) /NEUTRAL + .(g 기호) /NEUTRAL"으로 표현된다.
이때, 이 문장에서 연속으로 같은 극성(Polarity)의 의견어휘가 나오면 하나의 의견표현으로 간주하고, "POSITVE", "NEGATIVE" 표현 위주로 표시를 하게 되면 "NEUTRAL"은 제거한다.
즉, "④ 이(SGR 지시 관형사) 영화(CMCN 비서술 보통명사) 는(fjb 보조사) <NEGATIVE>재밌(YBDO 일반동사) + 지(fmoca 보조 연결어미) 않(YA 보조용 언)</NEGATIVE> + 았(fmbtp 과거시제 선어말어미) + 다(fmofd 평서형 종결어미) + .(g 기호)"와 같이 표현된다.
여기서, <NEGATIVE> 은 표현의 시작이고, </NEGATIVE> 은 표현의 끝을 나타낸다.
한편, 전술한 바와 같이 구성된 의견표현 구분모듈(250)은 본 발명의 일 실시예에 따른 웹 문서에서의 의견 추출 장치(100)의 의견추출모듈(140)로부터 추출된 의견 문장의 언어적인 자질(Feature)들에 대해 긍정/부정 의견표현으로 구분하는 것도 가능하다.
즉, 의견표현 구분모듈(250)은 의견추출모듈(140)로부터 추출된 의견 문장 중에서 긍정적/부정적 의견인 부분을 찾아서 그 부분을 표시해준다. 한편, 전술한 바와 같이 의견추출모듈(140)을 사용하지 않고 바로 의견표현 구분모듈(250)을 사용하여 입력된 의견 문장에서 긍정적/부정적 표현 부분을 표시해 줄 수도 있다.
이러한 의견표현 구분모듈(250)은 연어뿐만 아니라 일반적인 자립어, 어절 등 모든 단어들의 긍정/부정 정도를 수량화하여 하나의 자원으로 활용하고, 문장 내에서 긍정/부정 표현을 찾아내기 위한 기계학습 모델을 생성하는데 사용될 수 있다.
추가적으로, 의견표현 연산모듈(220)로부터 계산된 각 언어 단위별 확률값을 데이터베이스(DB)화하여 저장하기 위한 의견어휘 저장모듈(260)이 더 포함될 수 있다.
더욱이, 도 6에 도시된 바와 같이, 의견표현 구분모듈(250)로부터 입력되는 웹 문서(40a 내지 40n) 데이터를 기 설정된 도메인별로 분류하여 각 의견표현 구분모듈(250a 내지 250n)로 전달하기 위한 도메인 분류모듈(150)이 더 포함될 수 있다.
한편, 도메인 분류모듈(150)을 이용하여 의견표현모델을 생성할 경우, 도메인 분류모듈(150)로 입력되는 긍정/부정 부분이 표시된 의견 데이터를 분류한 후에 각 도메인별로 대응되도록 적어도 하나의 의견표현 구분모듈(250)을 구현하는 방식도 가능하다.
또한, 도메인 분류모듈(150)은 의견표현 연산모듈(220)의 전단에 구비될 경우, 의견표현 연산모듈(220)은 도메인 분류모듈(150)을 통해 분류된 각 도메인별 웹 문서 데이터들에 대해 각각 하나씩 구비되어 구현됨이 바람직하다.
이하에는 본 발명의 일 실시예에 따른 웹 문서에서의 의견 분석 방법에 대하여 상세하게 설명하기로 한다.
도 7은 본 발명의 일 실시예에 따른 웹 문서에서의 의견 분석 방법을 설명하기 위한 전체적인 흐름도이다.
도 5 내지 도 7을 참조하면, 본 발명의 일 실시예에 따른 웹 문서에서의 의견 분석 방법은, 먼저, 언어처리모듈(210)을 통해 특정의 웹 문서(30a 내지 30n) 데이터에 존재하는 평가 결과를 갖는 의견 문장에 대해 언어처리(예컨대, 형태소 분석 또는 띄어쓰기 등)를 수행하여 의미적인 언어 단위들로 분리한 후(S200), 의견표현 연산모듈을 통해 상기 단계S200에서 분리된 각 언어 단위별로 긍정적/부정 적 표현으로 될 확률값을 정규화하여 계산한다(S210).
다음으로, 의견표현 표시모듈(230)을 통해 상기 단계S210에서 계산된 각 언어 단위별 확률값과 기 설정된 의견표현 기준값을 비교하여 그 결과에 따라 각 언어 단위별로 긍정/부정 의견표현으로 표시한 후(S220), 의견표현 학습모듈(240)을 통해 상기 단계S220에서 각 언어 단위별 긍정/부정 의견표현으로 표시된 의견 문장에 대해 기계학습 알고리즘을 수행하여 특정의 의견표현모델을 생성한다(S230).
마지막으로, 의견표현 구분모듈(250)을 통해 상기 단계S230에서 생성된 의견표현모델을 이용하여 입력되는 웹 문서(40a 내지 40d) 데이터의 평가 결과를 갖는 의견 문장에 대해 언어처리(예컨대, 형태소 분석 또는 띄어쓰기 등)를 수행한 후, 긍정/부정 의견표현을 표시 및 구분한다(S240).
추가적으로, 상기 단계S210에서 계산된 각 언어 단위별 확률값을 데이터베이스(DB)화하여 별도의 의견어휘 저장모듈(260)에 저장하는 단계를 더 포함할 수 있다.
한편, 본 발명의 일 실시예에 따른 웹 문서에서의 의견 추출 및 분석 방법은 또한 컴퓨터로 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현되는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다.
예컨대, 컴퓨터가 읽을 수 있는 기록매체로는 롬(ROM), 램(RAM), 시디-롬(CD-ROM), 자기 테이프, 하드디스크, 플로피디스크, 이동식 저장장치, 비휘발성 메모리(Flash Memory), 광 데이터 저장장치 등이 있으며, 또한 캐리어 웨이브(예를 들면, 인터넷을 통한 전송)의 형태로 구현되는 것도 포함된다.
또한, 컴퓨터로 읽을 수 있는 기록매체는 컴퓨터 통신망으로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 읽을 수 있는 코드로서 저장되고 실행될 수 있다.
전술한 본 발명에 따른 웹 문서에서의 의견 추출 및 분석 장치 및 그 방법에 대한 바람직한 실시예에 대하여 설명하였지만, 본 발명은 이에 한정되는 것이 아니고 특허청구범위와 발명의 상세한 설명 및 첨부한 도면의 범위 안에서 여러 가지로 변형하여 실시하는 것이 가능하고 이 또한 본 발명에 속한다.
예를 들면, 본 발명의 일 실시예에서는 한국어를 기반으로 웹 문서에서의 의견 추출 및 분석 장치 및 그 방법을 구현하였지만, 이에 국한하지 않으며, 예컨대, 영어, 일본어, 중국어 등 다양한 언어를 적용하여 구현할 수도 있다.
도 1은 본 발명의 일 실시예에 따른 웹 문서에서의 의견 추출 장치를 설명하기 위한 전체적인 블록 구성도이다.
도 2는 본 발명의 일 실시예에 적용된 도메인 분류모듈을 포함한 웹 문서에서의 의견 추출 장치를 설명하기 위한 개략적인 블록 구성도이다.
도 3은 도 2의 도메인 분류모듈을 구체적으로 설명하기 위한 블록 구성도이다.
도 4는 본 발명의 일 실시예에 따른 웹 문서에서의 의견 추출 방법을 설명하기 위한 전체적인 흐름도이다.
도 5는 본 발명의 일 실시예에 따른 웹 문서에서의 의견 분석 장치를 설명하기 위한 전체적인 블록 구성도이다.
도 6은 본 발명의 일 실시예에 적용된 도메인 분류모듈을 포함한 웹 문서에서의 의견 분석 장치를 설명하기 위한 개략적인 블록 구성도이다.
도 7은 본 발명의 일 실시예에 따른 웹 문서에서의 의견 분석 방법을 설명하기 위한 전체적인 흐름도이다.

Claims (24)

  1. 의견 문장을 포함한 특정의 웹 문서 데이터를 수집하는 문서수집모듈;
    상기 문서수집모듈로부터 수집된 특정의 웹 문서 데이터에 대해 문장 단위로 분리하고, 분리된 각 문장에 대해 언어처리를 수행하여 언어적인 자질들을 추출하는 언어처리모듈;
    상기 언어처리모듈로부터 추출된 각 문장의 언어적인 자질들에 대해 기계학습 알고리즘을 수행하여 특정의 의견추출모델을 생성하는 의견학습모듈; 및
    상기 의견학습모듈로부터 생성된 의견추출모델을 이용하여 입력되는 웹 문서 데이터에 대해 확률적으로 의견 문장을 추출하는 적어도 하나의 의견추출모듈을 포함하는 웹 문서에서의 의견 추출 장치.
  2. 제1 항에 있어서,
    상기 의견추출모듈로부터 입력되는 웹 문서 데이터를 기 설정된 도메인별로 분류하여 각 의견추출모듈로 전달하기 위한 도메인 분류모듈이 더 포함되는 것을 특징으로 하는 웹 문서에서의 의견 추출 장치.
  3. 제2 항에 있어서,
    상기 도메인 분류모듈은,
    기 설정된 도메인별로 해당 도메인과 관련된 웹 문서 데이터를 수집하는 적어도 하나의 문서수집부;
    상기 수집된 각 도메인별 웹 문서 데이터에 대해 언어처리를 수행하여 의미적으로 분리 가능한 자질들을 추출하는 적어도 하나의 언어처리부;
    상기 추출된 각 도메인별 자질들에 대해 기계학습 알고리즘을 이용하여 확률적으로 학습한 후 특정의 도메인 분류모델을 생성하는 도메인 분류학습부; 및
    상기 생성된 도메인 분류모델을 이용하여 입력되는 웹 문서 데이터에 대해 상기 기 설정된 도메인별로 확률적인 분류를 수행하는 도메인 분류부를 포함하는 것을 특징으로 하는 웹 문서에서의 의견 추출 장치.
  4. 제3 항에 있어서,
    각 문서수집부에서 수집하는 각 도메인별 웹 문서 데이터는 해당 도메인에 대한 의견 데이터와 사실 데이터의 조합으로 이루어진 것을 특징으로 하는 웹 문서에서의 의견 추출 장치.
  5. 제4 항에 있어서,
    상기 의견 데이터와 사실 데이터의 비율은 동일하게 유지되도록 하는 것을 특징으로 하는 웹 문서에서의 의견 추출 장치.
  6. 제3 항에 있어서,
    상기 언어처리는 형태소 분석 또는 띄어쓰기 처리로 이루어진 것을 특징으로 하는 웹 문서에서의 의견 추출 장치.
  7. 제6 항에 있어서,
    상기 띄어쓰기를 수행한 데이터를 사용할 경우, 상기 언어처리부는 유니그램(Unigram), 바이그램(Bigram) 또는 트라이그램(Trigram) 중 적어도 어느 하나의 형태의 자질을 추출하며,
    상기 형태소 분석을 수행한 데이터를 사용할 경우, 상기 언어처리부는 형태소 분석 결과 특별한 의미를 가지지 않는 조사, 접사, 선 어말 어미 또는 종결 어미 중 적어도 어느 하나를 제거한 후, 유니그램(Unigram), 바이그램(Bigram) 또는 트라이그램(Trigram) 중 적어도 어느 하나의 형태의 자질을 추출하는 것을 특징으로 하는 웹 문서에서의 의견 추출 장치.
  8. 특정의 웹 문서 데이터에 존재하는 평가 결과를 갖는 의견 문장에 대해 언어 처리를 수행하여 의미적인 언어 단위들로 분리하는 언어처리모듈;
    상기 분리된 각 언어 단위별로 긍정적/부정적 표현으로 될 확률값을 정규화하여 계산하는 의견표현 연산모듈;
    상기 계산된 각 언어 단위별 확률값과 기 설정된 의견표현 기준값을 비교하여 그 결과에 따라 각 언어 단위별로 긍정/부정 의견표현으로 표시하는 의견표현 표시모듈;
    상기 각 언어 단위별 긍정/부정 의견표현으로 표시된 의견 문장에 대해 기계학습 알고리즘을 수행하여 특정의 의견표현모델을 생성하는 의견표현 학습모듈; 및
    상기 생성된 의견표현모델을 이용하여 입력되는 웹 문서 데이터의 평가 결과를 갖는 의견 문장에 대해 언어처리를 수행한 후, 긍정/부정 의견표현을 표시 및 구분하는 적어도 하나의 의견표현 구분모듈을 포함하는 웹 문서에서의 의견 분석 장치.
  9. 제8 항에 있어서,
    상기 의견표현 연산모듈로부터 계산된 각 언어 단위별 확률값을 데이터베이스(DB)화하여 저장하기 위한 의견어휘 저장모듈이 더 포함되는 것을 특징으로 하는 웹 문서에서의 의견 분석 장치.
  10. 평가 결과를 갖는 의견 문장을 포함한 특정의 웹 문서 데이터를 수집하는 문서수집모듈;
    상기 수집된 웹 문서 데이터에 대해 문장 단위로 분리하고, 분리된 각 문장에 대해 언어처리를 수행하여 언어적인 자질들을 추출하는 제1 언어처리모듈;
    상기 추출된 각 문장의 언어적인 자질들에 대해 기계학습 알고리즘을 수행하여 특정의 의견추출모델을 생성하는 의견학습모듈;
    상기 생성된 의견추출모델을 이용하여 입력되는 웹 문서 데이터에 대해 확률적으로 의견 문장을 추출하는 적어도 하나의 의견추출모듈;
    상기 추출된 평가 결과를 갖는 의견 문장에 대해 언어처리를 수행하여 의미적인 언어 단위들로 분리하는 제2 언어처리모듈;
    상기 분리된 각 언어 단위별로 긍정적/부정적 표현으로 될 확률값을 정규화하여 계산하는 의견표현 연산모듈;
    상기 계산된 각 언어 단위별 확률값과 기 설정된 의견표현 기준값을 비교하여 그 결과에 따라 각 언어 단위별로 긍정/부정 의견표현으로 표시하는 의견표현 표시모듈;
    상기 각 언어 단위별 긍정/부정 의견표현으로 표시된 의견 문장에 대해 기계학습 알고리즘을 수행하여 특정의 의견표현모델을 생성하는 의견표현 학습모듈; 및
    상기 생성된 의견표현모델을 이용하여 입력되는 웹 문서 데이터의 평가 결과를 갖는 의견 문장에 대해 언어처리를 수행한 후, 긍정/부정 의견표현을 표시 및 구분하는 적어도 하나의 의견표현 구분모듈을 포함하는 웹 문서에서의 의견 추출 및 분석 장치.
  11. 제10 항에 있어서,
    상기 의견추출모듈로부터 입력되는 웹 문서 데이터를 기 설정된 도메인별로 분류하여 각 의견추출모듈로 전달하기 위한 도메인 분류모듈이 더 포함되는 것을 특징으로 하는 웹 문서에서의 의견 추출 및 분석 장치.
  12. 제11 항에 있어서,
    상기 도메인 분류모듈은,
    기 설정된 도메인별로 해당 도메인과 관련된 웹 문서 데이터를 수집하는 적어도 하나의 문서수집부;
    상기 수집된 각 도메인별 웹 문서 데이터에 대해 언어처리를 수행하여 의미적으로 분리 가능한 자질들을 추출하는 적어도 하나의 언어처리부;
    상기 추출된 각 도메인별 자질들에 대해 기계학습 알고리즘을 이용하여 확률적으로 학습한 후 특정의 도메인 분류모델을 생성하는 도메인 분류학습부; 및
    상기 생성된 도메인 분류모델을 이용하여 입력되는 웹 문서 데이터에 대해 상기 기 설정된 도메인별로 확률적인 분류를 수행하는 도메인 분류부를 포함하는 것을 특징으로 하는 웹 문서에서의 의견 추출 및 분석 장치.
  13. 제12 항에 있어서,
    상기 각 문서수집부에서 수집하는 각 도메인별 웹 문서 데이터는 해당 도메인에 대한 의견 데이터와 사실 데이터의 조합으로 이루어진 것을 특징으로 하는 웹 문서에서의 의견 추출 및 분석 장치.
  14. 제13 항에 있어서,
    상기 의견 데이터와 사실 데이터의 비율은 동일하게 유지되도록 하는 것을 특징으로 하는 웹 문서에서의 의견 추출 및 분석 장치.
  15. 제12 항에 있어서,
    상기 언어처리는 형태소 분석 또는 띄어쓰기 처리로 이루어진 것을 특징으로 하는 웹 문서에서의 의견 추출 및 분석 장치.
  16. 제15 항에 있어서,
    상기 띄어쓰기를 수행한 데이터를 사용할 경우, 상기 언어처리부는 유니그 램(Unigram), 바이그램(Bigram) 또는 트라이그램(Trigram) 중 적어도 어느 하나의 형태의 자질을 추출하며,
    상기 형태소 분석을 수행한 데이터를 사용할 경우, 상기 언어처리부는 형태소 분석 결과 특별한 의미를 가지지 않는 조사, 접사, 선 어말 어미 또는 종결 어미 중 적어도 어느 하나를 제거한 후, 유니그램(Unigram), 바이그램(Bigram) 또는 트라이그램(Trigram) 중 적어도 어느 하나의 형태의 자질을 추출하는 것을 특징으로 하는 웹 문서에서의 의견 추출 및 분석 장치.
  17. (a) 의견 문장을 포함한 특정의 웹 문서 데이터를 수집하는 단계;
    (b) 상기 수집된 특정의 웹 문서 데이터에 대해 문장 단위로 분리하고, 분리된 각 문장에 대해 언어처리를 수행하여 언어적인 자질들을 추출하는 단계;
    (c) 상기 추출된 각 문장의 언어적인 자질들에 대해 기계학습 알고리즘을 수행하여 특정의 의견추출모델을 생성하는 단계; 및
    (d) 상기 생성된 의견추출모델을 이용하여 입력되는 웹 문서 데이터에 대해 확률적으로 의견 문장을 추출하는 단계를 포함하는 웹 문서에서의 의견 추출 방법.
  18. 제17 항에 있어서,
    상기 단계(d)에서 입력되는 웹 문서 데이터에 대해 기 설정된 도메인별로 확 률적인 분류를 수행하는 단계를 더 포함하는 것을 특징으로 하는 웹 문서에서의 의견 추출 방법.
  19. 제18 항에 있어서,
    상기 기 설정된 도메인별로 확률적인 분류를 수행하는 단계는,
    상기 기 설정된 도메인별로 해당 도메인과 관련된 웹 문서 데이터를 수집하는 제1 과정과,
    상기 수집된 각 도메인별 웹 문서 데이터에 대해 언어처리를 수행하여 의미적으로 분리 가능한 자질들을 추출하는 제2 과정과,
    상기 추출된 각 도메인별 자질들에 대해 기계학습 알고리즘을 이용하여 확률적으로 학습한 후 특정의 도메인 분류모델을 생성하는 제3 과정과,
    상기 생성된 도메인 분류모델을 이용하여 입력되는 웹 문서 데이터에 대해 상기 기 설정된 도메인별로 확률적인 분류를 수행하는 제4 과정을 포함하는 것을 특징으로 하는 웹 문서에서의 의견 추출 방법.
  20. 제17 항에 있어서,
    상기 언어처리는 형태소 분석 또는 띄어쓰기 처리를 수행하는 것을 특징으로 하는 웹 문서에서의 의견 추출 방법.
  21. (a') 특정의 웹 문서 데이터에 존재하는 평가 결과를 갖는 의견 문장에 대해 언어처리를 수행하여 의미적인 언어 단위들로 분리하는 단계;
    (b') 상기 분리된 각 언어 단위별로 긍정적/부정적 표현으로 될 확률값을 정규화하여 계산하는 단계;
    (c') 상기 계산된 각 언어 단위별 확률값과 기 설정된 의견표현 기준값을 비교하여 그 결과에 따라 각 언어 단위별로 긍정/부정 의견표현으로 표시하는 단계;
    (d') 상기 각 언어 단위별 긍정/부정 의견표현으로 표시된 의견 문장에 대해 기계학습 알고리즘을 수행하여 특정의 의견표현모델을 생성하는 단계; 및
    (e') 상기 생성된 의견표현모델을 이용하여 입력되는 웹 문서 데이터의 평가 결과를 갖는 의견 문장에 대해 언어처리를 수행한 후, 긍정/부정 의견표현을 표시 및 구분하는 단계를 포함하는 웹 문서에서의 의견 분석 방법.
  22. 제21 항에 있어서,
    상기 단계(b')에서 계산된 각 언어 단위별 확률값을 데이터베이스(DB)화하여 별도의 저장모듈에 저장하는 단계를 더 포함하는 것을 특징으로 하는 웹 문서에서의 의견 분석 방법.
  23. (a") 평가 결과를 갖는 의견 문장을 포함한 특정의 웹 문서 데이터를 수집하는 단계;
    (b") 상기 수집된 웹 문서 데이터에 대해 문장 단위로 분리하고, 분리된 각 문장에 대해 언어처리를 수행하여 언어적인 자질들을 추출하는 단계;
    (c") 상기 추출된 각 문장의 언어적인 자질들에 대해 기계학습 알고리즘을 수행하여 특정의 의견추출모델을 생성하는 단계;
    (d") 상기 생성된 의견추출모델을 이용하여 입력되는 웹 문서 데이터에 대해 확률적으로 의견 문장을 추출하는 단계;
    (e") 상기 추출된 평가 결과를 갖는 의견 문장에 대해 언어처리를 수행하여 의미적인 언어 단위들로 분리하는 단계;
    (f") 상기 분리된 각 언어 단위별로 긍정적/부정적 표현으로 될 확률값을 정규화하여 계산하는 단계;
    (g") 상기 계산된 각 언어 단위별 확률값과 기 설정된 의견표현 기준값을 비교하여 그 결과에 따라 각 언어 단위별로 긍정/부정 의견표현으로 표시하는 단계;
    (h") 상기 각 언어 단위별 긍정/부정 의견표현으로 표시된 의견 문장에 대해 기계학습 알고리즘을 수행하여 특정의 의견표현모델을 생성하는 단계; 및
    (i") 상기 생성된 의견표현모델을 이용하여 입력되는 웹 문서 데이터의 평가 결과를 갖는 의견 문장에 대해 언어처리를 수행한 후, 긍정/부정 의견표현을 표시 및 구분하는 단계를 포함하는 웹 문서에서의 의견 추출 및 분석 방법.
  24. 제17 항 내지 제23 항 중 어느 한 항의 방법을 컴퓨터로 실행시킬 수 있는 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체.
KR1020080095330A 2008-09-29 2008-09-29 웹 문서에서의 의견 추출 및 분석 장치 및 그 방법 KR101005337B1 (ko)

Priority Applications (3)

Application Number Priority Date Filing Date Title
KR1020080095330A KR101005337B1 (ko) 2008-09-29 2008-09-29 웹 문서에서의 의견 추출 및 분석 장치 및 그 방법
PCT/KR2009/005408 WO2010036013A2 (ko) 2008-09-29 2009-09-23 웹 문서에서의 의견 추출 및 분석 장치 및 그 방법
US13/121,644 US8731904B2 (en) 2008-09-29 2009-09-23 Apparatus and method for extracting and analyzing opinion in web document

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020080095330A KR101005337B1 (ko) 2008-09-29 2008-09-29 웹 문서에서의 의견 추출 및 분석 장치 및 그 방법

Publications (2)

Publication Number Publication Date
KR20100035940A KR20100035940A (ko) 2010-04-07
KR101005337B1 true KR101005337B1 (ko) 2011-01-04

Family

ID=42060262

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020080095330A KR101005337B1 (ko) 2008-09-29 2008-09-29 웹 문서에서의 의견 추출 및 분석 장치 및 그 방법

Country Status (3)

Country Link
US (1) US8731904B2 (ko)
KR (1) KR101005337B1 (ko)
WO (1) WO2010036013A2 (ko)

Families Citing this family (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011095905A (ja) * 2009-10-28 2011-05-12 Sony Corp 情報処理装置および方法、並びにプログラム
US9672555B1 (en) 2011-03-18 2017-06-06 Amazon Technologies, Inc. Extracting quotes from customer reviews
US8554701B1 (en) * 2011-03-18 2013-10-08 Amazon Technologies, Inc. Determining sentiment of sentences from customer reviews
US8352405B2 (en) * 2011-04-21 2013-01-08 Palo Alto Research Center Incorporated Incorporating lexicon knowledge into SVM learning to improve sentiment classification
US9965470B1 (en) 2011-04-29 2018-05-08 Amazon Technologies, Inc. Extracting quotes from customer reviews of collections of items
US20150046371A1 (en) * 2011-04-29 2015-02-12 Cbs Interactive Inc. System and method for determining sentiment from text content
US8700480B1 (en) 2011-06-20 2014-04-15 Amazon Technologies, Inc. Extracting quotes from customer reviews regarding collections of items
JP5530476B2 (ja) * 2012-03-30 2014-06-25 株式会社Ubic 文書分別システム及び文書分別方法並びに文書分別プログラム
EP2912569A4 (en) * 2012-10-26 2016-06-15 Hewlett Packard Development Co DOCUMENT SYNTHESIS METHOD
US20150286628A1 (en) * 2012-10-26 2015-10-08 Nec Corporation Information extraction system, information extraction method, and information extraction program
CN103870973B (zh) * 2012-12-13 2017-12-19 阿里巴巴集团控股有限公司 基于电子信息的关键词提取的信息推送、搜索方法及装置
US20140244240A1 (en) * 2013-02-27 2014-08-28 Hewlett-Packard Development Company, L.P. Determining Explanatoriness of a Segment
CN103294893B (zh) * 2013-05-02 2017-08-25 广东工业大学 一种减少中医主观问卷不一性的机器学习方法
KR101532252B1 (ko) * 2013-08-23 2015-07-01 (주)타파크로스 소셜 네트워크 정보 수집 및 분석 시스템
CN103617212A (zh) * 2013-11-19 2014-03-05 北京京东尚科信息技术有限公司 一种处理舆情数据的方法和系统
KR101577890B1 (ko) * 2014-01-28 2015-12-16 포항공과대학교 산학협력단 자연어 대화 시스템을 위한 다중 도메인 식별 방법 및 장치
CN105159879A (zh) * 2015-08-26 2015-12-16 北京理工大学 一种网络个体或群体价值观自动判别方法
CN105224640B (zh) * 2015-09-25 2019-12-31 杭州朗和科技有限公司 一种提取观点的方法和设备
CN106557460A (zh) * 2015-09-29 2017-04-05 株式会社东芝 从单文档中提取关键词的装置及方法
KR101797234B1 (ko) * 2016-12-07 2017-11-13 서강대학교 산학협력단 온라인 커뮤니티에서 동일 사용자의 닉네임 목록을 추출하는 장치 및 방법
US10394959B2 (en) * 2017-12-21 2019-08-27 International Business Machines Corporation Unsupervised neural based hybrid model for sentiment analysis of web/mobile application using public data sources
KR102146152B1 (ko) * 2018-01-03 2020-08-28 세종대학교산학협력단 관능 평가 방법 및 그 장치
WO2019182593A1 (en) * 2018-03-22 2019-09-26 Equifax, Inc. Text classification using automatically generated seed data
US10832001B2 (en) * 2018-04-26 2020-11-10 Google Llc Machine learning to identify opinions in documents
CN108647335A (zh) * 2018-05-12 2018-10-12 苏州华必讯信息科技有限公司 网络舆情分析方法和装置
KR102083017B1 (ko) * 2018-06-26 2020-04-23 삼육대학교산학협력단 플레이스의 소셜 리뷰 분석 방법 및 시스템
CN110059172B (zh) * 2019-04-19 2021-09-21 北京百度网讯科技有限公司 基于自然语言理解的推荐答案的方法和装置
CN111161890B (zh) * 2019-12-31 2021-02-12 上海亿锎智能科技有限公司 不良事件和合并用药的关联性判断方法及系统
US11625421B1 (en) * 2020-04-20 2023-04-11 GoLaw LLC Systems and methods for generating semantic normalized search results for legal content

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20060052194A (ko) * 2004-10-13 2006-05-19 휴렛-팩커드 디벨롭먼트 컴퍼니, 엘 피 문서 분류 장치, 방법, 프로그램
JP2006190229A (ja) 2005-01-07 2006-07-20 Nec Corp 意見抽出用学習装置及び意見抽出用分類装置
JP2007172179A (ja) 2005-12-20 2007-07-05 Nec Corp 意見抽出装置、意見抽出方法、および意見抽出プログラム
JP2007219880A (ja) 2006-02-17 2007-08-30 Fujitsu Ltd 評判情報処理プログラム、方法及び装置

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080215571A1 (en) * 2007-03-01 2008-09-04 Microsoft Corporation Product review search
US8280885B2 (en) * 2007-10-29 2012-10-02 Cornell University System and method for automatically summarizing fine-grained opinions in digital text
US9201863B2 (en) * 2009-12-24 2015-12-01 Woodwire, Inc. Sentiment analysis from social media content

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20060052194A (ko) * 2004-10-13 2006-05-19 휴렛-팩커드 디벨롭먼트 컴퍼니, 엘 피 문서 분류 장치, 방법, 프로그램
JP2006190229A (ja) 2005-01-07 2006-07-20 Nec Corp 意見抽出用学習装置及び意見抽出用分類装置
JP2007172179A (ja) 2005-12-20 2007-07-05 Nec Corp 意見抽出装置、意見抽出方法、および意見抽出プログラム
JP2007219880A (ja) 2006-02-17 2007-08-30 Fujitsu Ltd 評判情報処理プログラム、方法及び装置

Also Published As

Publication number Publication date
KR20100035940A (ko) 2010-04-07
WO2010036013A3 (ko) 2010-07-22
US20110184729A1 (en) 2011-07-28
WO2010036013A2 (ko) 2010-04-01
US8731904B2 (en) 2014-05-20

Similar Documents

Publication Publication Date Title
KR101005337B1 (ko) 웹 문서에서의 의견 추출 및 분석 장치 및 그 방법
Moussa et al. A survey on opinion summarization techniques for social media
Kunneman et al. Signaling sarcasm: From hyperbole to hashtag
Montejo-Ráez et al. Ranked wordnet graph for sentiment polarity classification in twitter
Korenek et al. Sentiment analysis on microblog utilizing appraisal theory
Bellot et al. INEX Tweet Contextualization task: Evaluation, results and lesson learned
Garg et al. Sentiment analysis of twitter feeds
Padmaja et al. Evaluating sentiment analysis methods and identifying scope of negation in newspaper articles
Im et al. Analysing market sentiment in financial news using lexical approach
KR101007284B1 (ko) 인터넷을 이용한 의견 검색 시스템 및 그 방법
Selamat et al. Word-length algorithm for language identification of under-resourced languages
Nam Nguyen et al. Domain specific sentiment dictionary for opinion mining of vietnamese text
Haque et al. Opinion mining from bangla and phonetic bangla reviews using vectorization methods
Lazhar et al. Mining explicit and implicit opinions from reviews
Kergosien et al. Are opinions expressed in land-use planning documents?
Das et al. Identifying emotional expressions, intensities and sentence level emotion tags using a supervised framework
Wang Understanding personality through social media
Nama et al. Sentiment analysis of movie reviews: A comparative study between the naive-bayes classifier and a rule-based approach
Jha et al. Hsas: Hindi subjectivity analysis system
Tariku et al. Sentiment Mining and Aspect Based Summarization of Opinionated Afaan Oromoo News Text
Lopez et al. How can catchy titles be generated without loss of informativeness?
Imane et al. A set of parameters for automatically annotating a Sentiment Arabic Corpus
Schmid et al. FoSIL-Offensive language classification of German tweets combining SVMs and deep learning techniques.
Wang et al. Unsupervised opinion phrase extraction and rating in Chinese blog posts
Hoek et al. Automatic coherence analysis of Dutch: Testing the subjectivity hypothesis on a larger scale

Legal Events

Date Code Title Description
A201 Request for examination
N231 Notification of change of applicant
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
N231 Notification of change of applicant
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20131029

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20141105

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20150921

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20160929

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20171124

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20191223

Year of fee payment: 10