KR102348177B1 - 감성 분석을 위한 학습 데이터 생성 방법 및 장치 - Google Patents

감성 분석을 위한 학습 데이터 생성 방법 및 장치 Download PDF

Info

Publication number
KR102348177B1
KR102348177B1 KR1020200004224A KR20200004224A KR102348177B1 KR 102348177 B1 KR102348177 B1 KR 102348177B1 KR 1020200004224 A KR1020200004224 A KR 1020200004224A KR 20200004224 A KR20200004224 A KR 20200004224A KR 102348177 B1 KR102348177 B1 KR 102348177B1
Authority
KR
South Korea
Prior art keywords
clause
sentiment
emotion
vocabulary
score
Prior art date
Application number
KR1020200004224A
Other languages
English (en)
Other versions
KR20210090906A (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 KR1020200004224A priority Critical patent/KR102348177B1/ko
Publication of KR20210090906A publication Critical patent/KR20210090906A/ko
Application granted granted Critical
Publication of KR102348177B1 publication Critical patent/KR102348177B1/ko

Links

Images

Classifications

    • 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
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/205Parsing
    • G06F40/211Syntactic parsing, e.g. based on context-free grammar [CFG] or unification grammars
    • 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
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N5/003
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/01Dynamic search techniques; Heuristics; Dynamic trees; Branch-and-bound
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/02Knowledge representation; Symbolic representation
    • G06N5/022Knowledge engineering; Knowledge acquisition

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computational Linguistics (AREA)
  • General Physics & Mathematics (AREA)
  • Artificial Intelligence (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computing Systems (AREA)
  • Software Systems (AREA)
  • Mathematical Physics (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Molecular Biology (AREA)
  • Biophysics (AREA)
  • Biomedical Technology (AREA)
  • Machine Translation (AREA)

Abstract

일 실시예에 따르면, 학습 데이터 생성 방법 및 장치는 입력 문장을 수신하여 적어도 하나의 절로 분할하고, 미리 저장된 감성 사전을 이용하여 적어도 하나의 절에 대응하는 감성 점수를 부여하고, 적어도 하나의 절에 감성 변환 요소가 존재하는지 여부에 기초하여, 적어도 하나의 절에 대응하는 감성 점수를 재설정하고, 감성 점수 및 재설정된 감성 점수 중 적어도 하나를 이용하여 적어도 하나의 절에 대응하는 감성을 레이블링하며, 감성이 레이블링된 절을 이용하여 학습 데이터를 생성한다.

Description

감성 분석을 위한 학습 데이터 생성 방법 및 장치{METHOD AND APPARATUS OF GENERATING TRAINING DATA FOR SENTIMENT ANALYSIS}
아래 실시예들은 감성 분석을 위한 학습 데이터 생성 방법 및 장치에 관한 것이다.
최근, 딥러닝(Deep Learning)을 이용한 감성 분석이 많이 연구되어지고 있으며 뛰어난 성능을 보이고 있다. 그러나 딥러닝은 모델 복잡도가 높기 때문에 과적합(Overfitting) 문제가 발생할 수 있다. 딥러닝에서 과적합 문제를 해결하기 위해서는 많은 양의 학습 데이터가 요구된다. 예를 들어, 전통적인 기계 학습(machine learning)의 경우, 학습 데이터의 양이 증가되면 성능이 정체되는 현상을 보인다. 이와 달리, 딥러닝의 경우, 학습 데이터가 증가할수록 좋은 성능을 나타낸다. 학습 데이터의 양과 품질은 딥러닝에서 성능을 결정하는 중요한 요소가 될 수 있다.
이처럼 딥러닝을 이용한 감성 분석이 좋은 성능을 나타내기 위해서는 예를 들어, 긍정 또는 부정의 감성이 레이블링(labeling)된 많은 양의 학습 데이터가 필요하다. 하지만, 사람이 직접 수작업으로 모든 학습 데이터의 감성을 레이블링하는 것은 시간과 비용에 많은 제약이 있다. 또한, 빅 데이터 시대의 많은 데이터들 중 감성 분석에 적합한 충분한 양의 데이터를 수집하는 것 또한 용이하지 않다.
일 실시예에 따르면, 감성 사전과 의존 구문 분석 및 형태소 분석을 이용하여 대용량 학습 데이터를 자동으로 생성함으로써 딥러닝(deep learning)을 이용한 감성 분석에서의 학습 데이터 부족 문제를 해결할 수 있다.
일 실시예에 따르면, 다양한 도메인에 적용할 수 있도록 도메인에 영향을 받지 않는 미리 설정된 감성 사전을 활용함으로써 감성 사전 구축을 위한 비용 및 시간을 절약할 수 있다.
일 실시예에 따르면, 감성 사전의 어휘 빈도뿐만 아니라, 감성 반전, 감성 활성화 및 감성 비활성화와 같은 감성 변환 요소를 더 고려하여 문장 또는 절의 감성을 판별함으로써 감성 분석을 위한 보다 정확한 학습 데이터를 생성할 수 있고, 수작업에 비해 짧은 시간에 대용량의 감성이 레이블링된 학습 데이터를 생성할 수 있다.
일 실시예에 따르면, 학습 데이터 생성 방법은 입력 문장을 수신하는 단계; 상기 입력 문장을 적어도 하나의 절(Clause)로 분할하는 단계; 미리 저장된 감성 사전을 이용하여 상기 적어도 하나의 절에 대응하는 감성 점수를 부여하는 단계; 상기 적어도 하나의 절에 감성 변환 요소가 존재하는지 여부에 기초하여, 상기 적어도 하나의 절에 대응하는 감성 점수를 재설정하는 단계; 상기 감성 점수 및 상기 재설정된 감성 점수 중 적어도 하나를 이용하여 상기 적어도 하나의 절에 대응하는 감성을 레이블링(labeling)하는 단계; 및 상기 감성이 레이블링된 절을 이용하여 학습 데이터를 생성하는 단계를 포함한다.
상기 감성 변환 요소는 제1 감성이 제2 감성으로 반전되는 감성 반전(sentiment reversal) 요소; 감성을 가지지 않는 중립 어휘가 감성을 가지는 감성 어휘로 변환되는 감성 활성화(sentiment activation) 요소; 및 상기 감성 어휘가 상기 중립 어휘로 변환되는 감성 비활성화(sentiment deactivation) 요소 중 적어도 하나를 포함할 수 있다.
상기 감성 점수를 재설정하는 단계는 언어 요소들 간의 의존 관계를 파악하는 의존 구문 분석(dependency parsing) 및 형태소 분석(Morphological analysis) 중 적어도 하나를 기초로, 상기 적어도 하나의 절에 상기 감성 변환 요소가 존재하는지 여부를 결정하는 단계; 및 상기 감성 변환 요소가 존재한다고 결정된 경우, 상기 감성 변환 요소에 대응하는 점수를 반영하여 상기 감성 점수를 재설정하는 단계를 포함할 수 있다.
상기 감성 변환 요소가 존재하는지 여부를 결정하는 단계는 상기 의존 구문 분석에 의해 상기 적어도 하나의 절을 지배소와 의존소로 분류하는 단계; 및 상기 지배소와 의존소 간의 의존 관계를 기초로, 상기 적어도 하나의 절에 감성 반전 요소 및 감성 활성화 요소 중 적어도 하나가 있는지 여부를 결정하는 단계를 포함할 수 있다.
상기 감성 반전 요소 및 감성 활성화 요소 중 적어도 하나가 있는지 여부를 결정하는 단계는 상기 의존 관계를 기초로, 상기 적어도 하나의 절에 부정 성분이 포함되어 있는지 여부를 판단하는 단계; 및 상기 부정 성분이 포함된 것으로 판단되는 경우, 상기 적어도 하나의 절에 상기 감성 반전 요소가 있는 것으로 결정하는 단계를 포함할 수 있다.
상기 부정 성분은 감성 어휘와 결합하여 감성을 반전시키는 부정소, 및 상기 감성 어휘와 결합하여 감성이 반전되는 어휘의 어근 중 적어도 하나를 포함할 수 있다.
상기 감성 반전 요소 및 감성 활성화 요소 중 적어도 하나가 있는지 여부를 결정하는 단계는 상기 적어도 하나의 절이 후행절을 부정적인 의미로 이끌거나, 또는 해당 문장에서 부정적으로 사용되는 특정 정도 부사를 포함하는지 여부를 판단하는 단계; 및 상기 특정 정도 부사를 포함한다고 판단되는 경우, 상기 적어도 하나의 절에 상기 감성 활성화 요소가 있는 것으로 결정하는 단계를 포함할 수 있다.
상기 감성 변환 요소가 존재하는지 여부를 결정하는 단계는 형태소 분석을 통해 상기 적어도 하나의 절에 선행절의 감성을 비활성화 시킴으로써 감성 어휘를 중립 어휘로 변환하는 특정 형태소가 있는지 여부를 판단하는 단계; 및 상기 특정 형태소가 존재하는 경우, 상기 적어도 하나의 절에 감성 비활성화 요소가 있는 것으로 결정하는 단계를 포함할 수 있다.
상기 감성 점수를 부여하는 단계는 상기 감성 사전에 포함된 어휘들 중 상기 적어도 하나의 절에 매칭되는 감성 어휘의 원형 및 상기 감성 어휘의 어근 중 적어도 하나를 이용하여 상기 적어도 하나의 절에 대응하는 감성 점수를 부여하는 단계를 포함할 수 있다.
상기 감성 점수를 부여하는 단계는 형태소 분석을 통해 상기 감성 사전에 포함된, 상기 적어도 하나의 절에 매칭되는 감성 어휘의 어근을 추출하는 단계; 상기 감성 사전에 포함된 감성 어휘의 원형, 및 상기 감성 어휘의 어근 중 적어도 하나를 상기 적어도 하나의 절에 포함된 형태소들에 매칭시키는 단계; 및 상기 형태소들에 매칭된 감성 어휘의 원형 또는 상기 감성 어휘의 어근에 미리 부여된 감성 점수를 총합함으로써 상기 적어도 하나의 절에 대응하는 감성 점수를 부여하는 단계를 포함할 수 있다.
상기 감성 점수를 총합함으로써 상기 적어도 하나의 절에 대응하는 감성 점수를 부여하는 단계는 상기 적어도 하나의 절을 띄어 쓰기 단위에 의해 토큰들로 나눈 토큰 리스트(token list)를 생성하는 단계; 및 상기 토큰 리스트에 포함된 토큰들 각각에 매칭되는 감성 어휘의 어근에 대응하여 미리 부여된 감성 점수를 총합함으로써 상기 적어도 하나의 절에 대응하는 감성 점수를 부여하는 단계를 포함할 수 있다.
상기 적어도 하나의 절로 분할하는 단계는 상기 입력 문장에 대한 형태소 분석에 의해 상기 입력 문장을 상기 적어도 하나의 절로 분할하는 단계를 포함할 수 있다.
상기 적어도 하나의 절로 분할 하는 단계는 상기 입력 문장의 형태소 (morpheme)들을 분석하는 단계; 및 상기 형태소들 중 연결 어미에 해당하는 형태소를 기준으로 상기 입력 문장을 상기 적어도 하나의 절로 분할하는 단계를 포함할 수 있다.
상기 형태소를 기준으로 상기 입력 문장을 상기 적어도 하나의 절로 분할하는 단계는 상기 분석 결과를 기초로, 상기 형태소들에 대응하는 품사 태그들을 상기 형태소들에 부여하는 단계; 및 상기 품사 태그들 중 연결 어미 태그가 부여된 형태소를 기준으로 상기 입력 문장을 상기 적어도 하나의 절로 분할하는 단계를 포함할 수 있다.
상기 감성 사전은 특정 도메인에 영향을 받지 않는 독립적인 감성 어휘, 온라인 텍스트 데이터에서 사용되는 신조어 어휘, 및 이모티콘 중 적어도 하나를 포함하고, 상기 감성 어휘, 상기 신조어 어휘 및 상기 이모티콘은 긍정(positive), 부정(negative), 및 중립(neutral)의 감성으로 구분될 수 있다.
상기 적어도 하나의 절에 대응하는 감성을 레이블링하는 단계는 상기 감성 점수 및 상기 재설정된 감성 점수를 총합하는 단계; 및 상기 총합된 점수를 기초로, 상기 적어도 하나의 절에 대응하는 감성을 레이블링하는 단계를 포함할 수 있다.
상기 학습 데이터를 생성하는 단계는 상기 감성이 레이블링된 절에 대응하는 총합된 점수가 미리 설정된 기준 점수보다 높은지 여부를 결정하는 단계; 및 상기 감성 점수가 상기 기준 점수보다 높은 절을 상기 학습 데이터로 설정하는 단계를 포함할 수 있다.
일 실시예에 따르면, 학습 데이터 생성 장치는 입력 문장을 수신하는 통신 인터페이스; 미리 설정된 감성 사전을 저장하는 메모리; 및 상기 입력 문장을 적어도 하나의 절로 분할하고, 상기 감성 사전을 이용하여 상기 적어도 하나의 절에 대응하는 감성 점수를 부여하고, 상기 적어도 하나의 절에 감성 변환 요소가 존재하는지 여부에 기초하여, 상기 적어도 하나의 절에 대응하는 감성 점수를 재설정하고, 상기 감성 점수 및 상기 재설정된 감성 점수 중 적어도 하나를 이용하여 상기 적어도 하나의 절에 대응하는 감성을 레이블링하며, 상기 감성이 레이블링된 절을 이용하여 학습 데이터를 생성하는 프로세서를 포함한다.
상기 프로세서는 언어 요소들 간의 의존 관계를 파악하는 의존 구문 분석 및 형태소 분석 중 적어도 하나를 기초로, 상기 적어도 하나의 절에 상기 감성 변환 요소가 존재하는지 여부를 결정하고, 상기 감성 변환 요소가 존재한다고 결정된 경우, 상기 감성 변환 요소에 대응하는 점수를 반영하여 상기 감성 점수를 재설정할 수 있다.
일 측에 따르면, 감성 사전과 의존 구문 분석 및 형태소 분석을 이용하여 대용량 학습 데이터를 자동으로 생성함으로써 딥러닝(deep learning)을 이용한 감성 분석에서의 학습 데이터 부족 문제를 해결할 수 있다.
일 측에 따르면, 다양한 도메인에 적용할 수 있도록 도메인에 영향을 받지 않는 미리 설정된 감성 사전을 활용함으로써 감성 사전 구축을 위한 비용 및 시간을 절약할 수 있다.
일 측에 따르면, 감성 사전의 어휘 빈도뿐만 아니라, 감성 반전, 감성 활성화 및 감성 비활성화와 같은 감성 변환 요소를 더 고려하여 문장 또는 절의 감성을 판별함으로써 감성 분석을 위한 보다 정확한 학습 데이터를 생성할 수 있고, 수작업에 비해 짧은 시간에 대용량의 감성이 레이블링된 학습 데이터를 생성할 수 있다.
도 1은 일 실시예에 따른 감성 분석 방법을 개념적으로 설명하기 위한 도면.
도 2는 일 실시예에 따른 감성 분석을 위한 학습 데이터 생성 방법을 나타낸 흐름도.
도 3은 일 실시예에 따라 입력 문장을 적어도 하나의 절로 분할하는 방법을 나타낸 흐름도.
도 4는 일 실시예에 따른 형태소 목록을 도시한 도면.
도 5는 일 실시예에 따라 감성 점수를 부여하는 방법을 나타낸 흐름도.
도 6은 일 실시예에 따른 감성 사전 매칭 알고리즘을 도시한 도면.
도 7은 일 실시예에 따라 감성 점수를 재설정하는 방법을 나타낸 흐름도.
도 8은 일 실시예에 따른 의존 구문 분석 방법을 설명하기 위한 도면.
도 9는 일 실시예에 따른 감성 변환 요소의 예시를 도시한 도면.
도 10은 일 실시예에 따른 감성 반전, 감성 활성화 알고리즘을 도시한 도면.
도 11a 및 도 11b는 실시예들에 따른 감성 반전 요소의 예시들을 도시한 도면.
도 12는 일 실시예에 따른 감성 활성화 요소의 예시들을 도시한 도면.
도 13은 일 실시예에 따른 감성 비활성화 알고리즘을 도시한 도면.
도 14는 일 실시예에 따른 감성 비활성화 요소의 예시들을 도시한 도면.
도 15는 일 실시예에 따른 감성 레이블링 알고리즘을 도시한 도면.
도 16은 다른 실시예에 따른 감성 분석을 위한 학습 데이터 생성 방법을 나타낸 흐름도.
도 17은 일 실시예에 따라 생성된 학습 데이터의 예시를 도시한 도면.
도 18은 일 실시예에 따른 학습 데이터 생성 장치의 블록도.
이하에서, 첨부된 도면을 참조하여 실시예들을 상세하게 설명한다. 그러나, 실시예들에는 다양한 변경이 가해질 수 있어서 특허출원의 권리 범위가 이러한 실시예들에 의해 제한되거나 한정되는 것은 아니다. 실시예들에 대한 모든 변경, 균등물 내지 대체물이 권리 범위에 포함되는 것으로 이해되어야 한다.
실시예에서 사용한 용어는 단지 설명을 목적으로 사용된 것으로, 한정하려는 의도로 해석되어서는 안된다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 명세서에서, "포함하다" 또는 "가지다" 등의 용어는 명세서 상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 실시예가 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
또한, 첨부 도면을 참조하여 설명함에 있어, 도면 부호에 관계없이 동일한 구성 요소는 동일한 참조부호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다. 실시예를 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 실시예의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다.
도 1은 일 실시예에 따른 감성 분석 방법을 개념적으로 설명하기 위한 도면이다. 도 1을 참조하면, 일 실시예에 따른 학습 데이터 생성 장치(이하, '생성 장치')는 입력된 문장(sentence)을 수신하고(110), 수신한 문장을 적어도 하나의 절(Clause)로 분할할 수 있다(120).
생성 장치는 감성 어휘(sentiment lexicon)들을 포함하는 미리 저장된 감성 사전 및 감성 변환 요소(sentiment transformation element)에 의해 감성 점수를 결정할 수 있다(130).
생성 장치는 단계(130)에서 결정된 감성 점수를 기초로 학습 데이터(training set)를 생성할 수 있다(140)
생성 장치는 단계(140)에서 생성한 학습 데이터를 이용하여 딥러닝(deep learning)을 수행할 수 있다(150). 생성 장치는 예를 들어, 앞 뒤 문맥을 살펴볼 수 있는 Bi-LSTM(Bi-directional LSTM)에 의해 딥러닝을 수행할 수 있다.
생성 장치는 단계(150)의 딥러닝 수행 결과에 기초하여 특정 문장에 대응하는 감성을 분석(Sentiment Analysis)할 수 있다(160).
일 실시예에 따른 생성 장치는 딥 러닝(deep learning)을 통한 감성 분석(Sentiment Analysis) 시의 학습 데이터 부족 문제를 해결하기 위해 기존의 감성 사전과 더불어 의존 구문 분석 및 형태소 분석을 활용하여 절 단위로 학습 데이터를 생성하고, 생성한 학습 데이터를 이용하여 문장의 감성을 분석할 수 있다.
일 실시예에 따른 생성 장치가 학습 데이터를 생성하는 방법은 아래의 도 2 내지 도 17을 참조하여 구체적으로 설명한다.
도 2는 일 실시예에 따른 감성 분석을 위한 학습 데이터 생성 방법을 나타낸 흐름도이다. 도 2를 참조하면, 일 실시예에 따른 생성 장치는 입력 문장을 수신한다(210).
생성 장치는 입력 문장을 적어도 하나의 절로 분할한다(220). 한 문장에는 여러 감성들이 존재할 수 있으며, 이러한 경우 해당 문장의 감성을 긍정 또는 부정의 한 가지 감성으로 레이블링하기 어렵다. 따라서, 일 실시예에서는 감성을 정의하기 전에 하나의 입력 문장을 절로 분할하고, 절 단위로 감성을 레이블링하도록 할 수 있다.
단계(220)에서, 생성 장치는 예를 들어, 입력 문장에 대한 형태소 분석(Morphological analysis)에 의해 입력 문장을 적어도 하나의 절로 분할할 수 있다. 여기서, '절(Clause)'은 주어와 서술어의 형태를 지닌 문장 단위를 의미하며, 주어와 서술어를 모두 충족하기 때문에 따로 쓰일 수 있지만, 주로 복문에서 명사, 형용사, 부사 등의 역할을 수행할 수 있다. 절의 예시로는 예를 들어, 명사절, 형용사절, 부사절 등을 포함할 수 있다. 절은 '어절'이라고도 부를 수 있다.
단계(220)에서, 생성 장치는 입력 문장의 형태소(morpheme)들을 분석하고, 형태소들 중 연결 어미에 해당하는 형태소를 기준으로 입력 문장을 적어도 하나의 절로 분할할 수 있다. 여기서, '형태소'는 뜻을 가진 가장 작은 말의 단위에 해당할 수 있다. 예를 들어, "하늘이 참 높고 푸르다"와 같은 문장은 '하늘/이/참/높/고/푸르/다'와 같이 7개의 형태소들로 구분될 수 있다. 형태소는 자립할 수 있는지 여부에 따라 자립 형태소와 의존 형태소로 구분될 수 있다. 앞에서 예로 든 문장에서 '하늘', 및 '참'이 자립 형태소에 해당할 수 있다. 자립 형태소는 예를 들어, 명사, 대명사, 수사, 관형사, 부사, 감탄사 등과 같은 품사에 해당할 수 있다. 또한, 앞에서 예로 든 문장에서 '이', '높~', '~고', '푸르~', 및 '~다'는 의존 형태소에 해당할 수 있다. 의존 형태소는 예를 들어, 어간, 어미, 조사, 접사 등과 같은 품사에 해당할 수 있다. 또한, 형태소는 실질적인 의미가 있는지 여부에 따라 실질 형태소와 형식 형태소로 구분될 수 있다. 모든 자립 형태소는 실질 형태소이고, 용언의 어간도 실질 형태소일 수 있다. 여기서, '용언'은 독립된 뜻을 가지고, 어미를 활용하여 문장 성분으로서 서술어의 기능을 하는 말에 해당하며, 예를 들어, 문장에서 주어를 서술하는 역할을 하는 동사와 형용사에 이에 해당할 수 있다. 앞에서 예로 든 문장에서 '하늘', '참', '높', 및 '푸르'가 실질 형태소에 해당할 수 있다. 형식 형태소는 문법적 관계나 형식적 의미를 더해주는 형태소로서, 문법적인 의미를 지니고 문법적인 기능을 한다는 점에서 '문법 형태소'라고 부를 수도 있다. 예를 들어, 단어가 문장에서 주어, 목적어 등의 역할을 할 수 있도록 자격을 부여하는 조사, 시제를 나타내거나 품사의 성격을 바꾸는 등의 역할을 하는 어미, 및 단어의 뜻을 보조하는 접사 등이 형식 형태소에 해당할 수 있다.
예를 들어, “연기는 훌륭했지만 전체적인 영상미가 좋지 않았다.”라는 입력 문장이 있는 경우, 생성 장치는 연결 어미에 해당하는 형태소('~지만')를 기준으로 해당 문장을 두 개의 절들로 분할할 수 있다. 생성 장치가 입력 문장을 적어도 하나의 절로 분할하는 방법은 아래의 도 3을 참조하여 구체적으로 설명한다.
생성 장치는 미리 저장된 감성 사전을 이용하여 적어도 하나의 절에 대응하는 감성 점수를 부여한다(230). 감성 사전은 예를 들어, 특정 도메인에 영향을 받지 않는 독립적인 감성 어휘, 온라인 텍스트 데이터에서 사용되는 신조어 어휘, 및 이모티콘 등을 포함할 수 있다. 이때, 감성 사전에 저장된 감성 어휘, 신조어 어휘 및 이모티콘 등은 예를 들어, 긍정(positive), 부정(negative), 및 중립(neutral) 등의 감성으로 구분될 수 있다. 생성 장치는 예를 들어, 감성 사전에 포함된 어휘들 중 적어도 하나의 절에 매칭되는 감성 어휘의 원형 및 감성 어휘의 어근 중 적어도 하나를 이용하여 적어도 하나의 절에 대응하는 감성 점수를 부여할 수 있다.
생성 장치는 예를 들어, 적어도 하나의 절에 포함된 어휘들 각각을 감성 사전과 매칭하여 어절 단위로 긍정 어휘에는 +1점을 부여하고, 부정 어휘에는 -1점을 부여할 수 있다. 이때, 감성 사전에 저장된 감성 어휘의 원형과 어근 둘 다가 자질로 사용될 수 있다. 일 실시예에서는 감성 사전을 사용하여 감성 점수를 부여함으로써 특정 절이 특정 감성으로 분류되었을 때에 그 이유를 설명할 수 있다. 생성 장치가 감성 점수를 부여하는 방법은 아래의 도 5 및 도 6을 참조하여 구체적으로 설명한다.
생성 장치는 적어도 하나의 절에 감성 변환 요소가 존재하는지 여부에 기초하여, 적어도 하나의 절에 대응하는 감성 점수를 재설정한다(240). 예를 들어, "연기는 훌륭했지만 전체적인 영상미가 좋지 않았다.”라는 입력 문장에서 ‘훌륭했지만’과 ‘좋지’는 긍정 어휘에 해당할 수 있다. 이 경우, 생성 장치는 +1의 감성 점수를 부여할 수 있으나, 해당 문장에서 ‘좋지’의 뒤에 나오는 부정소 ‘않았다’는 부정 어휘에 해당할 수 있다. 따라서, 이러한 부정소를 고려하지 않고 어휘들을 단순히 감성 사전과 매칭하게 되면 부정 감성을 포함하고 있음에도 긍정으로 분류되는 문제가 발생할 수 있다. 따라서, 일 실시예에서는 이러한 부정소와 같은 감성 변환 요소가 존재하는 경우, 의존 구문 분석 및 형태소 분석을 수행해 감성 점수를 재설정할 수 있다.
감성 변환 요소는 예를 들어, 제1 감성이 제2 감성으로 반전되는 감성 반전(sentiment reversal) 요소, 감성을 가지지 않는 중립 어휘가 감성을 가지는 감성 어휘로 변환되는 감성 활성화(sentiment activation) 요소, 및 감성 어휘가 중립 어휘로 변환되는 감성 비활성화(sentiment deactivation) 요소 중 적어도 하나를 포함할 수 있다. 예를 들어, 제1 감성은 긍정이고, 제2 감성은 부정이거나, 또는 이와 반대도 가능한다. 감성은 예를 들어, 긍정 또는 긍정일 수 있다.
단계(240)에서, 생성 장치는 의존 구문 분석 및 형태소 분석을 통해 감성 반전, 감성 활성화, 또는 감성 비활성화되는 감성 변환 요소를 찾고, 감성 변환 요소에 의한 영향을 적용하여 감성 점수를 재설정하여 최종적으로 감성을 판별할 수 있다. 생성 장치는 예를 들어, 의존 구문 분석을 통한 의존 관계를 이용하여 감성 반전 요소 및 감성 활성화 요소를 찾을 수 있다. 일 실시예에서는 의존 구문 분석을 사용함으로써 국어 구문 분석 시에 한국어의 생략 및 어순 자유성으로 인한 문제점을 해결할 수 있다. 또한, 생성 장치는 형태소 분석을 이용하여 감성 비활성화 요소를 찾을 수 있다. 생성 장치가 감성 점수를 재설정하는 방법은 아래의 도 7 내지 도 14를 참조하여 구체적으로 설명한다.
생성 장치는 감성 점수 및 재설정된 감성 점수 중 적어도 하나를 이용하여 적어도 하나의 절에 대응하는 감성을 레이블링(labeling)한다(250). 생성 장치는 예를 들어, 감성 점수 및 재설정된 감성 점수를 총합하고, 총합된 점수를 기초로, 적어도 하나의 절에 대응하는 감성을 레이블링할 수 있다. 생성 장치는 재설정된 절 별 감성 점수를 모두 합하여 감성 점수를 계산하고, 감성 점수를 기준으로 긍정 또는 부정의 감성을 레이블링할 수 있다. 생성 장치는 총합된 점수, 다시 말해, 최종으로 확정된 감성 점수가 '양수(+)'이면 해당 절에 대응하는 감성을 '긍정'으로 레이블링할 수 있다. 생성 장치는 최종적으로 확정된 감성 점수가 '음수(-)'이면 해당 절에 대응하는 감성을 '부정'으로 레이블링할 수 있다. 생성 장치가 감성을 레이블링하는 방법은 아래의 도 15를 참조하여 구체적으로 설명한다.
생성 장치는 감성이 레이블링된 절을 이용하여 학습 데이터를 생성한다(260). 생성 장치는 예를 들어, 감성이 레이블링된 절에 대응하는 총합된 점수가 미리 설정된 기준 점수보다 높은지 여부를 결정할 수 있다. 생성 장치는 감성 점수가 기준 점수보다 높은 절을 학습 데이터로 설정할 수 있다. 생성 장치는 예를 들어, 감성 점수가 기준 점수보다 높은 절을 긍정 감성과 부정 감성 별으로 구분하고, 감성이 레이블링된 절을 각 감성 별 학습 데이터로 설정할 수 있다. 또는 생성 장치는 예를 들어, 감성이 레이블링된 절들 중 감성 점수가 높은 순서대로 긍정 감성과 부정 감성 각각에 대응하는 상위 k개의 절들을 추출하여 감성 분석에 적합한 대용량 학습 데이터를 생성할 수 있다.
생성 장치는 단계(260)에서 생성한 학습데이터를 이용하여 예를 들어, Bi-LSTM 신경망을 학습하여 감성 분석을 수행할 수 있다. 일 실시예에 따라 생성된 학습 데이터의 예시는 아래의 도 16을 참조할 수 있다.
도 3은 일 실시예에 따라 입력 문장을 적어도 하나의 절로 분할하는 방법을 나타낸 흐름도이고, 도 4는 일 실시예에 따른 형태소 목록을 도시한 도면이다. 도 3을 참조하면, 일 실시예에 따른 생성 장치는 입력 문장의 형태소들을 분석할 수 있다(310). 생성 장치는 입력 문장의 형태소들을 분석하여, 예를 들어, 아래의 도 4에 도시된 것과 같은 형태소 목록(Morpheme list)을 생성할 수 있다.
생성 장치는 단계(310)의 분석 결과를 기초로, 형태소들에 대응하는 품사 태그들을 형태소들에 부여할 수 있다(320). 예를 들어, "나는 기분이 좋다."라는 문장이 있다고 하자. 생성 장치는 해당 문장의 분석하여 '나/는/기분/이/좋/다/.'와 같이 형태소들을 구분할 수 있다. 이후, 생성 장치는 예를 들어, '나/NP'+'는/JX'+'기분/NNG'+'이/JKS'+'좋/VA'+'다/EF'+'./SF'와 같이 각 형태소들에 대응하는 품사 태그들을 부여할 수 있다. 생성 장치는 형태소 목록에 포함된 형태소들에 대응하는 품사 태그들을 부여할 수 있다.
생성 장치는 품사 태그들 중 연결 어미 태그가 부여된 형태소를 기준으로 입력 문장을 적어도 하나의 절로 분할할 수 있다(330). 생성 장치는 예를 들어, 형태소 목록에 포함된 형태소 중 품사 태그가 연결 어미를 뜻하는 ‘EC’를 가지는 형태소를 기준으로 입력 문장을 분할할 수 있다.
예를 들어, “문제점이 끊임없이 발생하고 있다.”라는 입력 문장이 있다고 하자. 이 경우, 해당 문장에 포함된 ‘발생하고’는 연결 어미에 해당하는 형태소 ‘고’를 포함하고, 형태소 '고'는 연결 어미에 해당하는 ‘EC’ 태그를 가질 수 있다. 이 경우, 해당 문장에서 연결 어미에 해당하는 형태소 ‘고’를 기준으로 입력 문장을 분할하는 경우, 하나의 절에 해당하는 문장이 “문제점이 끊임없이 발생하고”와 “있다”로 나눠지는 문제가 발생할 수 있다. 따라서, 일 실시예에서는 연결 어미에 해당하는 형태소 뒤에 붙는 글자 수가 5개 미만인 경우에는 해당 문장을 분할하지 않고, 앞의 절에 붙여 하나의 절로 취급할 수 있다.
도 5는 일 실시예에 따라 감성 점수를 부여하는 방법을 나타낸 흐름도이다. 도 5를 참조하면, 일 실시예에 따른 생성 장치는 형태소 분석을 통해 감성 사전에 포함된, 적어도 하나의 절에 매칭되는 감성 어휘의 어근을 추출할 수 있다(510).
생성 장치는 감성 사전에 포함된 감성 어휘의 원형, 및 감성 어휘의 어근 중 적어도 하나를 적어도 하나의 절에 포함된 형태소들에 매칭시킬 수 있다(520). 예를 들어, ‘순수한’, ‘순수하게’, ‘순수하고’, ‘순수하다’ 등의 어휘가 있을 때, 해당 어휘들은 모두 ‘순수/NNG’라는 어근을 가지며 같은 의미를 나타낸다. 감성 사전의 특성상 같은 어근을 가지는 모든 어휘를 개별적으로 저장하기 어렵기 때문에 일 실시예에서는 어근을 추출하여 사용할 수 있다. 이때, 추출한 어근 중에 한 글자로 된 어근은 제외될 수 있다. 예를 들어, ‘날조하여’라는 부정적인 어휘에서 ‘날/NNG’이 어근으로 추출되는데, 이러한 경우에 ‘소풍가는 날’에서의 ‘날’이 부정적으로 판단되는 오류가 발생할 수 있다.
일 실시예에서는 한 글자로 이루어진 어근은 감성 어휘의 실질적인 의미를 담기 어렵다고 판단해 어근 추출 시에 제외할 수 있다. 다만, 이와 같이 한 글자로 이루어진 어근을 감성 판단에서 제외하는 경우, 제외된 어근에 해당하는 감성 판단이 수행되지 않는다. 따라서, 일 실시예에서는 감성 사전에서 해당 감성 어휘의 원형도 어근과 함께 감성 판단 자질로 사용할 수 있다.
생성 장치는 형태소들에 매칭된 감성 어휘의 원형 또는 감성 어휘의 어근에 미리 부여된 감성 점수를 총합함으로써 적어도 하나의 절에 대응하는 감성 점수를 부여할 수 있다(530). 생성 장치는 예를 들어, 적어도 하나의 절을 띄어 쓰기 단위에 의해 토큰들로 나눈 토큰 리스트(token list)를 생성할 수 있다. 생성 장치는 토큰 리스트에 포함된 토큰들 각각에 매칭되는 감성 어휘의 어근에 대응하여 미리 부여된 감성 점수를 총합함으로써 적어도 하나의 절에 대응하는 감성 점수를 부여할 수 있다. 생성 장치가 감성 사전 매칭을 통해 감성 점수를 부여하는 방법은 아래의 도 6을 참조하여 구체적으로 설명한다.
도 6은 일 실시예에 따른 감성 사전 매칭 알고리즘을 도시한 도면이다. 도 6의 알고리즘 1에서 T는 입력 절의 토큰 리스트를 나타내고, D는 토큰 사전을 나타내며, neg_dic는 부정 어휘 사전을, pos_dic은 긍정 어휘 사전을 나타낸다. 또한,
Figure 112020003550492-pat00001
는 i 번째 어절의 원형을 나타내고,
Figure 112020003550492-pat00002
는 i 번째 어절의 형태소를 나타내며,
Figure 112020003550492-pat00003
는 i 번째 어절의 번호(index)를 나타낼 수 있다.
일 실시예에 따른 생성 장치는 도 6에 도시된 알고리즘 1을 수행하여 입력 절을 띄어 쓰기 단위로 나눈 토큰 리스트를 생성할 수 있다. 생성 장치는 토큰 리스트에 포함된 토큰을 감성 사전에 포함된 어휘의 어근 및 형태소 분석한 절과 비교하여 긍정 어휘에는 +1점을 부여하고, 부정 어휘에는 -1점을 부여할 수 있다.
일 실시예서는 다양한 문장들에 대해 감성 사전 매칭 알고리즘을 적용한 결과를 아래의 표1을 통해 설명한다.
Figure 112020003550492-pat00004
예를 들어, 위의 표 1에 기재된 문장 (1)은 감성 사전에 포함된 감성 어휘의 어근 중 부정을 나타내는 어근인 ‘실망/NNG’, 및 ‘우울/NNG’을 가진다. 생성 장치는 문장 (1)에 대해 도 6에 도시된 감성 사전 매칭 알고리즘을 수행하여 총 감성 점수로 -2점을 부여할 수 있다. 생성 장치는 -2점의 감성 점수에 따라 문장 (1)의 감성을 '부정'으로 분류할 수 있다.
문장 (2)는 감성 사전에 포함된 감성 어휘의 어근 중 긍정을 나타내는 ‘예쁘/VA’를 가진다. 문장 (2)에서 긍정을 나타내는 ‘좋다’는 한 글자로 이루어진 어근 ‘좋/VA’을 가지고, 일 실시예에서는 한 글자로 이루어진 어근을 추출 시에 제외하므로 해당 어근은 추출 시에 제외될 수 있다. 일 실시예에서는 어근 이외에도 어휘의 원형을 같이 감성 판단 자질로 사용함으로써 어근 ‘좋/VA’가 감성 판단 시에 제외되는 문제를 해결할 수 있다. 생성 장치는 '좋다'라는 어휘 원형이 감성 사전에 긍정 어휘로 저장되어 있으므로, 감성 사전 매칭을 통해 문장 (2)에 대한 총 감성 점수로 +2점을 부여할 수 있다. 생성 장치는 +2점의 감성 점수에 따라 문장 (2)의 감성을 '긍정'으로 분류할 수 있다.
문장 (3)은 감성 사전에 포함된 감성 어휘의 어근 중 긍정을 나타내는 ‘상쾌/XR’를 가진다. 생성 장치는 문장 (3)에 대해 도 6에 도시된 감성 사전 매칭 알고리즘을 수행하여 총 감성 점수로 +1점을 부여할 수 있다. 생성 장치는 +1점의 감성 점수에 따라 문장 (3)의 감성을 '긍정'으로 분류할 수 있다. 문장 (3)은 부정소 ‘않았다’로 인해 감성이 긍정에서 부정으로 반전되어야 되어 야 하지만 단순히 긍정 어휘와 부정 어휘의 빈도만으로 감성을 분류하는 경우, 문장 (3)이 긍정으로 잘못 분류될 수 있다.
이와 같이 감성 어휘의 빈도만을 이용해 문장(또는 절)의 감성을 분류하는 경우, 감성 변환 요소로 인해 감성이 잘못 분류한 문제가 발생할 수 있다.
예를 들어, 아래 표 2의 문장 (1)은 '부정'을 나타내지만, ‘좋지’라는 긍정 어휘만을 감성 사전에 매칭시키는 경우, 뒤에 나오는 부정소를 고려하지 않아 '긍정'으로 잘못 분류될 수 있다. 표 2의 문장 (2)는 '긍정'을 나타내지만, 어휘 ‘오류’는 부정 어휘에 해당하고, ‘극복’은 긍정 어휘에 해당하므로 최종적으로 '중립'으로 잘못 분류될 수 있다. 또한, 표 2의 문장 (3)은 정도 부사 ‘너무’가 ‘많다’와 결합하여 '부정'을 나타내지만, 감성을 가지는 어휘가 없어 '중립'으로 잘못 분류될 수 있다. 이 밖에도, 표 2의 문장 (4)는 부정을 나타내지만, ‘좋게’라는 긍정 어휘와 ‘경망한’이라는 부정 어휘로 인해 '중립'으로 잘못 분류될 수 있다.
Figure 112020003550492-pat00005
따라서, 일 실시예서는 부정소와 특정 어근으로 인해 감성이 반전되고, 정도 부사 ‘너무’로 인해 감성이 활성화되고, 또한, 특정 형태소로 인해 감성이 비활성화되는 유형을 찾아 감성이 잘못 분류되는 문제를 해결할 수 있다. 일 실시예에서는 이러한 부정소 등과 같은 감성 변환 요소가 존재하는 경우, 의존 구문 분석 및 형태소 분석을 수행해 감성 점수를 재설정할 수 있다.
도 7은 일 실시예에 따라 감성 점수를 재설정하는 방법을 나타낸 흐름도이다. 도 7을 참조하면, 일 실시예에 따른 생성 장치는 언어 요소들 간의 의존 관계를 파악하는 의존 구문 분석(dependency parsing) 및 형태소 분석 중 적어도 하나를 기초로, 적어도 하나의 절에 상기 감성 변환 요소가 존재하는지 여부를 결정할 수 있다(710).
단계(710)에서, 생성 장치는 예를 들어, 의존 구문 분석에 의해 적어도 하나의 절을 지배소와 의존소로 분류하고, 지배소와 의존소 간의 의존 관계를 기초로, 적어도 하나의 절에 감성 반전 요소 및 감성 활성화 요소 중 적어도 하나가 있는지 여부를 결정할 수 있다. 여기서, '지배소'는 의미의 중심이 되는 요소, 다시 말해 문장 구성 성분 중에서 최상위에 있는 요소를 의미하며, 예를 들어, "나는 운동을 좋아한다"라는 문장에서 문장의 구성 성분을 결정하는 '좋아한다'가 지배소에 해당할 수 있다. '의존소'는 지배소가 갖는 의미를 보완해 주는 요소, 다시 말해, 문장 구성 요소 중에서 지배 요소에 결합하는 하위 요소를 의미하며, 동사에 종속되는 주격이나 목적격에 해당할 수 있다. 예를 들어 ‘나는 운동을 좋아한다’라는 문장에서 ‘좋아한다’에 종속되는 ‘나는’과 ‘운동을’이 의존소에 해당한다.
또한, 단계(710)에서, 생성 장치는 예를 들어, 형태소 분석을 통해 적어도 하나의 절에 선행절의 감성을 비활성화시킴으로써 감성 어휘를 중립 어휘로 변환하는 특정 형태소가 있는지 여부를 판단할 수 있다. 특정 형태소가 존재하는 경우, 생성 장치는 적어도 하나의 절에 감성 비활성화 요소가 있는 것으로 결정할 수 있다.
생성 장치는 감성 변환 요소가 존재한다고 결정된 경우, 감성 변환 요소에 대응하는 점수를 반영하여 감성 점수를 재설정할 수 있다(720).
도 8은 일 실시예에 따른 의존 구문 분석 방법을 설명하기 위한 도면이다. 도 8을 참조하면, 예를 들어, "나는 밥을 먹는다"라는 문장의 의존 구문 분석 결과가 도시된다.
구문 분석은 문장의 구조를 파악하여 문장에 포함된 단어들 간의 관계를 찾아내는 작업으로 자연어 처리에서 중요한 작업에 해당할 수 있다. 구문 분석 방법으로는 구 구조 분석(Phrase Structure Parsing)과 의존 구문 분석(Dependency Parsing)이 있다. 구 구조 분석은 여러 언어 요소가 모여 구문 요소를 만들고 여러 구문 요소가 모여 더 큰 구문 요소를 만드는 방법이다. 의존 구문 분석은 두 언어 요소 사이의 의존 관계를 파악함으로써 문장을 분석하는 방법이다. 국어는 영어에 비해 어순이 자유로우므로 구 구조 분석보다 의존 구문 분석을 사용하는 것이 적합하다. 의존 구문 분석을 사용하면 한국어의 어순 자유성에 의한 문제를 해결할 수 있고, 구성 요소의 불연속성이나 생략 등과 같은 현상에 큰 영향을 받지 않는다. 의존 관계는 전술한 지배소와 의존소 사이에 존재할 수 있다.
도 8에 도시된 '나는 밥을 먹는다.”라는 문장에서, ‘나/NP+는/JX’은 체언(NP)이면서 주어(SBJ)를 나타내고, ‘밥/NNG+을/JKO’은 체언(NP)이면서 목적어(OBJ)를 나타내며, ‘먹/VV+는다/EF+./SF’는 동사구(VP)를 나타낸다. 그 리고, ‘나/NP+는/JX’, ‘밥/NNG+을/JKO’은 ‘먹/VV+는다 /EF+./SF’를 지배소로 가진다. 여기서, '체언'은 용언에 대립되는 용어로서, 조사의 도움을 받아 문장에서 주체적인 구실을 하는 단어에 해당할 수 있다. 예를 들어, 명사, 대명사, 수사 등이 체언에 속할 수 있다. 이와 같이 의존 구문 분석을 이용하면 문장의 의미와 형태를 파악하는데 도움이 된다.
일 실시예에서는 한국어 의존 구문 분석에서의 지배소와 의존소 간의 의존 관계를 이용하여 감성 반전 요소와 감성 활성화 요소를 찾고, 각 요소에 대응하는 점수를 감성 점수에 적용할 수 있다. 일 실시예서는 형태소 분석기와 의존 구문 분석기 API(Application Program Interface)를 사용해 의존 구문 분석을 수행할 수 있다.
도 9는 일 실시예에 따른 감성 변환 요소의 예시를 도시한 도면이다. 도 9를 참조하면, 일 실시예에 따른 감성 반전(sentiment reversal) 요소(910), 감성 활성화(sentiment activation) 요소(920), 및 감성 비활성화(sentiment deactivation) 요소(930)를 포함하는 감성 변환 요소들이 도시된다.
일 실시예에서는 의존 구문 분석 및 형태소 분석을 통해 파악한 감성 반전 요소, 감성 활성화 요소, 및 감성 비활성화 요소를 통해 감성이 변환되는 경우를 파악할 수 잇다.
감성 반전 요소(910)는 긍정 감성이 부정 감성으로, 또는 부정 감성이 긍정 감성으로 반전되는 것을 의미한다. 감성 반전 요소(910)는 예를 들어, 부정소 및 소멸, 해소, 상실의 의미를 가진 어근으로 구성될 수 있다.
감성 활성화 요소(920)는 감성을 가지지 않는 중립 어휘가 감성을 가진 감성 어휘로 변환되는 것을 의미한다. 감성 활성화 요소(920)는 예를 들어 '너무'와 같은 정도 부사(MAG)로 구성될 수 있다.
감성 비활성화 요소(930)는 감성 활성화와 반대로 감성을 가지던 감성 어휘가 감성을 가지지 않는 중립 어휘로 변환되는 것을 의미한다. 감성 비활성화 요소(930)는 예를 들어, '오히려', '~보다', '~아도', '~어도' 등과 같은 특정 형태소를 포함할 수 있다. 해당 문장에 비활성화 요소에 해당하는 특정 형태소가 포함된 경우, 특정 형태소로 인해 선행절의 감성이 비활성화될 수 있다.
아래의 도 10에 도시된 알고리즘 2는 의존 구문 분석에 의한 감성 반전과 감성 활성화를 나타내고, 아래의 도 13에 도시된 알고리즘 3은 특정 형태소에 의한 감성 비활성화를 나타낸다.
도 10은 일 실시예에 따른 감성 반전, 감성 활성화 알고리즘을 도시한 도면이다. 도 10의 알고리즘 2에서 T는 입력 절의 토큰 리스트를 나타내고, D는 토큰 사전을 나타내며, neg_dic는 부정 어휘 사전을, pos_dic은 긍정 어휘 사전을 나타낸다. 또한,
Figure 112020003550492-pat00006
는 i 번째 어절의 원형을 나타내고,
Figure 112020003550492-pat00007
는 i 번째 어절의 형태소를 나타내며,
Figure 112020003550492-pat00008
는 i 번째 어절의 어근을 나타낸다.
Figure 112020003550492-pat00009
는 i 번째 어절의 번호(index)를 나타내고,
Figure 112020003550492-pat00010
는 i 번째 어절의 헤드(head) 번호를 나타낼 수 있다.
일 실시예에 따른 생성 장치는 예를 들어, 지배소와 의존소 간의 의존 관계를 기초로, 적어도 하나의 절에 부정 성분이 포함되어 있는지 여부를 판단할 수 있다. 부정 성분은 예를 들어, 감성 어휘와 결합하여 감성을 반전시키는 부정소 및 감성 어휘와 결합하여 감성이 반전되는 어휘의 어근 중 적어도 하나를 포함할 수 있다. 여기서, 부정소는 예를 들어, '안', '않~', '아니하~', '못~', 및 '못하~' 등을 포함할 수 있다. 또한, '감성 어휘와 결합하여 감성이 반전되는 어휘'는 예를 들어, 소멸, 해소, 상실 등의 의미를 가지는 어휘 '없~', '사라지~', '해결', '극복', '풀리' 등에 해당할 수 있다. 적어도 하나의 절에 부정 성분이 포함된 것으로 판단되는 경우, 생성 장치는 적어도 하나의 절에 감성 반전 요소가 있는 것으로 결정할 수 있다.
예를 들어, 한국어의 부정문은 부정소의 위치에 따라 단형 부정문과 장형 부정문으로 나눌 수 있고, 또한, 부정소의 쓰임에 따라 ‘안’ 부정문과 ‘못’ 부정문으로 나눌 수 있다.
단형 부정문은 “나는 수학을 안 좋아한다.”와 같이 부정소가 서술어 앞에 치할 수 있다. 또한, 장형 부정문은 “나는 수학을 좋아하지 않는다.”와 같이 서술어인 용언의 어간에 연결어미 ‘-지’가 붙고 뒤에 부정소가 위치할 수 있다. 이와 같은 경우에는 ‘좋아하/VV’와 같이 긍정을 나타내는 어근이 있음에도 전체 문장을 보면 부정 감성을 나타낸다. 이와 같이 부정소와 감성 어휘가 수식이 되면 감성 반전이 이루어질 수 있다. 감성 반전 요소의 예시들을 아래의 도 11a 및 도 11b에 도시되어 있다.
또한, 생성 장치는 예를 들어, 적어도 하나의 절이 후행절을 부정적인 의미로 이끌거나, 또는 해당 문장에서 부정적으로 사용되는 특정 정도 부사(예를 들어, '너무')를 포함하는지 여부를 판단할 수 있다. 적어도 하나의 절이 특정 정도 부사를 포함한다고 판단되는 경우, 생성 장치는 적어도 하나의 절에 감성 활성화 요소가 있는 것으로 결정할 수 있다. 감성 활성화 요소의 예시들은 아래의 도 12에 도시되어 있다.
도 11a 및 도 11b는 실시예들에 따른 감성 반전 요소의 예시들을 도시한 도면이다.
그림 11a의 문장 (1) 및 문장 (2)는 단형 부정소에 의한 감성 반전으로 부정소 ‘안/MAG’이 감성 어휘를 지배소로 가지면 감성 어휘의 감성이 반전되는 경우를 나타낸다. 예를 들어, 문장 (1)는 부정소 ‘안/MAG’이 긍정 감성을 가지는 ‘좋아하/VV’를 지배소로 가지므로 감성이 '긍정'에서 '부정'으로 반전될 수 있다. 또한, 문장 (2)는 ‘안/MAG’이 부정 감성을 가지는 ‘싫어하/VV’를 지배소로 가지므로 감성이 '부정'에서 '긍정'으로 반전될 수 있다.
도 11a의 문장 (3) 및 문장 (4)는 장형 부정소에 의한 감성 반전을 나타내며, 감성을 가지는 용언의 어간에 연결 어미 ‘지/EC’가 붙고, 부정소를 지배소로 가지므로 용언의 어간의 감성이 반전되는 경우를 나타낸다. 예를 들어, 문장 (3)은 긍정 감성을 가지는 ‘편안/NNG’에 연결 어미 ‘지/EC’가 붙고, 부정소 ‘못하/VX’를 지배소로 가지므로 감성이 '긍정'에서 '부정'으로 반전될 수 있다. 또한, 문장 (4)는 부정 감성을 가지는 ‘두렵/VA’에 연결 어미 ‘지/EC’가 붙고, 부정소 ‘않/VX’을 지배소로 가지므로 감성이 '부정'에서 '긍정'으로 반전될 수 있다.
그림 11b의 문장 (5) 및 문장 (6)은 장형 부정소에 의한 다른 감성 반전을 나타내며, 문장 (3) 및 문장 (4)와 달리 감성 어휘의 용언인 지배소의 어간에 연결 어미 ‘지/EC’가 붙고, 용언이 부정소를 지배소로 가지므로 감성 어휘의 감성이 반전되는 경우를 나타낸다.
예를 들어, 문장 (5)는 긍정 감성을 가지는 ‘안정감/NNG’이 연결 어미 ‘지/EC’를 가지는 용언 ‘찾/VV+지/EC’를 지배소로 가지고, 용언이 부정소 ‘못하/VX’를 지배소로 가지므로 감성이 '긍정'에서 '부정'으로 반전될 수 있다. 또한, 문장 (6)은 부정 감성을 가지는 ‘의심/NNG’이 연결 어미 ‘지/EC’를 가지는 ‘되/VV+지/EC’를 지배소로 가지고, 용언이 부정소 ‘않/VX’을 지배소로 가지므로 감성이 '부정'에서 '긍정'으로 반전될 수 있다.
도 11b의 문장 (7) 및 문장 (8)은 감성 어휘와 결합했을 경우에 감성이 반전되는 어근(예를 들어, 소멸, 해소, 상실의 의미를 가지는 어근)을 가지고, 감성 어휘가 감성이 반전되는 어근을 지배소로 가지므로 감성이 반전되는 경우를 나타낸다.
예를 들어, 문장 (7)은 긍정 감성을 가지는 ‘자신감/NNG’이 ‘떨어지/VV’를 지배소로 가지므로 감성이 '긍정'에서 '부정'으로 반전될 수 있다. 문장(8)은 부정 감성을 가지는 ‘걱정/NNG’이 ‘사라지/VV’를 지배소로 가지므로 감성이 '부정'에서 '긍정'으로 반전될 수 있다.
도 12는 일 실시예에 따른 감성 활성화 요소의 예시들을 도시한 도면이다. 감성을 가지지 않는 어휘가 감성을 가지게 되어 감성이 활성화되는 감성 활성화 요소는 예를 들어, 정도 부사 ‘너무’를 포함할 수 있다. 정도 부사 ‘너무’는 이중적인 의미를 가진다. 정도 부사 ‘너무’의 본래 의미는 뒤에 이어지는 성분에 대한 정도의 지나침에 해당하며, 부정 의미를 나타내지만, 이와 달리 긍정 강조의 의미로도 사용될 수 있다.
일 실시예에서는 정도 부사 ‘너무’가 부정 의미로 사용되어 감성을 가지지 않는 중립 어휘가 부정 감성을 가지게 되는 경우에 대해 살펴본다.
정도 부사 ‘너무’는 문장에서 부정적으로 사용되는 경우에는 어떠한 기준에 대해 '지나친 나머지 오히려 바람직하지 못함’의 의미를 나타낼 수 있다. 예를 들어, 도 12의 문장 (1)은 사람이 앉아 있기에 적절한 정도가 기준이 되고, ‘너무’라는 말로 기준에 미치지 못한 상태를 강조하고 있으므로 부정의 감성을 가질 수 있다.
또한, 정도 부사 ‘너무’는 후행절을 부정적 의미로 이끄는 내용을 함축할 수 있다. 예를 들어, 문장 (2)는 ‘너무’가 후행 용언의 상태가 지나침을 강조하면서 생략된 후행절에 ‘그래서 걱정이다’라는 부정인 의미를 함축하고 있다. 그러므로 정도 부사 ‘너무’는 정도성을 나타내는 동시에 선행절이 지나친 나머지 부정적 결과를 초래하게 된다는 의미를 지니게 되어 두 가지 기능을 한다고 볼 수 있다. 이와 같이 정도 부사 ‘너무’로 인해 부정적인 감성을 가지게 되는 어휘도 의존 구문 분석을 통해 파악이 가능하다.
도 12의 문장 (1)은 정도 부사 ‘너무’가 ‘좁다’를 지배소로 가지는 구조이며, 이때 지배소인 ‘좁다’는 부정 감성을 가지게 된다. 또한, 문장 (2)는 ‘너무’가 ‘많다’를 지배소로 가지는 구조이며, 이때 지배소인 ‘많다’는 부정 감성을 가질 수 있다.
일 실시예에서는 정도 부사 ‘너무’의 지배소가 감성 사전의 긍정 어휘와 부정 어휘 둘 다 해당되지 않을 경우, 부정 감성을 가지는 것으로 결정할 수 다. 있다.
도 13은 일 실시예에 따른 감성 비활성화 알고리즘을 도시한 도면이고, 14는 일 실시예에 따른 감성 비활성화 요소의 예시들을 도시한 도면이다.
예를 들어, 정도 부사 ‘너무’로 인해 감성을 가지지 않는 어휘가 감성을 가지게 되는 경우가 있는 반면, 그 반대의 경우인 감성을 가진 어휘의 감성이 비활성화 되는 경우도 존재할 수 있다.
도 13에 도시된 알고리즘 3을 적용할 경우, 특정 형태소(예를 들어, '오히려~', '~보다', '~아도', 및 '~어도' 등)에 의해 선행의 감성이 비활성화될 수 있다. 알고리즘 3에서 T는 입력 절의 토큰 리스트를 나타내고, D는 토큰 사전을 나타낸다. 또한,
Figure 112020003550492-pat00011
는 i 번째 어절의 형태소를 나타내고,
Figure 112020003550492-pat00012
는 i 번째 어절의 번호(index)를 나타낼 수 있다.
예를 들어, 도 14의 문장(1)에서 ‘도가 넘치는 칭찬’은 '칭찬'과 같은 긍정 어휘로 인해 감성이 긍정으로 분류되지만 형태소 '오히려'에 의해 감성이 비활성화될 수 있다. 이 경우, 생성 장치는 ‘오히려/MAJ’의 후행절인 ‘위험하다’의 감성만을 판단하여 감성을 '부정'으로 분류할 수 있다.
도 14의 문장 (2)에서 ‘귀엽다는 생각이 들기보다는’은 긍정 어휘로 인해 긍정으로 감성이 분류가 되지만, 형태소 '~보다'에 의해 감성이 비활성화될 수 있다. 이 경우, 생성 장치는 ‘보다/JKB’의 후행절인 ‘불쌍하다는 생각이 들었다’의 감성만을 판단해 감성을 '부정'으로 분류할 수 있다.
도 14의 문장 (3)에서 ‘그것은 아무리 좋게 생각해도’는 '좋게'와 같은 긍정 어휘로 인해 감성이 긍정으로 분류되지만, 형태소 '~아도'에 의해 감성이 비활성화될 수 있다. 이 경우, 생성 장치는 ‘아도/EC’의 후행인 ‘경망한 짓이었소’의 감성만을 판단해 감성을 '부정'으로 분류할 수 있다.
도 15는 일 실시예에 따른 감성 레이블링 알고리즘을 도시한 도면이다. 도 14에 도시된 알고리즘 3에서, 입력(Input)은 토큰 사전(D), 및 감성 점수(S)이고, 출력(Output)은 감성 점수에 k라 레이블링된 데이터(즉, 어절)에 해당할 수 있다.
일 실시예에 따른 생성 장치는 전술한 의존 구문 분석 및 형태소 분석을 통해 어절 별로 부여된 점수를 모두 총합하고, 총합된 점수가 해당 어절의 최종적인 감성 점수가 될 수 있다. 생성 장치는 최종적인 감성 점수가 양수일 경우 긍정으로, 음수일 경우 부정으로 해당 어절의 감성을 레이블링할 수 있다.
생성 장치는 최종적인 감성 점수를 기준으로 감성 점수의 절댓값이 큰 상위 k개의 데이터를 추출해 학습 데이터를 생성할 수 있다..
도 16은 다른 실시예에 따른 감성 분석을 위한 학습 데이터 생성 방법을 나타낸 흐름도이다. 도 16을 참조하면, 일 실시예에 따른 생성 장치는 입력 문장("연기는 훌륭했지만, 전체적인 영상미가 좋지 않았다")이 수신되면(1610), 입력 문장을 {"연기는 훌륭했지만"}와 {"전체적인 영상미가 좋지 않았다"}의 절들로 나눌 수 있다(1620). 이때, 생성 장치는 예를 들어, '~는데', '~인데', '~으나', '~했느나', '~지만', '~고', '~거나', 및 '~나' 등과 같은 연결 어미를 기준으로 입력 문장을 절들로 나눌 수 있다.
생성 장치는 감성 사전을 기준으로 각 절에 포함된 어휘에 대해 감성 점수를 매길 수 있다(1630). 생성 장치는 예를 들어, 긍정 어휘에는 1점을 부여하고, 부정 어휘에는 -1점을 부여하여 {"연기는: 0, 훌륭했지만: 1"}와 {"전체적인: 0, 영상미가: 0, 좋지: 1, 않았다: 0"}와 같이 각 절에 대응하는 감성 점수를 매길 수 있다.
생성 장치는 각 절에 감성 전환, 감성 활성화, 및 감성 비활성화 등과 같은 감성 변환 요소가 포함되어 있는지를 판단할 수 있다(1640). 단계(1640)에서 각 절에 감성 변환 요소가 포함되지 않은 것으로 판단된 경우, 생성 장치는 감성 점수에 따른 레이블링을 수행할 수 있다(1660).
이와 달리, 단계(1640)에서 각 절에 감성 변환 요소가 포함된 것으로 판단된 경우, 생성 장치는 의존 구분 분석 및 형태소 분석을 통한 감성 점수 재설정을 수행할 수 있다(1650). 이에 따라 각 절의 감성 점수는 {"연기는: 0, 훌륭했지만: 1"}와 {"전체적인: 0, 영상미가: 0, 좋지: -1 , 않았다: 0"}와 같이 재설정될 수 있다.
이후, 생성 장치는 재설정된 감성 점수에 따른 레이블링을 수행할 수 있다(1660). 생성 장치는 감성 점수가 양수인 경우, 감성 '긍정'을 레이블링하고, 감성 점수가 음수인 경우, 감성 '부정'을 레이블링할 수 있다.
단계(1660)에서, 생성 장치는 예를 들어, "연기는 훌륭했지만"에 대한 감성 점수(0+1=1)에 따라 절 {"연기는 훌륭했지만"}에 대응하는 감성인 '긍정'을 레이블링할 수 있다. 또한, 생성 장치는 "전체적인 영상미가 좋지 않았다"에 대한 재설정된 감성 점수(0+0+-1+0= -1)에 따라 절 {"전체적인 영상미가 좋지 않았다"}에 대응하는 감성인 '부정'을 레이블링할 수 있다.
생성 장치는 감성 점수가 높은 Top-k 개의 절들을 추출하여 대용량 학습 데이터를 생성할 수 있다(1670).
생성 장치는 단계(1670)에서 생성한 학습 데이터를 이용하여 예를 들어, Bi-LSTM 신경망을 학습(1680)하여 감성 분석을 수행할 수 있다(1690).
도 17은 일 실시예에 따라 생성된 학습 데이터의 예시를 도시한 도면이다. 도 17에 도시된 표는 감성 점수를 기준으로 추출한 학습 데이터 문장의 예시이다. 추출된 학습 데이터를 보면 비교 감성과 부정 감성에 맞는 데이터가 추출된 것을 볼 수 있다. 그리고 도 17의 문장 (1)에서는 '안전'이라는 긍정 어휘가, 문장 (2)에서는 '재능'이라는 긍정 어휘가, 문장 (4) 에서는 '신경증'이라는 부정 어휘가 반복적으로 나타남에 따라 감성 점수가 높게 매겨진 것을 볼 수 있다.
도 18은 일 실시예에 따른 학습 데이터 생성 장치의 블록도이다. 도 18을 참조하면, 일 실시예에 따른 학습 데이터 생성 장치(1800)는 통신 인터페이스(1810), 프로세서(1830), 및 메모리(1850)를 포함한다. 통신 인터페이스(1810), 프로세서(1830), 및 메모리(1850)는 통신 버스(1805)를 통해 서로 통신할 수 있다.
인터페이스(1810)는 입력 문장을 수신한다.
프로세서(1830)는 입력 문장을 적어도 하나의 절로 분할한다. 프로세서(1830)는 감성 사전을 이용하여 적어도 하나의 절에 대응하는 감성 점수를 부여한다. 프로세서(1830)는 적어도 하나의 절에 감성 변환 요소가 존재하는지 여부에 기초하여, 적어도 하나의 절에 대응하는 감성 점수를 재설정한다. 프로세서(1830)는 감성 점수 및 재설정된 감성 점수 중 적어도 하나를 이용하여 적어도 하나의 절에 대응하는 감성을 레이블링한다. 프로세서(1830)는 감성이 레이블링된 절을 이용하여 학습 데이터를 생성한다.
프로세서(1830)는 언어 요소들 간의 의존 관계를 파악하는 의존 구문 분석 및 형태소 분석 중 적어도 하나를 기초로, 적어도 하나의 절에 감성 변환 요소가 존재하는지 여부를 결정할 수 있다. 프로세서(1830)는 감성 변환 요소가 존재한다고 결정된 경우, 감성 변환 요소에 대응하는 점수를 반영하여 감성 점수를 재설정할 수 있다.
메모리(1850)는 미리 설정된 감성 사전을 저장한다. 또한, 메모리(1820)는 프로세서(1830)가 생성한 학습 데이터를 저장할 수 있다.
또한, 프로세서(1830)는 도 1 내지 도 17을 통해 전술한 적어도 하나의 방법 또는 적어도 하나의 방법에 대응되는 알고리즘을 수행할 수 있다. 프로세서(1830)는 목적하는 동작들(desired operations)을 실행시키기 위한 물리적인 구조를 갖는 회로를 가지는 하드웨어로 구현된 데이터 처리 표시 장치일 수 있다. 예를 들어, 목적하는 동작들은 프로그램에 포함된 코드(code) 또는 인스트럭션들(instructions)을 포함할 수 있다. 예를 들어, 하드웨어로 구현된 학습 데이터 생성 장치(1800)는 마이크로프로세서(microprocessor), 중앙 처리 표시 장치(central processing unit), 프로세서 코어(processor core), 멀티-코어 프로세서(multi-core processor), 멀티프로세서(multiprocessor), ASIC(Application-Specific Integrated Circuit), FPGA(Field Programmable Gate Array)를 포함할 수 있다.
프로세서(1830)는 프로그램을 실행하고, 학습 데이터 생성 장치(1800)를 제어할 수 있다. 프로세서(1830)에 의하여 실행되는 프로그램 코드는 메모리(1850)에 저장될 수 있다.
메모리(1850)는 상술한 프로세서(1830)의 처리 과정에서 생성되는 다양한 정보들을 저장할 수 있다. 이 밖에도, 메모리(1850)는 각종 데이터와 프로그램 등을 저장할 수 있다. 메모리(1850)는 휘발성 메모리 또는 비휘발성 메모리를 포함할 수 있다. 메모리(1850)는 하드 디스크 등과 같은 대용량 저장 매체를 구비하여 각종 데이터를 저장할 수 있다.
실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 시스템이가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 실시예의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치를 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 시스템에 의하여 해석되거나 처리 시스템에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 시스템, 가상 시스템(virtual equipment), 컴퓨터 저장 매체 또는 시스템에 영구적으로, 또는 일시적으로 구체화(embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 하나 이상의 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.
이상과 같이 실시예들이 비록 한정된 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기를 기초로 다양한 기술적 수정 및 변형을 적용할 수 있다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 시스템, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.
그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 청구범위의 범위에 속한다.
1800: 학습 데이터 생성 장치
1805: 통신 버스
1810: 통신 인터페이스
1830: 프로세서
1850: 메모리

Claims (20)

  1. 프로세서에 의해 수행되는 학습 데이터 생성 방법에 있어서,
    입력 문장을 수신하는 단계;
    상기 입력 문장을 적어도 하나의 절(Clause)로 분할하는 단계;
    미리 저장된 감성 사전을 이용하여 상기 적어도 하나의 절에 대응하는 감성 점수를 부여하는 단계;
    상기 적어도 하나의 절에 감성 변환 요소가 존재하는지 여부에 기초하여, 상기 적어도 하나의 절에 대응하는 감성 점수를 재설정하는 단계;
    상기 감성 점수 및 상기 재설정된 감성 점수 중 적어도 하나를 이용하여 상기 적어도 하나의 절에 대응하는 감성을 레이블링(labeling)하는 단계; 및
    상기 감성이 레이블링된 절을 이용하여 학습 데이터를 생성하는 단계
    를 포함하고,
    상기 감성 점수를 재설정하는 단계는
    언어 요소들 간의 의존 관계를 파악하는 의존 구문 분석(dependency parsing) 및 형태소 분석(Morphological analysis) 중 적어도 하나를 기초로, 상기 적어도 하나의 절에 상기 감성 변환 요소가 존재하는지 여부를 결정하는 단계; 및
    상기 감성 변환 요소가 존재한다고 결정된 경우, 상기 감성 변환 요소에 대응하는 점수를 반영하여 상기 감성 점수를 재설정하는 단계
    를 포함하고,
    상기 감성 변환 요소가 존재하는지 여부를 결정하는 단계는
    상기 의존 구문 분석에 의해 상기 적어도 하나의 절을 지배소와 의존 소로 분류하는 단계; 및
    상기 지배소와 의존소 간의 의존 관계를 기초로, 상기 적어도 하나의 절에 감성 반전 요소 및 감성 활성화 요소 중 적어도 하나가 있는지 여부를 결정하는 단계
    를 포함하는,
    학습 데이터 생성 방법.
  2. 제1항에 있어서,
    상기 감성 변환 요소는
    제1 감성이 제2 감성으로 반전되는 감성 반전(sentiment reversal) 요소;
    감성을 가지지 않는 중립 어휘가 감성을 가지는 감성 어휘로 변환되는 감성 활성화(sentiment activation) 요소; 및
    상기 감성 어휘가 상기 중립 어휘로 변환되는 감성 비활성화(sentiment deactivation) 요소
    중 적어도 하나를 포함하는,
    학습 데이터 생성 방법.
  3. 삭제
  4. 삭제
  5. 제1항에 있어서,
    상기 감성 반전 요소 및 감성 활성화 요소 중 적어도 하나가 있는지 여부를 결정하는 단계는
    상기 의존 관계를 기초로, 상기 적어도 하나의 절에 부정 성분이 포함되어 있는지 여부를 판단하는 단계; 및
    상기 부정 성분이 포함된 것으로 판단되는 경우, 상기 적어도 하나의 절에 상기 감성 반전 요소가 있는 것으로 결정하는 단계
    를 포함하는, 학습 데이터 생성 방법.
  6. 제5항에 있어서,
    상기 부정 성분은
    감성 어휘와 결합하여 감성을 반전시키는 부정소, 및 상기 감성 어휘와 결합하여 감성이 반전되는 어휘의 어근 중 적어도 하나를 포함하는,
    학습 데이터 생성 방법.
  7. 제1항에 있어서,
    상기 감성 반전 요소 및 감성 활성화 요소 중 적어도 하나가 있는지 여부를 결정하는 단계는
    상기 적어도 하나의 절이 후행절을 부정적인 의미로 이끌거나, 또는 해당 문장에서 부정적으로 사용되는 특정 정도 부사를 포함하는지 여부를 판단하는 단계; 및
    상기 특정 정도 부사를 포함한다고 판단되는 경우, 상기 적어도 하나의 절에 상기 감성 활성화 요소가 있는 것으로 결정하는 단계
    를 포함하는, 학습 데이터 생성 방법.
  8. 제1항에 있어서,
    상기 감성 변환 요소가 존재하는지 여부를 결정하는 단계는
    형태소 분석을 통해 상기 적어도 하나의 절에 선행절의 감성을 비활성화 시킴으로써 감성 어휘를 중립 어휘로 변환하는 특정 형태소가 있는지 여부를 판단하는 단계; 및
    상기 특정 형태소가 존재하는 경우, 상기 적어도 하나의 절에 감성 비활성화 요소가 있는 것으로 결정하는 단계
    를 포함하는, 학습 데이터 생성 방법.
  9. 제1항에 있어서,
    상기 감성 점수를 부여하는 단계는
    상기 감성 사전에 포함된 어휘들 중 상기 적어도 하나의 절에 매칭되는 감성 어휘의 원형 및 상기 감성 어휘의 어근 중 적어도 하나를 이용하여 상기 적어도 하나의 절에 대응하는 감성 점수를 부여하는 단계
    를 포함하는,
    학습 데이터 생성 방법.
  10. 제9항에 있어서,
    상기 감성 점수를 부여하는 단계는
    형태소 분석을 통해 상기 감성 사전에 포함된, 상기 적어도 하나의 절에 매칭되는 감성 어휘의 어근을 추출하는 단계;
    상기 감성 사전에 포함된 감성 어휘의 원형, 및 상기 감성 어휘의 어근 중 적어도 하나를 상기 적어도 하나의 절에 포함된 형태소들에 매칭시키는 단계; 및
    상기 형태소들에 매칭된 감성 어휘의 원형 또는 상기 감성 어휘의 어근에 미리 부여된 감성 점수를 총합함으로써 상기 적어도 하나의 절에 대응하는 감성 점수를 부여하는 단계
    를 포함하는,
    학습 데이터 생성 방법.
  11. 제10항에 있어서,
    상기 감성 점수를 총합함으로써 상기 적어도 하나의 절에 대응하는 감성 점수를 부여하는 단계는
    상기 적어도 하나의 절을 띄어 쓰기 단위에 의해 토큰들로 나눈 토큰 리스트(token list)를 생성하는 단계; 및
    상기 토큰 리스트에 포함된 토큰들 각각에 매칭되는 감성 어휘의 어근에 대응하여 미리 부여된 감성 점수를 총합함으로써 상기 적어도 하나의 절에 대응하는 감성 점수를 부여하는 단계
    를 포함하는,
    학습 데이터 생성 방법.
  12. 제1항에 있어서,
    상기 적어도 하나의 절로 분할하는 단계는
    상기 입력 문장에 대한 형태소 분석에 의해 상기 입력 문장을 상기 적어도 하나의 절로 분할하는 단계
    를 포함하는,
    학습 데이터 생성 방법.
  13. 제12항에 있어서,
    상기 적어도 하나의 절로 분할하는 단계는
    상기 입력 문장의 형태소(morpheme)들을 분석하는 단계; 및
    상기 형태소들 중 연결 어미에 해당하는 형태소를 기준으로 상기 입력 문장을 상기 적어도 하나의 절로 분할하는 단계
    를 포함하는,
    학습 데이터 생성 방법.
  14. 제13항에 있어서,
    상기 형태소를 기준으로 상기 입력 문장을 상기 적어도 하나의 절로 분할하는 단계는
    상기 분석 결과를 기초로, 상기 형태소들에 대응하는 품사 태그들을 상기 형태소들에 부여하는 단계; 및
    상기 품사 태그들 중 연결 어미 태그가 부여된 형태소를 기준으로 상기 입력 문장을 상기 적어도 하나의 절로 분할하는 단계
    를 포함하는,
    학습 데이터 생성 방법.
  15. 제1항에 있어서,
    상기 감성 사전은
    특정 도메인에 영향을 받지 않는 독립적인 감성 어휘, 온라인 텍스트 데이터에서 사용되는 신조어 어휘, 및 이모티콘 중 적어도 하나를 포함하고,
    상기 감성 어휘, 상기 신조어 어휘 및 상기 이모티콘은
    긍정(positive), 부정(negative), 및 중립(neutral)의 감성으로 구분되는,
    학습 데이터 생성 방법.
  16. 제1항에 있어서,
    상기 적어도 하나의 절에 대응하는 감성을 레이블링하는 단계는
    상기 감성 점수 및 상기 재설정된 감성 점수를 총합하는 단계; 및
    상기 총합된 점수를 기초로, 상기 적어도 하나의 절에 대응하는 감성을 레이블링하는 단계
    를 포함하는, 학습 데이터 생성 방법.
  17. 제1항에 있어서,
    상기 학습 데이터를 생성하는 단계는
    상기 감성이 레이블링된 절에 대응하는 총합된 점수가 미리 설정된 기준 점수보다 높은지 여부를 결정하는 단계; 및
    상기 감성 점수가 상기 기준 점수보다 높은 절을 상기 학습 데이터로 설정하는 단계
    를 포함하는, 학습 데이터 생성 방법.
  18. 하드웨어와 결합되어 제1항 내지 제 2 항 및 제 5 항 내지 제17항 중 어느 하나의 항의 방법을 실행시키기 위하여 매체에 저장된 컴퓨터 프로그램.
  19. 입력 문장을 수신하는 통신 인터페이스;
    미리 설정된 감성 사전을 저장하는 메모리; 및
    상기 입력 문장을 적어도 하나의 절로 분할하고, 상기 감성 사전을 이용하여 상기 적어도 하나의 절에 대응하는 감성 점수를 부여하고, 상기 적어도 하나의 절에 감성 변환 요소가 존재하는지 여부에 기초하여, 상기 적어도 하나의 절에 대응하는 감성 점수를 재설정하고, 상기 감성 점수 및 상기 재설정된 감성 점수 중 적어도 하나를 이용하여 상기 적어도 하나의 절에 대응하는 감성을 레이블링하며, 상기 감성이 레이블링된 절을 이용하여 학습 데이터를 생성하는 프로세서
    를 포함하고,
    상기 프로세서는
    언어 요소들 간의 의존 관계를 파악하는 의존 구문 분석 및 형태소 분석 중 적어도 하나를 기초로, 상기 적어도 하나의 절에 상기 감성 변환 요소가 존재하는지 여부를 결정하고,
    상기 감성 변환 요소가 존재한다고 결정된 경우, 상기 감성 변환 요소에 대응하는 점수를 반영하여 상기 감성 점수를 재설정하고,
    상기 의존 구문 분석에 의해 상기 적어도 하나의 절을 지배소와 의존 소로 분류하고, 그리고
    상기 지배소와 의존소 간의 의존 관계를 기초로, 상기 적어도 하나의 절에 감성 반전 요소 및 감성 활성화 요소 중 적어도 하나가 있는지 여부를 결정하는,
    학습 데이터 생성 장치.


  20. 삭제
KR1020200004224A 2020-01-13 2020-01-13 감성 분석을 위한 학습 데이터 생성 방법 및 장치 KR102348177B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020200004224A KR102348177B1 (ko) 2020-01-13 2020-01-13 감성 분석을 위한 학습 데이터 생성 방법 및 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020200004224A KR102348177B1 (ko) 2020-01-13 2020-01-13 감성 분석을 위한 학습 데이터 생성 방법 및 장치

Publications (2)

Publication Number Publication Date
KR20210090906A KR20210090906A (ko) 2021-07-21
KR102348177B1 true KR102348177B1 (ko) 2022-01-06

Family

ID=77143516

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200004224A KR102348177B1 (ko) 2020-01-13 2020-01-13 감성 분석을 위한 학습 데이터 생성 방법 및 장치

Country Status (1)

Country Link
KR (1) KR102348177B1 (ko)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102626714B1 (ko) * 2021-10-08 2024-01-23 주식회사 리니토 자연어이해 학습 모델을 위한 학습데이터의 이중 증강 방법 및 장치
KR102646448B1 (ko) * 2021-11-12 2024-03-13 한국과학기술연구원 감정 상태 수치화 장치 및 방법
CN114648015B (zh) * 2022-03-15 2022-11-15 北京理工大学 一种基于依存关系注意力模型的方面级情感词识别方法
KR20230159019A (ko) 2022-05-13 2023-11-21 주식회사 아이패밀리에스씨 자동 생성 감성 사전 기반의 감성 분석 방법
KR102506706B1 (ko) * 2022-06-09 2023-03-06 주식회사 브레인벤쳐스 Bio 태그 데이터를 이용한 기계 학습 데이터 구축용 단말 및 ai 기반의 감정 파악 시스템

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100399582B1 (ko) * 1999-09-10 2003-09-26 한국전자통신연구원 한국어 구문 분석기 및 구문 분석 방법
KR101006491B1 (ko) * 2003-06-10 2011-01-10 윤재민 자연어 기반 감정인식, 감정표현 시스템 및 그 방법
KR101136007B1 (ko) * 2010-06-29 2012-04-20 (주)워드워즈 문서 감성 분석 시스템 및 그 방법
KR20150042532A (ko) * 2013-10-11 2015-04-21 에스케이텔레콤 주식회사 복합 문장 분석 장치, 이를 위한 기록매체

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
박상민 외 4명, "Bi-LSTM 기반의 한국어 감성사전 구축 방안", 지능정보연구 제24권 제4호, 2018,12., pp219-240. 1부.*
최민성 외 2명, "딥러닝 모델의 정확도 향상을 위한 감성사전 기반 대용량 학습데이터 구축 방안, 한글 및 한국어 정보처리 학술대회 논문집", 2018,10,12., pp106-111. 1부.*

Also Published As

Publication number Publication date
KR20210090906A (ko) 2021-07-21

Similar Documents

Publication Publication Date Title
KR102348177B1 (ko) 감성 분석을 위한 학습 데이터 생성 방법 및 장치
Crystal A dictionary of linguistics and phonetics
Habash Introduction to Arabic natural language processing
Carney A survey of English spelling
Blanchard et al. Modeling the contribution of phonotactic cues to the problem of word segmentation
Dickinson et al. Language and computers
Sampson et al. Grammar without grammaticality: Growth and limits of grammatical precision
Sproat et al. The taxonomy of writing systems: How to measure how logographic a system is
Al-Sowaidi Textuality in near-synonyms translations of the Holy Qurʾān into English
Turnbull et al. Contextual predictability and the prosodic realisation of focus: A cross-linguistic comparison
Huang et al. The Cambridge handbook of Chinese linguistics
Nag How children learn to use a writing system: Mapping evidence from an Indic orthography to written language in children’s books
Handel The cognitive role of semantic classifiers in modern Chinese writing as reflected in neogram creation
Cho et al. The Cambridge handbook of Korean linguistics
Darmayanti et al. Amplification and Transposition in English Commands into Indonesian Translation with Reference to Harry Potter's Novel
McGregor Unusual manner constructions in Shua (Khoe-Kwadi, Botswana)
Elhadary Linguistic and Cultural Differences Between English and Arabic Languages and their Impact on the Translation Process
Burkhardt et al. Developing a unified orthography<? br?> for Berawan: An endangered Bornean language
LaPolla Sino-Tibetan linguistics: critical concepts in linguistics, volume I to IV
Igarashi et al. Use of sound symbolism in sentiment classification
Iyengar Variation in Perso-Arabic<? br?> and Devanāgarī Sindhī orthographies: An overview
Alberts Meeting them halfway: Altering language conventions to facilitate human-robot interaction
Allen et al. Naturalistic reading in the L2 and the impact of word frequency and cross-linguistic similarity
Zeroual Syllable Variation Impact on Brand Name Preference
Sarma et al. An Affix Based Word Classification Method of Assamese Text.

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant