KR101585644B1 - 단어 연관성 분석을 이용한 문서 분류 장치, 방법 및 이를 위한 컴퓨터 프로그램 - Google Patents

단어 연관성 분석을 이용한 문서 분류 장치, 방법 및 이를 위한 컴퓨터 프로그램 Download PDF

Info

Publication number
KR101585644B1
KR101585644B1 KR1020150016942A KR20150016942A KR101585644B1 KR 101585644 B1 KR101585644 B1 KR 101585644B1 KR 1020150016942 A KR1020150016942 A KR 1020150016942A KR 20150016942 A KR20150016942 A KR 20150016942A KR 101585644 B1 KR101585644 B1 KR 101585644B1
Authority
KR
South Korea
Prior art keywords
word
words
document
original documents
determining
Prior art date
Application number
KR1020150016942A
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 KR1020150016942A priority Critical patent/KR101585644B1/ko
Application granted granted Critical
Publication of KR101585644B1 publication Critical patent/KR101585644B1/ko

Links

Images

Classifications

    • G06F17/21
    • G06F17/277

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

문서 분류 장치는, 복수의 원본 문서를 수신하도록 구성되며, 각 원본 문서는 복수의 단어를 포함하는, 입력부; 상기 복수의 원본 문서에 포함된 단어들 중 상대적으로 중요도가 높은 단어를 분석하여 제1 단어 집합을 결정하도록 구성된 중요도 분석부; 상기 제1 단어 집합에 포함된 단어들과의 연관성을 이용하여 제2 단어 집합을 결정하도록 구성된 연관성 분석부; 및 상기 제2 단어 집합을 이용하여 상기 복수의 원본 문서를 분류하도록 구성된 문서 분류부를 포함한다. 상기 문서 분류 장치는 단어 연관성 분석을 이용하여 분류에 사용할 특징 집합(feature set)을 추출하므로, 중요도가 낮은 잡음 단어(noise term)를 제거할 수 있으며, 원본 문서의 도메인(domain)의 특성을 데이터 분석에 반영할 수 있어, 종래에 비해 문서 분류의 성능 및 처리 속도가 향상된다.

Description

단어 연관성 분석을 이용한 문서 분류 장치, 방법 및 이를 위한 컴퓨터 프로그램{APPARATUS, METHOD AND COMPUTER PROGRAM FOR DOCUMENT CLASSIFICATION USING TERM ASSOCIATION ANALYSIS}
실시예들은 문서 분류 장치, 방법 및 이를 위한 컴퓨터 프로그램에 대한 것으로, 보다 구체적으로는 문서 분류 성능 향상을 위해 단어 연관성 분석을 이용한 단어 선택 기술에 대한 것이다.
최근 데이터 환경이 빅 데이터화 되어가면서, 아주 큰 데이터량을 처리하는 문제와 텍스트, 이미지, 영상 등 비정형 데이터의 처리 및 분석에 대해 이슈가 되고 있다. 텍스트 마이닝(text mining)은 이러한 비정형 데이터 중 텍스트를 처리 및 분석하는 기술에 대한 연구 분야로서, 종래의 데이터 마이닝 기법으로부터 자연어 처리 등 다양한 연구 분야가 적용되는 데이터 분석 연구 분야이다.
SNS(Social Networking Service) 및 웹(web) 정보의 발달로 다양한 방법과 환경으로 텍스트 데이터가 사용 및 수집되고 있으며, 이를 이용하여 사용자 개인이나 기업들은 소비자 분석, 상품 반응 분석, 신 기술 발견, 인간관계 분석, 개인 활동 분석, 인물 분석 등으로 사용하고 있다. 특히 기업에서는 상품에 대한 평가나 가치, 반응에 대해 소비자 분석과 새로운 제품을 출시하는데 있어 필요한 정보를 수집하고 예측하는데 텍스트 마이닝 기법을 이용한 웹 및 소셜 마이닝 기법이 많이 활용되고 있다.
비정형 데이터에서 대표적인 텍스트 데이터는, 각 나라의 자연어로 구성된 정형화되지 않은 데이터로서, 텍스트 마이닝을 통해 문서의 분류, 통계 분석, 검색, 알려지지 않은 지식을 추출 등을 할 수 있다. 문서 클러스터링(document clustering)과 문서 분류(document classification)는 종래의 데이터 마이닝 기법에서 활용되는 알고리즘들을 활용하여 정해진 카테고리로 문서를 분류하거나 새로운 문서의 군집을 생성한다. 하지만, 정형화된 데이터베이스와는 달리, 텍스트 분류(text classification)와 텍스트 클러스터링(text clustering)에서는 상대적으로 적은 데이터량에서 많은 수의 특징(feature)(텍스트 마이닝의 경우 단어)이 발생한다. 그 결과, 데이터의 특징 집합(feature set)이 너무 커지면서 발생하는 차원의 저주(curse of dimension)로 인해 데이터 분석이 정확하지 않고 계산이 복잡해진다. 발생 빈도수가 너무 낮은 특징들이 많이 발생하여 희소 행렬(sparse matrix) 문제 및 데이터 속성들이 한 쪽으로 편중되는 기운 분류 분포(skewed class distribution) 문제를 발생시키기도 한다.
특징 선택(feature selection) 방법은 이러한 대량의 특징들에 수반되는 문제들을 해결하기 위해 문서를 가장 잘 표현하면서 문서 분류 및 군집 성능을 높여주는 최적의 특징 집합을 전체 특징에서 추출하는 것이다. 최적화된 특징 집합을 활용하는 것은 문서의 분류 및 군집 성능을 높여주고, 처리 속도를 향상시켜주며 데이터 도메인의 특성을 반영할 수도 있다. 특징 선택 방법은 그 적용 방법에 따라 크게 필터(filter), 래퍼(wrapper), 임베디드(embedded) 방법으로 구분될 수 있다.
등록특허공보 제10-1404644호
본 발명의 일 측면에 따르면, 단어 연관성 분석을 특징 선택(feature selection)에 이용함으로써 문서 분류 성능을 향상시킨 문서 분류 장치, 방법 및 이를 위한 컴퓨터 프로그램을 제공할 수 있다.
일 실시예에 따른 문서 분류 장치는, 복수의 원본 문서를 수신하도록 구성되며, 각 원본 문서는 복수의 단어를 포함하는, 입력부; 상기 복수의 원본 문서에 포함된 단어들 중 상대적으로 중요도가 높은 단어를 분석하여 제1 단어 집합을 결정하도록 구성된 중요도 분석부; 상기 제1 단어 집합에 포함된 단어들과의 연관성을 이용하여 제2 단어 집합을 결정하도록 구성된 연관성 분석부; 및 상기 제2 단어 집합을 이용하여 상기 복수의 원본 문서를 분류하도록 구성된 문서 분류부를 포함한다.
일 실시예에서, 상기 중요도 분석부는, 상기 복수의 원본 문서에서 단어별 TF-IDF(Term Frequency - Inverse Document Frequency) 값에 기초하여 상기 제1 단어 집합을 결정하도록 더 구성된다.
일 실시예에서, 상기 연관성 분석부는, 상기 복수의 원본 문서에 대응되는 문서-단어 매트릭스에서, 상기 제1 단어 집합의 각 단어의 단어 벡터와의 유사도에 기초하여 상기 제1 단어 집합의 각 단어와 연관된 단어를 결정하고, 상기 결정된 단어를 상기 제1 단어 집합에 추가함으로써 상기 제2 단어 집합을 결정하도록 더 구성된다.
일 실시예에서, 상기 문서 분류 장치는, 상기 문서 분류부에 의한 분류 결과를 상기 복수의 원본 문서에 대해 미리 알려진 분류와 비교한 것에 기초하여, 상기 제2 단어 집합의 결정 및 상기 복수의 원본 문서의 분류를 복수 회 반복 수행하도록 더 구성된다.
실시예들에 따른 문서 분류 방법은, 전술한 실시예들에 따른 문서 분류 장치를 이용하여 수행될 수 있다. 일 실시예에 따른 문서 분류 방법은, 복수의 원본 문서를 수신하는 단계로서, 각 원본 문서는 복수의 단어를 포함하는, 상기 수신하는 단계; 상기 복수의 원본 문서에 포함된 단어들 중 상대적으로 중요도가 높은 단어를 분석하여 제1 단어 집합을 결정하는 단계; 상기 제1 단어 집합에 포함된 단어들과의 연관성을 이용하여 제2 단어 집합을 결정하는 단계; 및 상기 제2 단어 집합을 이용하여 상기 복수의 원본 문서를 분류하는 단계를 포함한다.
일 실시예에서, 상기 제1 단어 집합을 결정하는 단계는, 상기 복수의 원본 문서에서 단어별 TF-IDF(Term Frequency - Inverse Document Frequency) 값에 기초하여 상기 제1 단어 집합을 결정하는 단계를 포함한다.
일 실시예에서, 상기 제2 단어 집합을 결정하는 단계는, 상기 복수의 원본 문서에 대응되는 문서-단어 매트릭스에서, 상기 제1 단어 집합의 각 단어의 단어 벡터와의 유사도에 기초하여 상기 제1 단어 집합의 각 단어와 연관된 단어를 결정하는 단계; 및 상기 결정된 단어를 상기 제1 단어 집합에 추가함으로써 상기 제2 단어 집합을 결정하는 단계를 포함한다.
일 실시예에 따른 문서 분류 방법은, 상기 복수의 원본 문서를 분류하는 단계의 결과를 상기 복수의 원본 문서에 대해 미리 알려진 분류와 비교하는 단계; 및 상기 비교하는 단계의 결과에 기초하여, 상기 제2 단어 집합을 결정하는 단계 및 상기 복수의 원본 문서를 분류하는 단계를 복수 회 반복 수행하는 단계를 더 포함한다.
일 실시예에 따른 컴퓨터 프로그램은, 하드웨어와 결합되어 전술한 문서 분류 방법을 실행하기 위한 것으로서, 컴퓨터로 판독 가능한 매체에 저장될 수 있다.
본 발명의 일 측면에 따른 문서 분류 장치, 방법 및 이를 위한 컴퓨터 프로그램은, 단어 연관성 분석을 이용하여 문서 집합을 대표하는 단어 집합을 특징 집합(feature set)으로서 추출하고, 이를 이용하여 문서를 분류하도록 구성된다. 그 결과, 중요도가 낮은 잡음 단어(noise term)를 제거할 수 있으며, 또한 단어들 간의 연관성을 반영하므로 원본 문서의 도메인(domain)의 특성을 데이터 분석에 반영할 수 있다. 그 결과, 단순히 발생 빈도가 높은 단어 위주로 분류하는 종래 기술에 비해 문서 분류의 성능 및 처리 속도가 향상된다.
도 1은 일 실시예에 따른 문서 분류 장치의 개략적인 구성을 나타내는 블록도이다.
도 2는 일 실시예에 따른 문서 분류 방법의 각 단계의 동작을 설명하기 위한 순서도이다.
이하에서, 도면을 참조하여 본 발명의 실시예들에 대하여 상세히 살펴본다.
도 1은 일 실시예에 따른 문서 분류 장치의 개략적인 구성을 나타내는 블록도이다.
도 1을 참조하면, 본 실시예에 따른 문서 분류 장치는 입력부(10), 중요도 분석부(30), 연관성 분석부(40) 및 문서 분류부(50)를 포함한다. 일 실시예에서, 문서 분류 장치는 전처리부(20)를 더 포함할 수도 있다. 실시예들에 따른 문서 분류 장치는, 전적으로 하드웨어이거나, 또는 부분적으로 하드웨어이고 부분적으로 소프트웨어인 측면을 가질 수 있다. 예컨대, 문서 분류 장치 및 이에 포함된 각 부(unit)는, 특정 형식 및 내용의 데이터를 전자통신 방식으로 주고받기 위한 장치 및 이에 관련된 소프트웨어를 통칭할 수 있다. 본 명세서에서 "부", "모듈(module)", "서버(server)", "시스템", "장치" 또는 "단말" 등의 용어는 하드웨어 및 해당 하드웨어에 의해 구동되는 소프트웨어의 조합을 지칭하는 것으로 의도된다. 예를 들어, 여기서 하드웨어는 CPU 또는 다른 프로세서(processor)를 포함하는 데이터 처리 기기일 수 있다. 또한, 하드웨어에 의해 구동되는 소프트웨어는 실행중인 프로세스, 객체(object), 실행파일(executable), 실행 스레드(thread of execution), 프로그램(program) 등을 지칭할 수 있다.
실시예들에 따른 문서 분류 장치를 구성하는 각각의 부(10, 20, 30, 40, 50)는 반드시 물리적으로 구분되는 별개의 구성요소를 지칭하는 것으로 의도되지 않는다. 즉, 도 1에서 입력부(10), 전처리부(20), 중요도 분석부(30), 연관성 분석부(40) 및 문서 분류부(50)는 서로 구분되는 별개의 블록으로 도시되나, 실시예에 따라서는 입력부(10), 중요도 분석부(30), 연관성 분석부(40) 및 문서 분류부(50) 중 일부 또는 전부가 동일한 하나의 장치 내에 집적화될 수 있다. 또한, 각각의 부(10, 20, 30, 40, 50)는 이들이 구현된 컴퓨팅 장치에서 수행하는 동작에 따라 장치를 기능적으로 구분한 것일 뿐, 반드시 서로 분리된 별개의 소자를 의미하는 것이 아니다. 예를 들어, 실시예들에 따른 문서 분류 장치는 하나의 컴퓨팅 장치로 구현될 수 있다.
그러나, 이는 예시적인 것으로서, 다른 실시예에서는 입력부(10), 전처리부(20), 중요도 분석부(30), 연관성 분석부(40) 및 문서 분류부(50) 중 하나 이상이 다른 부와 물리적으로 구분되는 별개의 장치로 구현될 수도 있다. 예컨대, 각각의 부(10, 20, 30, 40, 50)는 분산 컴퓨팅 환경 하에서 서로 통신 가능하게 연결된 컴포넌트들일 수도 있다.
도 2는 일 실시예에 따른 문서 분류 방법의 개략적인 순서도이다. 도 1 및 도 2를 참조하여, 실시예들에 따른 문서 분류 장치 및 방법에 대하여 구체적으로 설명한다.
도 2를 참조하면, 먼저 입력부(10)는 복수의 원본 문서를 수신할 수 있다(S1). 본 명세서에서 문서란, 텍스트 마이닝(text mining)에 의한 분석이 가능한 텍스트 데이터를 적어도 부분적으로 포함하는 임의의 비정형 데이터를 지칭한다. 각각의 문서는 하나 이상의 단어를 포함할 수 있다. 입력부(10)는 사용자 단말 또는 다른 상이한 데이터 출처로부터 상기 복수의 원본 문서를 수신할 수 있다.
일 실시예에서, 전처리부(20)는 원본 문서에 대한 전처리를 수행할 수 있다(S2). 전처리 과정은 원본 문서를 텍스트 마이닝에 적합한 형식으로 변경하는 과정이다. 예를 들어, 전처리 과정은 불용어(stop word) 제거, 어간 추출(stemming), 단어 가중화(term weighting) 및 가지치기(pruning)의 과정으로 이루어져 수행되며 자연어 처리 알고리즘들이 활용될 수 있다. 전처리가 완료되면 각 문서로부터 단어들이 추출되는데, 이 단어들이 텍스트 마이닝을 위한 특징(feature)으로 활용된다. 단어 가중화 과정에서는 중요도가 높은 단어들에 상대적으로 높은 가중치를 부여하게 되며, 이는 후술하는 단어 연관 분석에서 중요한 단어를 선정하는데 활용될 수 있다. 예컨대, 중요도는 문서 내 각 단어의 발생 빈도, 문서의 제목, 키워드, 태그 등에 기초하여 결정될 수 있다.
한편, 전술한 전처리 과정은 단지 예시적인 것이다. 텍스트 마이닝을 위한 다양한 전처리 과정에 대해서는 본 발명의 기술 분야에서 잘 알려져 있으므로, 발명의 요지를 명확하게 하기 위하여 자세한 설명을 생략한다.
중요도 분석부(30)는, 원본 문서에 대한 수학적 모델링을 통하여 상대적으로 중요도가 높은 단어들로 이루어진 제1 단어 집합을 결정할 수 있다(S3). 구체적으로, 중요도 분석부(30)는 전처리가 끝난 문서 집합에 대해 빈도수 기반 수학적 모델링을 수행함으로써 문서-단어 매트릭스(Document Term Matrix; DTM)를 생성할 수 있다. DTM의 각 행은 문서이며, 각 열은 단어이고, 각 원소값은 단어의 빈도(Term Frequency; TF)이다. 본 실시예에서는, 상대적으로 중요도가 높은 단어를 선정하기 위하여 TF-IDF(Term Frequency - Inverse Document Frequency)를 이용한다. TF-IDF는 단어 빈도와 역문서 빈도의 곱으로, TF-IDF의 수학적 계산에 대해서는 본 발명의 기술 분야에서 잘 알려져 있다. 본 실시예에서는, 문서 집합에서 각 단어의 상대 빈도수를 반영하기 위하여 TF-IDF가 사용된다. 즉, 산출된 TF-IDF를 각 단어별로 합산하여, 총 TF-IDF 값이 높은 단어를 중요도가 높은 단어로 선정하여 제1 단어 집합을 결정할 수 있다.
다음으로, 연관성 분석부(40)는, 제1 단어 집합의 단어들과 연관성이 높은 단어들을 분석하여 제1 단어 집합에 추가함으로써 제2 단어 집합을 결정할 수 있다(S4). 단어와 단어 관계는 문서를 대표하는 특징이 될 수 있기 때문에, 단어 연관 분석을 이용함으로써 중요하지 않은 불필요한 단어들을 제거할 수 있으며 가중치가 높은 단어를 중심으로 숨겨진 중요 단어들을 추출하여 분류에 활용할 수 있어 고차원의 문제 해결이 가능하다. 또한, 중요도와 연관성을 기반하여 단어 집합을 선택하기 때문에, 잡음 단어(noise term)를 제거할 수 있고 의미가 적은 단어들을 선택하지 않을 수 있다. 또한, 반대로 상대적으로 발생한 빈도수가 적은 단어라도 중요한 단어와의 연관성이 높을 경우 제2 단어 집합에 포함되어 문서 분류에 활용되므로, 알려지지 않은 중요 특징들을 추출할 수도 있다. 이를 통해 종래의 희소 행렬(sparse matrix) 문제를 해결 할 수 있다.
구체적으로, 연관성 분석부(40)는 DTM의 각 열에 해당되는 단어 벡터(vector)를 이용하여, 제1 단어 집합에 포함된 단어의 단어 벡터와 다른 단어들의 단어 벡터들의 유사도를 측정한다. 벡터 유사도의 수학적인 계산 방식은 본 발명의 기술 분야에서 잘 알려져 있으므로, 자세한 설명을 생략한다. 두 단어의 단어 벡터가 유사하다는 것은 두 단어가 동일한 문서에 자주 출현했다는 것을 의미하므로, 두 단어의 연관성이 높다고 판단할 수 있다. 이러한 과정을 통하여, 제1 단어 집합에 포함된 각 단어의 단어 벡터와 유사도가 높은 단어 벡터에 해당하는 하나 이상의 다른 단어들을 결정할 수 있으며, 해당 단어들을 제1 단어 집합에 추가함으로써 제2 단어 집합을 선정할 수 있다.
문서 분류부(50)는, 연관성 분석부(40)에 의해 결정된 제2 단어 집합을 특징 집합(feature set)으로 이용하여 복수의 원본 문서에 대한 분류를 수행할 수 있다(S5). 구체적으로, 단어 집합은 문서의 특성을 반영하는 대표적인 단어들로 구성되며, 단어 간의 프로파일링(profiling) 등을 통하여 분류하고자 하는 각 클래스(class)를 대표하는 단어 벡터를 결정할 수 있다. 각 클래스를 대표하는 단어 백터를 분류기(classifier)에 적용함으로써, 해당 단어 벡터를 각 클래스의 중심점으로 적용하여 문서를 분류할 수 있다. 단어 벡터를 이용하는 다양한 분류기가 본 발명의 기술 분야에서 잘 알려져 있으며, 예컨대 C4.5 분류기가 있으나, 이에 한정되는 것은 아니다.
실시예들에 따라 연관성 분석부(40)에 의해 선정된 제2 단어 집합은, 중요도가 상대적으로 높은 단어 및 이들 단어와 단어간 연관성이 높은 단어들을 포함한다. 따라서, 제2 단어 집합을 특징 집합으로 이용하여 문서 분류를 수행할 경우 상대적으로 적은 수의 특징 집합으로도 좋은 분류 결과를 얻을 수 있고, 분류 비용을 줄일 수 있으며, 문서 도메인(domain)의 특징을 반영할 수 있다. 또한, 선택되는 특징 집합의 크기에 따라 상대적으로 처리 속도를 향상시켜 전반적인 문서 분석 성능을 높일 수 있다. 이와 같은 단어 연관 분석을 이용한 특징 선택 방법은, 문서 분류뿐만 아니라 텍스트 분석을 통해 알 수 없었던 새로운 지식을 분석하기 위한 용도로도 활용될 수 있다.
한편, 본 발명의 실시예들은 고차원의 특징으로부터 부분 특징 집합을 선택하도록 구성된 것이므로, 평가와 탐색을 통해 이상적인 특징 집합을 선택하여야 하는 경우가 있을 수 있다. 일 실시예에서는, 전술한 과정을 통해 얻어진 분류 성능을 원본 데이터의 알려진 분류와의 비교를 통해 평가하고, 평가를 통해 미리 설정된 기준에 부합하는 특징 집합을 찾을 때까지 휴리스틱 탐색(Heuristic Search) 방식으로 제2 단어 집합의 선정 및 분류 단계(S4, S5)를 반복 수행하여 최종 특징 집합을 결정할 수도 있다. 예를 들어, 전체 원본 문서 중 일부(예컨대, 90%)는 학습 데이터로 사용하고, 다른 일부(예컨대, 10%)는 학습 결과에 대한 평가를 위한 테스트 데이터로 사용할 수 있으나, 이에 한정되는 것은 아니다.
평가 및 탐색 방법의 일 구현예로서, 문서 분류 평가에 활용되는 에프-측정(F-measure) 함수를 점수(score) 함수로 이용할 수 있다. 에프-측정 함수는 정확률(precision) 값과 재현율(recall) 값을 활용하여 텍스트 분류 결과를 평가하는데 널리 사용된다. 먼저, 에프-측정 함수에 사용되는 인자인 정확률 값 Pi 및 재현율 값 Ri는 각각 하기 수학식 1 및 수학식 2에 의하여 산출될 수 있다.
Figure 112015011709165-pat00001
Figure 112015011709165-pat00002
상기 수학식 1 및 수학식 2에서 TPi, FPi, FNi는 각각 진긍정(True Positive; TP), 가긍정(False Positive; FP) 및 가부정(False Negative; FN)을 의미하는 것으로서, 본 실시예에 의한 분류 결과를 원본 문서의 알려진 분류와 비교함으로써 얻어질 수 있다. 카테고리 i에 대한 에프-측정 값 Fi는 하기 수학식 3에 의하여 산출되며, 평균 에프-측정 값 F는 하기 수학식 4에 의하여 산출될 수 있다.
Figure 112015011709165-pat00003
Figure 112015011709165-pat00004
상기 수학식 4에서 di는 카테고리 i에 포함된 문서의 개수이며, N은 카테고리의 개수이다. 원본 문서를 정의하는 카테고리의 종류 및 개수는 구현예에 따라 상이할 수 있으며, 특정 수치로 한정되지 않는다.
이상에서 설명한 본 발명의 실시예들에 따른 문서 분류 방법에 대하여, 본 발명자들이 수행한 실험 결과를 아래에서 기술한다.
본 실험 결과는 인텔 코어 i5(Intel Core i5) 650 3.20Ghz 중앙처리장치(CPU) 및 7GB 램(RAM)을 구비한 하드웨어를 윈도우 7(Windows 7) 엔터프라이즈(Enterprise) K 64비트 버전에 의해 운용하는 하드웨어 및 소프트웨어 환경에서 수행되었고, 공개 소프트웨어 R 3.02 버전(http://www.r-project.org)이 실험에 사용되었으며, 특히 텍스트 마이닝 수행에는 R의 텍스트 마이닝 패키지(http://cran.r-project.org/web/packages/tm/index.html)가 사용되었다. 분류에 사용된 알고리즘은 KNN 분류기이다.
원본 문서로는 스팸 메일 분류 및 클러스터링(clustering)에 사용되는 링-스팸 데이터 세트(Ling Spam Data Set)의 문서 300개가 이용되었다. 링-스팸 데이터 세트는 스팸(SPAM) 메일 및 정상(normal) 메일로 이루어져 있어, 문서의 클래스 특징이 스팸과 정상만으로 구분되고 클래스 구분이 명확하기 때문에 문서 분류 성능의 평가에 유용하다.
먼저, 300 개의 원본 문서에 대한 전처리를 통하여 총 11,508 개의 단어가 추출되었다. 여기서 TF-IDF 중요도를 기준으로 약 10% 이내, 즉, TF-IDF 값이 0.9 이상인 단어들을 제1 단어 집합으로 선정하였다. 그 결과 하기 표 1에 도시된 32개의 단어들이 제1 단어 집합의 단어들로 선정되었다.
제1 단어 집합
Acquisition Adjunct Analysis Become
Best Between College Copy
Discussion Etc Field General
Hey Human Literature Must
Negative Note Over Philippine
Problem Publication Raise Recent
Report Speech Summary Sure
Tell Text Undergraduate Week
다음으로, 제1 단어 집합의 단어들과 연관성이 높은 단어들을 추출하기 위해 단어 벡터의 유사도를 산출하였으며, 제1 단어 집합의 단어들과 벡터 유사도가 0.65 이상이 단어들을 제1 단어 집합에 추가함으로써 제2 단어 집합을 결정하였다. 그 결과, 제2 단어 집합은 총 956개의 단어를 포함하도록 결정되었으며, 상기 제2 단어 집합을 특징 집합으로 적용하여 원본 문서 300개를 KNN 분류기로 분류하였다. 분류 과정에서 전체 원본 문서의 약 80%로서 정상 메일 200개 및 스팸 메일 38개를 사용하여 학습을 수행하였다. 학습 이후 테스트 데이터로서 정상 메일 52개와 스팸 메일 10개를 사용하여 분류 결과를 분석하였다.
일 실시예를 이용한 분류 결과, 전술한 총 62개의 테스트 데이터에서 57개가 정상 클래스로, 5개가 스팸 클래스로 분류되었다. 분류 결과를 비교 평가하기 위하여, 원본 데이터의 분류 및 단순 KNN 분류기만을 이용한 분류 결과를 하기 표 2에 나타내었다.
정상(원본) 스팸(원본)
정상( KNN ) 51 6
스팸( KNN ) 1 4
또한, 이를 이용하여 본 발명의 실시예에 대한 교차 합의(cross-agreement) 수치, 정확률 값, 재현율 값 및 에프1-측정(F1-measure) 값을 산출한 결과를 하기 표 3에 나타내었다.
측정값 결과
교차 합의 0.887
정확률 0.902
재현율 0.982
에프1-측정값 0.940
표 2 및 표 3을 참조하면, 교차 합의 값은 0.877로서 단순히 KNN 분류기만을 사용했을 때의 0.71보다 높은 수치이다. 따라서, 실시예들에 따른 특징 선택에 의하여 분류의 정확도가 개선되었음을 알 수 있다. 또한, TP는 55, FP는 6, FN은 1로서 이에 의해 산출된 에프1-측정값은 0.94로 상당히 높은 수치이다.
따라서, 실시예들에 따른 단어 연관성을 이용한 특징 선택을 이용함으로써 약 10%의 제한적인 특징 집합으로도 분류기의 정확도를 높일 수 있음을 알 수 있다. 또한, 적은 수의 특징 집합만을 이용하여 분류를 수행하기 때문에 분류기의 계산량 및 분류 시간을 줄일 수 있어 분류 비용을 감소시킬 수 있으며, 단어 연관을 적용하였기 때문에 중요한 단어들과의 연관성을 분류에 반영할 수 있고, 문서 도메인의 특징을 반영할 수 있어 분류기의 성능이 향상되어 종래에 비해 보다 정확하고 신뢰도가 높은 문서 분류를 할 수 있다.
이상에서 설명한 실시예들에 따른 문서 분류 장치 및 방법에 의한 동작은 적어도 부분적으로 컴퓨터 프로그램으로 구현되어, 컴퓨터로 읽을 수 있는 기록매체에 기록될 수 있다. 상기 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다. 컴퓨터가 읽을 수 있는 기록매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피디스크, 광 데이터 저장장치 등이 있으며, 또한 캐리어 웨이브(carrier wave)(예를 들어, 인터넷을 통한 전송)의 형태로 구현되는 것도 포함한다. 또한 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산 방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수도 있다. 또한, 본 실시예를 구현하기 위한 기능적인 프로그램, 코드 및 코드 세그먼트(segment)들은 본 실시예가 속하는 기술 분야의 통상의 기술자에 의해 용이하게 이해될 수 있을 것이다.
이상에서 살펴본 본 발명은 도면에 도시된 실시예들을 참고로 하여 설명하였으나 이는 예시적인 것에 불과하며 당해 분야에서 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 실시예의 변형이 가능하다는 점을 이해할 것이다. 그러나, 이와 같은 변형은 본 발명의 기술적 보호범위 내에 있다고 보아야 한다. 따라서, 본 발명의 진정한 기술적 보호범위는 첨부된 특허청구범위의 기술적 사상에 의해서 정해져야 할 것이다.

Claims (9)

  1. 복수의 원본 문서를 수신하도록 구성되며, 각 원본 문서는 복수의 단어를 포함하는, 입력부;
    상기 복수의 원본 문서에 포함된 단어들 중 상대적으로 중요도가 높은 단어를 분석하여 제1 단어 집합을 결정하도록 구성된 중요도 분석부;
    상기 제1 단어 집합에 포함된 단어들과의 연관성을 이용하여 제2 단어 집합을 결정하도록 구성된 연관성 분석부; 및
    상기 제2 단어 집합을 이용하여 상기 복수의 원본 문서를 분류하도록 구성된 문서 분류부를 포함하되,
    상기 연관성 분석부는,
    상기 복수의 원본 문서에 대응되는 문서-단어 매트릭스에서, 상기 제1 단어 집합의 각 단어의 단어 벡터와의 유사도에 기초하여 상기 제1 단어 집합의 각 단어와 연관된 단어를 결정하고, 상기 결정된 단어를 상기 제1 단어 집합에 추가함으로써 상기 제2 단어 집합을 결정하도록 더 구성된 문서 분류 장치.
  2. 제 1항에 있어서,
    상기 중요도 분석부는, 상기 복수의 원본 문서에서 단어별 TF-IDF(Term Frequency - Inverse Document Frequency) 값에 기초하여 상기 제1 단어 집합을 결정하도록 더 구성된 문서 분류 장치.
  3. 삭제
  4. 제 1항에 있어서,
    상기 문서 분류 장치는, 상기 문서 분류부에 의한 분류 결과를 상기 복수의 원본 문서에 대해 미리 알려진 분류와 비교한 것에 기초하여, 상기 제2 단어 집합의 결정 및 상기 복수의 원본 문서의 분류를 복수 회 반복 수행하도록 더 구성된 문서 분류 장치.
  5. 문서 분류 장치가 복수의 원본 문서를 수신하는 단계로서, 각 원본 문서는 복수의 단어를 포함하는, 상기 수신하는 단계;
    상기 문서 분류 장치가, 상기 복수의 원본 문서에 포함된 단어들 중 상대적으로 중요도가 높은 단어를 분석하여 제1 단어 집합을 결정하는 단계;
    상기 문서 분류 장치가, 상기 제1 단어 집합에 포함된 단어들과의 연관성을 이용하여 제2 단어 집합을 결정하는 단계; 및
    상기 문서 분류 장치가, 상기 제2 단어 집합을 이용하여 상기 복수의 원본 문서를 분류하는 단계를 포함하되,
    상기 제2 단어 집합을 결정하는 단계는,
    상기 복수의 원본 문서에 대응되는 문서-단어 매트릭스에서, 상기 제1 단어 집합의 각 단어의 단어 벡터와의 유사도에 기초하여 상기 제1 단어 집합의 각 단어와 연관된 단어를 결정하는 단계; 및
    상기 결정된 단어를 상기 제1 단어 집합에 추가함으로써 상기 제2 단어 집합을 결정하는 단계를 포함하는 문서 분류 방법.
  6. 제 5항에 있어서,
    상기 제1 단어 집합을 결정하는 단계는, 상기 복수의 원본 문서에서 단어별 TF-IDF(Term Frequency - Inverse Document Frequency) 값에 기초하여 상기 제1 단어 집합을 결정하도록 더 구성된 문서 분류 방법.
  7. 삭제
  8. 제 5항에 있어서,
    상기 복수의 원본 문서를 분류하는 단계의 결과를 상기 복수의 원본 문서에 대해 미리 알려진 분류와 비교하는 단계; 및
    상기 비교하는 단계의 결과에 기초하여, 상기 제2 단어 집합을 결정하는 단계 및 상기 복수의 원본 문서를 분류하는 단계를 복수 회 반복 수행하는 단계를 더 포함하는 문서 분류 방법.
  9. 하드웨어와 결합되어,
    복수의 원본 문서를 수신하는 단계로서, 각 원본 문서는 복수의 단어를 포함하는, 상기 수신하는 단계;
    상기 복수의 원본 문서에 포함된 단어들 중 상대적으로 중요도가 높은 단어를 분석하여 제1 단어 집합을 결정하는 단계;
    상기 제1 단어 집합에 포함된 단어들과의 연관성을 이용하여 제2 단어 집합을 결정하는 단계; 및
    상기 제2 단어 집합을 이용하여 상기 복수의 원본 문서를 분류하는 단계를 실행하도록 매체에 저장된 컴퓨터 프로그램으로서,
    상기 제2 단어 집합을 결정하는 단계는,
    상기 복수의 원본 문서에 대응되는 문서-단어 매트릭스에서, 상기 제1 단어 집합의 각 단어의 단어 벡터와의 유사도에 기초하여 상기 제1 단어 집합의 각 단어와 연관된 단어를 결정하는 단계; 및
    상기 결정된 단어를 상기 제1 단어 집합에 추가함으로써 상기 제2 단어 집합을 결정하는 단계를 포함하는 컴퓨터 프로그램.
KR1020150016942A 2015-02-03 2015-02-03 단어 연관성 분석을 이용한 문서 분류 장치, 방법 및 이를 위한 컴퓨터 프로그램 KR101585644B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020150016942A KR101585644B1 (ko) 2015-02-03 2015-02-03 단어 연관성 분석을 이용한 문서 분류 장치, 방법 및 이를 위한 컴퓨터 프로그램

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020150016942A KR101585644B1 (ko) 2015-02-03 2015-02-03 단어 연관성 분석을 이용한 문서 분류 장치, 방법 및 이를 위한 컴퓨터 프로그램

Publications (1)

Publication Number Publication Date
KR101585644B1 true KR101585644B1 (ko) 2016-01-14

Family

ID=55173212

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020150016942A KR101585644B1 (ko) 2015-02-03 2015-02-03 단어 연관성 분석을 이용한 문서 분류 장치, 방법 및 이를 위한 컴퓨터 프로그램

Country Status (1)

Country Link
KR (1) KR101585644B1 (ko)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20180020552A (ko) * 2016-08-18 2018-02-28 에스케이텔레콤 주식회사 문서 분류 장치 및 방법
KR20190102529A (ko) * 2018-02-26 2019-09-04 광운대학교 산학협력단 토픽을 이용한 타겟 분석 장치 및 방법
KR102078282B1 (ko) * 2018-10-01 2020-02-17 씨제이올리브네트웍스 주식회사 딥러닝 기술을 활용한 송장 카테고리 분류 자동화 시스템
KR102363958B1 (ko) * 2021-08-05 2022-02-16 재단법인차세대융합기술연구원 이중 클러스터링 기반 소비자 인식 분석 방법, 장치 및 프로그램

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20180020552A (ko) * 2016-08-18 2018-02-28 에스케이텔레콤 주식회사 문서 분류 장치 및 방법
KR102594011B1 (ko) * 2016-08-18 2023-10-24 에스케이텔레콤 주식회사 문서 분류 장치 및 방법
KR20190102529A (ko) * 2018-02-26 2019-09-04 광운대학교 산학협력단 토픽을 이용한 타겟 분석 장치 및 방법
KR102150560B1 (ko) 2018-02-26 2020-09-01 광운대학교 산학협력단 토픽을 이용한 타겟 분석 장치 및 방법
KR102078282B1 (ko) * 2018-10-01 2020-02-17 씨제이올리브네트웍스 주식회사 딥러닝 기술을 활용한 송장 카테고리 분류 자동화 시스템
KR102363958B1 (ko) * 2021-08-05 2022-02-16 재단법인차세대융합기술연구원 이중 클러스터링 기반 소비자 인식 분석 방법, 장치 및 프로그램

Similar Documents

Publication Publication Date Title
Stamatatos et al. Clustering by authorship within and across documents
KR102026304B1 (ko) Esg 기반의 기업 평가 수행 장치 및 이의 작동 방법
US10346257B2 (en) Method and device for deduplicating web page
Shahana et al. Evaluation of features on sentimental analysis
Thorleuchter et al. Analyzing existing customers’ websites to improve the customer acquisition process as well as the profitability prediction in B-to-B marketing
CN107862046B (zh) 一种基于短文本相似度的税务商品编码分类方法及系统
JP5387578B2 (ja) 情報分析装置、情報分析方法、及びプログラム
CN109508373B (zh) 企业舆情指数的计算方法、设备及计算机可读存储介质
KR20180120488A (ko) 텍스트 마이닝 기법을 활용한 고객 불만에 대한 분류 및 예측 방법
KR101585644B1 (ko) 단어 연관성 분석을 이용한 문서 분류 장치, 방법 및 이를 위한 컴퓨터 프로그램
Budhiraja et al. A supervised learning approach for heading detection
Tsytsarau et al. Managing diverse sentiments at large scale
CN108228612B (zh) 一种提取网络事件关键词以及情绪倾向的方法及装置
CN116109373A (zh) 金融产品的推荐方法、装置、电子设备和介质
Iqbal et al. Determining bug prioritization using feature reduction and clustering with classification
Lin et al. Indivec: An exploration of leveraging large language models for media bias detection with fine-grained bias indicators
CN115329207A (zh) 智能销售信息推荐方法及系统
Prakhash et al. Categorizing food names in restaurant reviews
Boyack et al. An improved practical approach to forecasting exceptional growth in research
Adi et al. Classification of 20 news group with Naïve Bayes classifier
Hisham et al. An innovative approach for fake news detection using machine learning
US20170293863A1 (en) Data analysis system, and control method, program, and recording medium therefor
KR102155692B1 (ko) 소셜 네트워크 서비스 메시지의 감정 분석을 위한 POS(part of speech) 특징기반의 감정 분석 방법 및 이를 수행하는 감정 분석 장치
KR101987301B1 (ko) 소셜 미디어 데이터 및 증시 관련 웹데이터 분석을 통한 감성레벨산출시스템 및 그 제어방법
Adeyiga et al. Fake News Detection Using a Logistic Regression Model and Natural Language Processing Techniques

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: 20200103

Year of fee payment: 5