KR101500900B1 - 학습 데이터로부터 생성된 최종 분류기를 이용하여 텍스트를 분류하는 방법 및 시스템 - Google Patents

학습 데이터로부터 생성된 최종 분류기를 이용하여 텍스트를 분류하는 방법 및 시스템 Download PDF

Info

Publication number
KR101500900B1
KR101500900B1 KR20140051027A KR20140051027A KR101500900B1 KR 101500900 B1 KR101500900 B1 KR 101500900B1 KR 20140051027 A KR20140051027 A KR 20140051027A KR 20140051027 A KR20140051027 A KR 20140051027A KR 101500900 B1 KR101500900 B1 KR 101500900B1
Authority
KR
South Korea
Prior art keywords
text
learning data
classifiers
classifying
final classifier
Prior art date
Application number
KR20140051027A
Other languages
English (en)
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 KR20140051027A priority Critical patent/KR101500900B1/ko
Application granted granted Critical
Publication of KR101500900B1 publication Critical patent/KR101500900B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/30Semantic analysis

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

학습 데이터로부터 생성된 최종 분류기를 이용하여 텍스트를 분류하는 방법 및 시스템이 제시된다.
학습 데이터로부터 생성된 최종 분류기를 이용하여 텍스트를 분류하는 방법에 있어서, 텍스트를 수집하여 학습 데이터를 형성하는 단계; 상기 학습 데이터로부터 복수의 분류기들을 생성하는 단계; 상기 복수의 분류기들을 하나의 최종 분류기로 형성하는 단계; 및 상기 최종 분류기를 이용하여 새로운 텍스트를 분류하는 단계를 포함한다.

Description

학습 데이터로부터 생성된 최종 분류기를 이용하여 텍스트를 분류하는 방법 및 시스템{Method and System for Classifying Text Using Classifier Produced by Learning Data}
본 발명은 학습 데이터로부터 생성된 최종 분류기를 이용하여 텍스트를 분류하는 방법 및 시스템에 관한 것이다. 더욱 상세하게는 라벨이 정해진 문장 단위의 텍스트를 학습하여 새로운 텍스트의 성향을 분석하는 알고리즘을 이용하여 텍스트를 분류하는 방법 및 시스템에 관한 것이다.
오피니언 마이닝(Opinion Mining)은 문서로부터 사용자가 게재한 의견과 감정을 나타내는 패턴을 이용하여 특정 오브젝트에 대한 의견이 긍정인지 또는 중립, 부정인지를 찾아내는 기술이다. 이와 같은, 오피니언 마이닝은 일반적으로 다음과 같은 단계로 나타낼 수 있다.
첫 번째는, 유용한 정보라고 판단되는 여러 특징과 해당 특징이 어떤 의미를 가지는가에 대한 의견을 나타내는 어휘정보를 추출하는 특징 추출 단계로 나타낼 수 있으며, 두 번째는, 추출된 특징과 의견을 나타내는 어휘가 해당 정보소스에서 어떤 의미로 사용되었는가에 대한 판단 및 분류 단계로 나타낼 수 있다.
따라서, 종래 방법들은 각 적용분야나 언어에 따라 어휘를 추출해야 하는 문제점이 있다. 즉, 자동차 도메인에 사용된 키워드는 영화리뷰에 그대로 적용할 수 없다. 또한, 동일한 도메인이더라도 예를 들어, 사용된 언어가 영어이면 한국어에는 적용할 수가 없다. 그리고, 소셜 네트워크 서비스(Social Networking Service; SNS) 상에 은어와 유행어, 약어 등을 추출하는데 어려움이 있다.
종래의 오피니언 마이닝은 개별언어의 내용을 대상으로 어휘 또는 어의 수준에서 중립/긍정/부정 평가를 태깅한 것을 사용하는 방법으로, 영어의 워드넷(WordNet)의 각 어휘에 감성 극성을 부여한 감성사전인 센티워드넷(SentiWordNet) 방식이 대표적이며, 이를 기반으로 키워드 검색 방식을 적용하여 오피니언을 추출한다.
그러나, 종래 기술은 키워드 검색 방식을 적용하므로 의견을 나타내는 어휘정보를 추출해야 하고, 사용되는 키워드는 분석할 분야 및 언어에 종속된다. 또한, 긍정 어휘를 사용하지 않으면서 긍정을 표현하는 텍스트는 분류할 수 없는 한계를 가지고 있다. 그리고, 어휘를 수동적으로 태깅해야 하는 불편함이 있다.
본 발명의 배경이 되는 기술로 ROBERT E. SCHAPIRE 외 1. BoosTexter: A Boosting-based System for Text Categorization. Kluwer Academic Publishers, 2000., pp.135-168.가 있다.
본 발명이 이루고자 하는 기술적 과제는 라벨이 정해진 문장 단위의 텍스트를 학습하여 새로운 텍스트의 성향을 분석하는 알고리즘을 이용함으로써, 분석이 되지 않은 새로운 텍스트를 용이하게 분류할 수 있는 학습 데이터로부터 생성된 최종 분류기를 이용하여 텍스트를 분류하는 방법 및 시스템을 제공하는데 있다.
일 측면에 있어서, 본 발명에서 제안하는 학습 데이터로부터 생성된 최종 분류기를 이용하여 텍스트를 분류하는 방법에 있어서, 텍스트를 수집하여 학습 데이터를 형성하는 단계; 상기 학습 데이터로부터 복수의 분류기들을 생성하는 단계; 상기 복수의 분류기들을 하나의 최종 분류기로 형성하는 단계; 및 상기 최종 분류기를 이용하여 새로운 텍스트를 분류하는 단계를 포함한다.
상기 텍스트를 수집하여 학습 데이터를 형성하는 단계는 상기 텍스트를 수집하는 단계; 및 상기 텍스트를 긍정, 중립, 그리고 부정 중 어느 하나로 분류하여 상기 학습 데이터를 형성하는 단계를 포함할 수 있다.
상기 학습 데이터로부터 복수의 분류기들을 생성하는 단계는 상기 텍스트에 포함된 단어들의 동시 발생(Co-occurrence) 정보를 이용하여 용어 문서 행렬을 작성하는 단계; 상기 용어 문서 행렬을 특이값 분해(Singular Value Decomposition; SVD)를 이용하여 분해하는 단계; 상기 단어들을 클러스터링(Clustering) 하여 라벨(Hidden state)을 각각 부착하는 단계; 및 상기 라벨을 고려하여 상기 복수의 분류기들을 생성하는 단계를 포함할 수 있다.
상기 용어 문서 행렬을 특이값 분해를 이용하여 분해하는 단계는 상기 용어 문서 행렬을 특이값 분해하여 차원(Dimension)을 축소할 수 있다.
상기 학습 데이터로부터 복수의 분류기들을 생성하는 단계는 상기 텍스트 내에 포함된 단어들의 순서 및 라벨 중 적어도 어느 하나 이상을 고려하여, 상기 복수의 분류기들을 생성할 수 있다.
상기 학습 데이터로부터 복수의 분류기들을 생성하는 단계는 상기 긍정, 중립, 그리고 부정 중 어느 하나 이상의 상기 학습 데이터를 이용하여 상기 복수의 분류기들을 각각 생성할 수 있다.
상기 복수의 분류기들을 하나의 최종 분류기로 형성하는 단계는 각각의 상기 복수의 분류기들을 아다부스트(Adaboost)를 이용하여 하나의 최종 분류기를 형성 할 수 있다.
상기 복수의 분류기들은 은닉 마르코프 모델(Hidden Markov Model; HMM)이 가능하다.
상기 최종 분류기를 이용하여 새로운 텍스트를 분류하는 단계는 각각의 상기 복수의 분류기들을 이용하여 상기 새로운 텍스트 내의 단어들에 라벨을 부착하고, 문장의 확률 값을 측정하는 단계; 및 측정된 상기 확률 값에 따라 상기 문장을 긍정, 중립, 그리고 부정 중 어느 하나로 의사 결정을 내려 분류하는 단계를 포함할 수 있다.
다른 측면에 있어서, 본 발명에서 제안하는 학습 데이터로부터 생성된 최종 분류기를 이용하여 텍스트를 분류하는 방법에 있어서, 텍스트를 수집하여 학습 데이터를 형성하는 수집부; 상기 학습 데이터로부터 생성되는 복수의 분류기들; 상기 복수의 분류기들을 종합하여 형성되는 최종 분류기; 및 상기 최종 분류기를 이용하여 새로운 텍스트를 분류하는 판단부를 포함한다.
본 발명의 실시예들에 따르면 라벨이 정해진 문장 단위의 텍스트를 학습하여 새로운 텍스트의 성향을 분석하는 알고리즘을 이용함으로써, 분석이 되지 않은 새로운 텍스트를 용이하게 분류할 수 있는 학습 데이터로부터 생성된 최종 분류기를 이용하여 텍스트를 분류하는 방법 및 시스템을 제공할 수 있다.
도 1은 본 발명의 일 실시예에 따른 학습 데이터로부터 생성된 최종 분류기를 이용하여 텍스트를 분류하는 방법을 나타낸 순서도이다.
도 2는 본 발명의 일 실시예에 따른 텍스트를 수집하여 학습 데이터를 형성하는 방법을 나타낸 순서도이다.
도 3은 본 발명의 일 실시예에 따른 텍스트 내의 단어들을 정량적 데이터로 변환하여 복수의 분류기들을 생성하는 방법을 나타낸 순서도이다.
도 4는 본 발명의 일 실시예에 따른 최종 분류기를 이용하여 새로운 텍스트를 분류하는 방법을 나타낸 순서도이다.
도 5는 본 발명의 일 실시예에 따른 학습 데이터로부터 생성된 최종 분류기를 이용하여 텍스트를 분류하는 시스템을 나타낸 블록도이다.
도 6은 본 발명의 일 실시예에 따른 학습 데이터로부터 생성된 최종 분류기를 이용하여 텍스트를 분류하는 시스템 및 방법을 나타낸 블록도이다.
도 7은 본 발명의 일 실시예에 따른 용어 문서 행렬을 특이값 분해를 적용한 예를 나타낸 도이다.
도 8은 본 발명의 일 실시예에 따른 은닉 마르코프 모델을 생성한 예를 나타낸 도이다.
이하, 본 발명의 실시 예를 첨부된 도면을 참조하여 상세하게 설명한다.
본 발명은 라벨이 정해진 문장 단위의 텍스트를 학습하여 새로운 텍스트의 성향을 분석하는 알고리즘을 이용하여, 단어를 정량적 데이터로 변환하고, 단어들을 군집화하여 자동 태깅할 수 있다.
도 1은 본 발명의 일 실시예에 따른 학습 데이터로부터 생성된 최종 분류기를 이용하여 텍스트를 분류하는 방법을 나타낸 순서도이다.
단계(110)에서, 텍스트를 분류하는 시스템은 텍스트를 수집하여 학습 데이터를 형성할 수 있다. 이 때, 텍스트를 긍정, 중립, 그리고 부정 중 어느 하나로 판단하고 분류하여 학습 데이터를 형성할 수 있으며, 긍정, 중립, 그리고 부정 등의 라벨이 붙어 있는 텍스트를 분류하거나 텍스트를 수집한 다음 긍정, 중립, 그리고 부정 등으로 분류할 수 있다. 그리고, 필요에 따라 긍정, 중립, 그리고 부정 외의 판단 기준을 적용하는 것도 충분히 가능하다.
여기서, 텍스트는 문서, 문장 등으로, SNS 데이터, 리뷰(Review), 이력서, 논문 등에 사용되는 대부분의 텍스트들이 해당될 수 있다.
단계(120)에서, 텍스트를 분류하는 시스템은 학습 데이터로부터 텍스트 내의 단어들을 정량적 데이터로 변환하여 복수의 분류기들을 생성할 수 있다. 다시 말하면, 문서, 문장 내에 포함된 단어들의 동시 발생(Co-occurrence) 정보를 이용하여 단어들을 정량적 데이터로 변환한 다음, 클러스터링 하여 단어에 라벨(Hidden state)을 부착할 수 있다.
그리고, 텍스트 내에 포함된 단어들의 순서 및 라벨 중 적어도 어느 하나 이상을 고려하여, 복수의 분류기들을 생성할 수 있다. 또한, 긍정, 중립, 그리고 부정 중 어느 하나 이상의 학습 데이터를 이용하여 복수의 분류기들을 각각 생성할 수 있다.
여기서, 동시 발생(Co-occurrence)은 단어들이 같은 문장 내에서 동시에 발생하는 것을 의미한다. 예를 들어, '나는 배를 좋아한다.'에서 '나는', '배를', '좋아한다'의 3개 단어는 동시 발생했다고 표현할 수 있다.
그리고, 복수의 분류기들은 은닉 마르코프 모델(Hidden Markov Model; HMM)을 이용한 것이다.
단계(130)에서, 각각의 상기 복수의 분류기들을 하나의 최종 분류기로 형성할 수 있다. 이 때, 각각의 복수의 분류기들을 아다부스트(Adaboost)를 이용하여 하나의 최종 분류기를 형성할 수 있다.
최종 분류기를 이용하여 데이터 분류하는 방법을 [수학식 1]과 같이 표현할 수 있다.
Figure 112014040662704-pat00001
여기서, α는 가중치이고, h는 분류기이며, H는 최종 분류기이다. 그리고, x는 텍스트를 나타내며, sign(x)에서 x가 0보다 크거나 같은 경우 1, x가 0보다 작은 경우 0으로 구분하여 긍정, 부정 등의 의사표현을 나타낼 수 있다.
단계(140)에서, 최종 분류기를 이용하여 새로운 텍스트를 용이하게 분류할 수 있다. 따라서, 복수의 분류기(일례로, 긍정 HMM, 부정 HMM)가 모여 1개의 최종 분류기를 형성할 수 있다.
텍스트를 분류하는 방법에 대한 더 구체적인 내용은 아래에서 계속 설명하기로 한다.
도 2는 본 발명의 일 실시예에 따른 텍스트를 수집하여 학습 데이터를 형성하는 방법을 나타낸 순서도이다.
도 2를 참조하면, 텍스트를 수집하여 학습 데이터를 형성하는 방법은 단계(111)에서, 텍스트를 수집할 수 있다.
단계(112)에서, 텍스트를 긍정, 중립, 그리고 부정 중 어느 하나로 분류하여 학습 데이터를 형성할 수 있다. 그리고, 긍정, 중립, 그리고 부정 등의 라벨이 붙어 있는 텍스트를 분류하거나 텍스트를 수집한 다음 긍정, 중립, 그리고 부정 등으로 분류할 수 있다.
도 3은 본 발명의 일 실시예에 따른 텍스트 내의 단어들을 정량적 데이터로 변환하여 복수의 분류기들을 생성하는 방법을 나타낸 순서도이다.
도 3을 참조하면, 텍스트 내의 단어들을 정량적 데이터로 변환하여 복수의 분류기들을 생성하는 방법은 단계(121)에서, 단어들의 동시 발생 정보를 이용하여 용어 문서 행렬(term-document matrix)을 작성할 수 있다.
단계(122)에서, 용어 문서 행렬을 특이값 분해(Singular Value Decomposition; SVD)를 적용하여 분해할 수 있으며, 용어 문서 행렬을 특이값 분해를 이용하여 차원(Dimension)을 축소할 수 있다.
이에 따라, 용어 문서 행렬(term-document matrix)(A)을 특이값 분해를 적용하여, A=U*S*V'로 분해할 수 있다. 그리고, B=US를 생성할 수 있다.
단계(123)에서, 상기 단어들을 클러스터링(Clustering) 하여 라벨(Hidden state)을 각각 부착할 수 있다. 그리고, B=US를 생성 한 뒤, 차원에 따른 용어(term by dimension)인 B를 열(row) 별로 k-평균 클러스터링(k-means clustering) 기법으로 단어들을 클러스터링 하여 단어에 라벨(Hidden state)을 부착할 수 있다.
단계(124)에서, 텍스트 내에 포함된 단어들의 순서 및 라벨 중 적어도 어느 하나 이상을 고려하여, 복수의 분류기들을 생성할 수 있다. 또한, 긍정, 중립, 그리고 부정 중 어느 하나 이상의 학습 데이터를 이용하여 복수의 분류기들을 각각 생성할 수 있다.
여기서, 복수의 분류기들은 은닉 마르코프 모델(Hidden Markov Model; HMM)을 의미할 수 있다.
즉, 텍스트 내의 단어들을 정량적 데이터로 변환하여 은닉 마르코프 모델(Hidden Markov Model; HMM)을 생성할 수 있다.
문서, 문장 등의 내에서 단어들의 순서와 라벨(Hidden state)을 고려하여 P, Q, p0 행렬 생성할 수 있다.
예를 들면, 아래와 같이 나타낼 수 있다.
Figure 112014040662704-pat00002
[표 1]은 위에 제시된 예문에서 P는 라벨(Hidden state) 간의 전이 확률을 나타낸 표이다.
Figure 112014040662704-pat00003
[표 2]에서 Q는 라벨(Hidden state)에서 단어들의 발현 확률을 나타낸 표이다.
Figure 112014040662704-pat00004
[표3]에서 p0은 문서, 문장 등에서 첫 단어의 라벨(Hidden state)의 비율을 나타낸 표이다.
Figure 112014040662704-pat00005
이 때, 긍정으로 이루어진 학습 데이터와, 부정으로 이루어진 학습 데이터 등으로부터 각각 분류기를 생성할 수 있다. 즉, 학습 데이터를 이용하여 각각의 은닉 마르코프 모델(Hidden Markov Model; HMM)을 형성할 수 있다.
도 4는 본 발명의 일 실시예에 따른 최종 분류기를 이용하여 새로운 텍스트를 분류하는 방법을 나타낸 순서도이다.
도 4를 참조하면, 단계(141)에서, 각각의 복수의 분류기들을 이용하여 새로운 텍스트 내의 단어들에 라벨을 부착하고, 문장의 확률 값을 측정할 수 있다.
예를 들면, 아래와 같은 문장(텍스트)에 각각의 단어들에 라벨을 부착할 수 있다.
그리고, 앞에서 설명한 P, Q, p0를 이용하여 비터비(Viterbi) 알고리즘을 통해 확률 값을 계산 할 수 있다.
prob = p0(H1)*Q11*P11*Q21*P13*Q43*P32*Q62*P22*Q82
여기서, 확률 값들의 분포를 이용하여 분류 기준 값(α)을 설정할 수 있다.
일례로, 긍정 분류기(HMM)의 경우에 분류 기준 값의 크기와 비교하여 다음과 같이 나타낼 수 있다.
문장의 확률 값 < α: 부정
문장의 확률 값 > α: 긍정
이 때, 문장의 확률 값이 분류 기준 값(α)과 같은 경우에는 중립으로 구분할 수도 있으며, 필요에 따라 또 다른 의사결정으로 구분하는 것도 가능하다.
단계(142)에서, 측정된 확률 값에 따라 문장을 긍정, 중립, 그리고 부정 중 어느 하나로 의사 결정을 내려 분류할 수 있다.
이에 따라, 긍정 분류기(HMM)의 결과와 부정 분류기(HMM)의 결과가 같은 경우에는 중립의 의사결정 내릴 수 있으며, 긍정 분류기의 결과와 부정 분류기의 결과가 같지 않은 경우에는 문서의 확률 값이 높은 쪽으로 의사결정을 내릴 수 있다.
일례로, 긍정 분류기로 측정한 확률 값이 부정 분류기로 측정한 확률 값 보다 큰 경우에는 긍정으로 판단할 수 있다.
도 5는 본 발명의 일 실시예에 따른 학습 데이터로부터 생성된 최종 분류기를 이용하여 텍스트를 분류하는 시스템을 나타낸 블록도이다.
도 5를 참조하면, 학습 데이터로부터 생성된 최종 분류기를 이용하여 텍스트를 분류하는 시스템은 수집부(210), 복수의 분류기들(220), 최종 분류기(230), 그리고 판단부(240)를 포함할 수 있다.
수집부(210)는 텍스트를 수집하여 학습 데이터를 형성할 수 있다. 이 때, 텍스트를 긍정, 중립, 그리고 부정 중 어느 하나로 판단하고 분류하여 학습 데이터를 형성할 수 있으며, 긍정, 중립, 그리고 부정 등의 라벨이 붙어 있는 텍스트를 분류하거나 텍스트를 수집한 다음 긍정, 중립, 그리고 부정 등으로 분류할 수 있다. 그리고, 필요에 따라 긍정, 중립, 그리고 부정 외의 판단 기준을 적용하는 것도 충분히 가능하다.
복수의 분류기들(220)은 수집부(210)에 의해 형성된 학습 데이터로부터 텍스트 내의 단어들을 정량적 데이터로 변환하여 생성할 수 있다. 다시 말하면, 복수의 분류기들(220)은 문서, 문장 내에 포함된 단어들의 동시 발생(Co-occurrence) 정보를 이용하여 단어들을 정량적 데이터로 변환한 다음, 클러스터링 하여 단어에 라벨(Hidden state)을 부착할 수 있다.
그리고, 복수의 분류기들(220)은 텍스트 내에 포함된 단어들의 순서 및 라벨 중 적어도 어느 하나 이상을 고려하여 생성할 수 있다. 또한, 긍정, 중립, 그리고 부정 중 어느 하나 이상의 학습 데이터를 이용하여 복수의 분류기들(220)을 각각 생성할 수 있다.
그리고, 복수의 분류기들(220)은 은닉 마르코프 모델(Hidden Markov Model; HMM)을 이용한 것일 수 있다.
최종 분류기(230)는 각각의 복수의 분류기들(220)을 하나의 종합하여 형성할 수 있다. 이 때, 각각의 복수의 분류기들(220)을 아다부스트(Adaboost)를 이용하여 하나의 최종 분류기(230)를 형성할 수 있다.
판단부(240)는 최종 분류기(230)를 이용하여 새로운 텍스트를 용이하게 분류할 수 있다.
도 6은 본 발명의 일 실시예에 따른 학습 데이터로부터 생성된 최종 분류기를 이용하여 텍스트를 분류하는 시스템 및 방법을 나타낸 블록도이다.
도 6을 참조하면, 학습 데이터(310)는 텍스트를 수집하여 데이터를 형성할 수 있다. 이 때, 텍스트를 긍정, 중립, 그리고 부정 중 어느 하나로 판단하고 분류하여 학습 데이터를 형성할 수 있으며, 긍정, 중립, 그리고 부정 등의 라벨이 붙어 있는 텍스트를 분류하거나 텍스트를 수집한 다음 긍정, 중립, 그리고 부정 등으로 분류할 수 있다.
그리고, 라벨 부착부(320)는 단어들의 동시 발생 정보를 이용하여 용어 문서 행렬(321)을 작성하고, 용어 문서 행렬을 특이값 분해(322)를 적용하여 분해할 수 있으며, 단어들을 클러스터링(323) 하여 라벨(Hidden state)을 각각 부착할 수 있다.
또한, 텍스트 내에 포함된 단어들의 순서 및 라벨 중 적어도 어느 하나 이상을 고려하여, 복수의 분류기들(330)을 생성할 수 있다. 이 때, 긍정, 중립, 그리고 부정 중 어느 하나 이상의 학습 데이터를 이용하여 복수의 분류기들을 각각 생성할 수도 있다.
이 후, 복수의 분류기들(330)을 아다부스팅(Adaboosting)(340) 하여 하나의 최종 분류기(350)를 형성할 수 있다.
따라서, 새로운 텍스트인 테스트 데이터(360)을 최종 분류기(350)를 이용하여 용이하게 분류하여, 분류된 테스트 데이터(370)를 형성할 수 있다.
(실시예)
학습 데이터로부터 생성된 최종 분류기를 이용하여 텍스트를 분류하는 방법 및 시스템을 더 구체적으로 접근하기 위해 영화리뷰(영어) 분석을 실시한 예를 통해 설명하기로 한다.
우선, 학습 데이터를 형성하기 위하여, 텍스트를 긍정, 부정으로 각각 수집할 수 있다.
[표 4]는 본 발명의 일 실시예에 따른 학습 데이터의 예를 나타낸다.
Figure 112014040662704-pat00006
이 후, 수집한 학습 데이터를 이용하여 용어 문서 행렬로 만들 수 있다.
[표 5]는 본 발명의 일 실시예에 따른 용어 문서 행렬의 예를 나타낸다.
Figure 112014040662704-pat00007
도 7의 (a)는 본 발명의 일 실시예에 따른 용어 문서 행렬을 특이값 분해를 적용한 예를 나타낸 도이다.
도 7의 (a)를 참조하면, 용어 문서 행렬(term-document matrix)(A)을 특이값 분해(SVD)를 적용하여 A=U*S*V'로 분해할 수 있다. 그리고, 새로운 행렬 B(term-dimension)=U*S를 생성한 후, 단어들을 클러스터링 할 수 있다.
도 8은 본 발명의 일 실시예에 따른 은닉 마르코프 모델을 생성한 예를 나타낸 도이다.
도 8을 참조하면, 최종 분류기인 은닉 마르코프 모델(Hidden Markov Model; HMM)을 생성할 수 있다. 그리고, 앞에서 클러스터링한 정보를 이용하고, 학습 데이터를 이용하여 P,Q, p0를 생성할 수 있다. 이 때, 각각의 성향(긍정, 부정)에 대해 분류기를 각각 생성하는 것이 바람직하다.
이 후, 학습 데이터들의 일부분을 이용하여, l(B의 차원), n(클러스터 수)를 조정하여 여러 개의 분류기를 생성할 수 있다.
마지막으로, 복수의 분류기들을 아다부스트(Adaboost) 기법을 적용하여 최종 분류기인 최종 은닉 마르코프 모델(Ensemble-HMM)을 생성할 수 있다.
따라서, 최종 분류기를 이용하여 새로운 텍스트를 분류할 수 있다.
각각의 복수의 분류기들이 새로운 텍스트 단어의 라벨(Hidden state)을 파악하고, 새로운 텍스트의 확률 값을 계산하여 결론을 내릴 수 있다.
일례로, [표 6]에서 다음의 문장을 분석할 수 있다.
This is one of polanski best films.
Figure 112014040662704-pat00008
여기서, 새로운 텍스트의 확률 값은 최종 분류기의 [수학식 1]을 이용하여 [수학식 2]와 같이 표현할 수 있다.
Figure 112014040662704-pat00009
이 때, H는 최종 분류기이고, x는 텍스트를 나타내며, sign(x)에서 x가 0보다 크거나 같은 경우 1, x가 0보다 작은 경우 0으로 구분하여 1은 긍정의 의사표현으로 분류하고, 0은 부정의 의사표현으로 분류할 수 있다.
따라서, 상기 식은 긍정의 의사표현으로 분류할 수 있다.
이와 같이, 학습 데이터로부터 생성된 최종 분류기를 이용하여 텍스트를 분류하는 방법 및 시스템은 SNS 데이터, 리뷰(Review), 이력서 등에 사용되는 대부분의 텍스트들에 적용이 가능하며, 각 문장들을 분석하여 텍스트의 성향을 나타낼 수 있다. 예를 들어, 제품에 대한 긍정적인 문장, 비난적인 문장 등을 수집하여 학습 시킨 후, 새로운 텍스트(분석되지 않은)에 대해 어떤 성향의 문장인지 판단할 수 있으며, 이를 통해 제품의 이미지 분석을 할 수 있다.
따라서, 상품에 대한 이미지 분석, 소비자의 선호도 분석, 지원자의 인재상 분석, 글쓴이의 성격 분석 등이 가능하고, 문서 분류 및 논문 분류 등 다양한 분야에서 적용이 가능하다.
또한, 키워드 선정 및 추출을 필요로 하지 않으며, 도메인(자동차, 카메라, 영화리뷰 등)와 언어(영어, 한국어 등)에 종속되지 않으므로, 학습 데이터가 잘 수집되어있는 경우에 대부분의 텍스트 문서에 적용이 가능하다.
이상에서 설명된 장치는 하드웨어 구성요소, 소프트웨어 구성요소, 및/또는 하드웨어 구성요소 및 소프트웨어 구성요소의 조합으로 구현될 수 있다. 예를 들어, 실시예들에서 설명된 장치 및 구성요소는, 예를 들어, 프로세서, 컨트롤러, ALU(arithmetic logic unit), 디지털 신호 프로세서(digital signal processor), 마이크로컴퓨터, FPA(field programmable array), PLU(programmable logic unit), 마이크로프로세서, 또는 명령(instruction)을 실행하고 응답할 수 있는 다른 어떠한 장치와 같이, 하나 이상의 범용 컴퓨터 또는 특수 목적 컴퓨터를 이용하여 구현될 수 있다. 처리 장치는 운영 체제(OS) 및 상기 운영 체제 상에서 수행되는 하나 이상의 소프트웨어 애플리케이션을 수행할 수 있다. 또한, 처리 장치는 소프트웨어의 실행에 응답하여, 데이터를 접근, 저장, 조작, 처리 및 생성할 수도 있다. 이해의 편의를 위하여, 처리 장치는 하나가 사용되는 것으로 설명된 경우도 있지만, 해당 기술분야에서 통상의 지식을 가진 자는, 처리 장치가 복수 개의 처리 요소(processing element) 및/또는 복수 유형의 처리 요소를 포함할 수 있음을 알 수 있다. 예를 들어, 처리 장치는 복수 개의 프로세서 또는 하나의 프로세서 및 하나의 컨트롤러를 포함할 수 있다. 또한, 병렬 프로세서(parallel processor)와 같은, 다른 처리 구성(processing configuration)도 가능하다.
소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치를 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 가상 장치(virtual equipment), 컴퓨터 저장 매체 또는 장치, 또는 전송되는 신호 파(signal wave)에 영구적으로, 또는 일시적으로 구체화(embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 하나 이상의 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.
실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 실시예의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이상과 같이 실시예들이 비록 한정된 실시예와 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기의 기재로부터 다양한 수정 및 변형이 가능하다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.
그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 특허청구범위의 범위에 속한다.

Claims (10)

  1. 학습 데이터로부터 생성된 최종 분류기를 이용하여 텍스트를 분류하는 방법에 있어서,
    텍스트를 수집하여 학습 데이터를 형성하는 단계;
    상기 학습 데이터로부터 복수의 분류기들을 생성하는 단계;
    상기 복수의 분류기들을 하나의 최종 분류기로 형성하는 단계; 및
    상기 최종 분류기를 이용하여 새로운 텍스트를 분류하는 단계
    를 포함하고,
    상기 학습 데이터로부터 복수의 분류기들을 생성하는 단계는
    상기 텍스트에 포함된 단어들의 동시 발생(Co-occurrence) 정보를 이용하여 용어 문서 행렬을 작성하는 단계;
    상기 용어 문서 행렬을 특이값 분해(Singular Value Decomposition; SVD)를 이용하여 분해하는 단계;
    상기 단어들을 클러스터링(Clustering) 하여 라벨(Hidden state)을 각각 부착하는 단계; 및
    상기 라벨을 고려하여 상기 복수의 분류기들을 생성하는 단계
    를 포함하는 학습 데이터로부터 생성된 최종 분류기를 이용하여 텍스트를 분류하는 방법.
  2. 제1항에 있어서,
    상기 텍스트를 수집하여 학습 데이터를 형성하는 단계는
    상기 텍스트를 수집하는 단계; 및
    상기 텍스트를 긍정, 중립, 그리고 부정 중 어느 하나로 분류하여 상기 학습 데이터를 형성하는 단계
    를 포함하는 학습 데이터로부터 생성된 최종 분류기를 이용하여 텍스트를 분류하는 방법.
  3. 삭제
  4. 제1항에 있어서,
    상기 용어 문서 행렬을 특이값 분해를 이용하여 분해하는 단계는
    상기 용어 문서 행렬을 특이값 분해하여 차원(Dimension)을 축소하는 것
    을 특징으로 하는 학습 데이터로부터 생성된 최종 분류기를 이용하여 텍스트를 분류하는 방법.
  5. 제1항에 있어서,
    상기 학습 데이터로부터 복수의 분류기들을 생성하는 단계는
    상기 텍스트 내에 포함된 단어들의 순서 및 라벨 중 적어도 어느 하나 이상을 고려하여, 상기 복수의 분류기들을 생성하는 것
    을 특징으로 하는 학습 데이터로부터 생성된 최종 분류기를 이용하여 텍스트를 분류하는 방법.
  6. 제2항에 있어서,
    상기 학습 데이터로부터 복수의 분류기들을 생성하는 단계는
    상기 긍정, 중립, 그리고 부정 중 어느 하나 이상의 상기 학습 데이터를 이용하여 상기 복수의 분류기들을 각각 생성하는 것
    을 특징으로 하는 학습 데이터로부터 생성된 최종 분류기를 이용하여 텍스트를 분류하는 방법.
  7. 제1항에 있어서,
    상기 복수의 분류기들을 하나의 최종 분류기로 형성하는 단계는
    각각의 상기 복수의 분류기들을 아다부스트(Adaboost)를 이용하여 하나의 최종 분류기를 형성하는 것
    을 특징으로 하는 학습 데이터로부터 생성된 최종 분류기를 이용하여 텍스트를 분류하는 방법.
  8. 제1항에 있어서,
    상기 복수의 분류기들은
    은닉 마르코프 모델(Hidden Markov Model; HMM)인 것
    을 특징으로 하는 학습 데이터로부터 생성된 최종 분류기를 이용하여 텍스트를 분류하는 방법.
  9. 제1항에 있어서,
    상기 최종 분류기를 이용하여 새로운 텍스트를 분류하는 단계는
    각각의 상기 복수의 분류기들을 이용하여 상기 새로운 텍스트 내의 단어들에 라벨을 부착하고, 문장의 확률 값을 측정하는 단계; 및
    측정된 상기 확률 값에 따라 상기 문장을 긍정, 중립, 그리고 부정 중 어느 하나로 의사 결정을 내려 분류하는 단계
    를 포함하는 학습 데이터로부터 생성된 최종 분류기를 이용하여 텍스트를 분류하는 방법.
  10. 학습 데이터로부터 생성된 최종 분류기를 이용하여 텍스트를 분류하는 시스템에 있어서,
    텍스트를 수집하여 학습 데이터를 형성하는 수집부;
    상기 학습 데이터로부터 생성되는 복수의 분류기들;
    상기 복수의 분류기들을 종합하여 형성되는 최종 분류기; 및
    상기 최종 분류기를 이용하여 새로운 텍스트를 분류하는 판단부
    를 포함하고,
    상기 학습 데이터로부터 생성되는 복수의 분류기들은,
    상기 텍스트에 포함된 단어들의 동시 발생(Co-occurrence) 정보를 이용하여 용어 문서 행렬을 작성하고, 상기 용어 문서 행렬을 특이값 분해(Singular Value Decomposition; SVD)를 이용하여 분해하고, 상기 단어들을 클러스터링(Clustering) 하여 라벨(Hidden state)을 각각 부착하고, 상기 라벨을 고려하여 생성되는 것
    을 특징으로 하는 학습 데이터로부터 생성된 최종 분류기를 이용하여 텍스트를 분류하는 시스템.
KR20140051027A 2014-04-28 2014-04-28 학습 데이터로부터 생성된 최종 분류기를 이용하여 텍스트를 분류하는 방법 및 시스템 KR101500900B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR20140051027A KR101500900B1 (ko) 2014-04-28 2014-04-28 학습 데이터로부터 생성된 최종 분류기를 이용하여 텍스트를 분류하는 방법 및 시스템

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR20140051027A KR101500900B1 (ko) 2014-04-28 2014-04-28 학습 데이터로부터 생성된 최종 분류기를 이용하여 텍스트를 분류하는 방법 및 시스템

Publications (1)

Publication Number Publication Date
KR101500900B1 true KR101500900B1 (ko) 2015-03-12

Family

ID=53027011

Family Applications (1)

Application Number Title Priority Date Filing Date
KR20140051027A KR101500900B1 (ko) 2014-04-28 2014-04-28 학습 데이터로부터 생성된 최종 분류기를 이용하여 텍스트를 분류하는 방법 및 시스템

Country Status (1)

Country Link
KR (1) KR101500900B1 (ko)

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101627550B1 (ko) * 2015-06-18 2016-06-07 주식회사 스토리안트 기계학습 기반 지능형 기록물 공개관리 시스템
KR20180048226A (ko) * 2016-10-29 2018-05-10 한양대학교 산학협력단 피부 상태 분류 장치와, 그 장치에서 사용되는 피부 상태 분류 모형을 생성하는 장치 및 그 방법
KR20180078010A (ko) * 2016-12-29 2018-07-09 (주) 더아이엠씨 패션 분야의 단어 구 단위 감성분석방법 및 이를 포함하는 저장매체
KR102057184B1 (ko) * 2017-05-01 2019-12-18 도요타지도샤가부시키가이샤 흥미 판정 장치, 흥미 판정 방법, 및 기억 매체
KR20200103174A (ko) * 2019-02-12 2020-09-02 주식회사 자이냅스 문서 학습 프로그램
KR20200103169A (ko) * 2019-02-12 2020-09-02 주식회사 자이냅스 문서 학습 방법
KR20200103173A (ko) * 2019-02-12 2020-09-02 주식회사 자이냅스 문서 학습 방법
KR20200103168A (ko) * 2019-02-12 2020-09-02 주식회사 자이냅스 문서 학습 장치
KR20200103172A (ko) * 2019-02-12 2020-09-02 주식회사 자이냅스 문서 학습 장치
KR20200103175A (ko) * 2019-02-12 2020-09-02 주식회사 자이냅스 기록매체
KR20200103170A (ko) * 2019-02-12 2020-09-02 주식회사 자이냅스 문서 학습 프로그램
KR20200103171A (ko) * 2019-02-12 2020-09-02 주식회사 자이냅스 기록매체

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
ROBERT E. SCHAPIRE 외 1. BoosTexter: A Boosting-based System for Text Categorization. Kluwer Academic Publishers, 2000., pp.135-168 *
ROBERT E. SCHAPIRE 외 1. BoosTexter: A Boosting-based System for Text Categorization. Kluwer Academic Publishers, 2000., pp.135-168*

Cited By (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101627550B1 (ko) * 2015-06-18 2016-06-07 주식회사 스토리안트 기계학습 기반 지능형 기록물 공개관리 시스템
KR20180048226A (ko) * 2016-10-29 2018-05-10 한양대학교 산학협력단 피부 상태 분류 장치와, 그 장치에서 사용되는 피부 상태 분류 모형을 생성하는 장치 및 그 방법
KR101969346B1 (ko) 2016-10-29 2019-04-19 한양대학교 산학협력단 피부 상태 분류 장치와, 그 장치에서 사용되는 피부 상태 분류 모형을 생성하는 장치 및 그 방법
KR20180078010A (ko) * 2016-12-29 2018-07-09 (주) 더아이엠씨 패션 분야의 단어 구 단위 감성분석방법 및 이를 포함하는 저장매체
KR101935109B1 (ko) * 2016-12-29 2019-01-04 (주) 더아이엠씨 패션 분야의 단어 구 단위 감성분석방법 및 이를 포함하는 저장매체
US11024326B2 (en) 2017-05-01 2021-06-01 Toyota Jidosha Kabushiki Kaisha Interest determination system, interest determination method, and storage medium
KR102057184B1 (ko) * 2017-05-01 2019-12-18 도요타지도샤가부시키가이샤 흥미 판정 장치, 흥미 판정 방법, 및 기억 매체
KR102233503B1 (ko) * 2019-02-12 2021-03-29 주식회사 자이냅스 문서 학습 장치
KR20200103171A (ko) * 2019-02-12 2020-09-02 주식회사 자이냅스 기록매체
KR20200103168A (ko) * 2019-02-12 2020-09-02 주식회사 자이냅스 문서 학습 장치
KR20200103172A (ko) * 2019-02-12 2020-09-02 주식회사 자이냅스 문서 학습 장치
KR20200103169A (ko) * 2019-02-12 2020-09-02 주식회사 자이냅스 문서 학습 방법
KR20200103170A (ko) * 2019-02-12 2020-09-02 주식회사 자이냅스 문서 학습 프로그램
KR20200103173A (ko) * 2019-02-12 2020-09-02 주식회사 자이냅스 문서 학습 방법
KR20200103174A (ko) * 2019-02-12 2020-09-02 주식회사 자이냅스 문서 학습 프로그램
KR20200103175A (ko) * 2019-02-12 2020-09-02 주식회사 자이냅스 기록매체
KR102375877B1 (ko) * 2019-02-12 2022-03-18 주식회사 자이냅스 빅데이터 및 딥러닝 기술에 기반하여 효율적으로 문서를 학습하는 장치
KR102408636B1 (ko) * 2019-02-12 2022-06-15 주식회사 자이냅스 인공지능 기술이 접목된 가변 분류기를 사용하여 문서를 학습하는 프로그램
KR102408628B1 (ko) * 2019-02-12 2022-06-15 주식회사 자이냅스 인공지능 기술이 접목된 가변 분류기를 사용하여 문서를 학습하는 방법
KR102408637B1 (ko) * 2019-02-12 2022-06-15 주식회사 자이냅스 인공지능 대화 서비스를 제공하기 위한 프로그램이 기록된 기록매체
KR102410238B1 (ko) * 2019-02-12 2022-06-20 주식회사 자이냅스 가변 분류기를 이용한 문서 학습 프로그램
KR102410237B1 (ko) * 2019-02-12 2022-06-20 주식회사 자이냅스 가변 분류기를 이용하여 효율적인 학습 프로세스를 제공하는 방법
KR102410239B1 (ko) * 2019-02-12 2022-06-20 주식회사 자이냅스 가변 분류기를 이용한 문서 학습 프로그램을 기록한 기록매체

Similar Documents

Publication Publication Date Title
KR101500900B1 (ko) 학습 데이터로부터 생성된 최종 분류기를 이용하여 텍스트를 분류하는 방법 및 시스템
CN110188202B (zh) 语义关系识别模型的训练方法、装置及终端
Stab et al. Argumentation Mining in Persuasive Essays and Scientific Articles from the Discourse Structure Perspective.
Wang et al. Implicit discourse relation recognition by selecting typical training examples
CN109492105B (zh) 一种基于多特征集成学习的文本情感分类方法
US9262400B2 (en) Non-transitory computer readable medium and information processing apparatus and method for classifying multilingual documents
Singh et al. A decision tree based word sense disambiguation system in Manipuri language
Azcarraga et al. Keyword extraction using backpropagation neural networks and rule extraction
Sangodiah et al. A review in feature extraction approach in question classification using Support Vector Machine
Rozovskaya et al. Correcting grammatical verb errors
Nassiri et al. Arabic readability assessment for foreign language learners
Jebari et al. A new approach for implicit citation extraction
Usha et al. Analysis of sentiments using unsupervised learning techniques
Karo et al. Karonese sentiment analysis: a new dataset and preliminary result
CN112784601A (zh) 关键信息提取方法、装置、电子设备和存储介质
Sahin et al. Introduction to Apple ML tools
CN112052424A (zh) 一种内容审核方法及装置
Viswanathan et al. Detection of duplicates in Quora and Twitter corpus
Zhou et al. The effects of discourse connectives prediction on implicit discourse relation recognition
Sliwa et al. Multi-lingual argumentative corpora in english, turkish, greek, albanian, croatian, serbian, macedonian, bulgarian, romanian and arabic
Rustamov et al. An application of hidden Markov models in subjectivity analysis
Abdoun et al. Automatic Text Classification of PDF Documents using NLP Techniques
Dube et al. Language identification for South African Bantu languages using rank order statistics
Jauhar et al. Embedded semantic lexicon induction with joint global and local optimization
Górski et al. Towards grad-cam based explainability in a legal text processing pipeline. extended version

Legal Events

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

Payment date: 20180102

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20190102

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20200102

Year of fee payment: 6