KR20200109417A - 키워드 자동 추출 방법 및 장치 - Google Patents

키워드 자동 추출 방법 및 장치 Download PDF

Info

Publication number
KR20200109417A
KR20200109417A KR1020190028210A KR20190028210A KR20200109417A KR 20200109417 A KR20200109417 A KR 20200109417A KR 1020190028210 A KR1020190028210 A KR 1020190028210A KR 20190028210 A KR20190028210 A KR 20190028210A KR 20200109417 A KR20200109417 A KR 20200109417A
Authority
KR
South Korea
Prior art keywords
score
word
single word
frequency
importance
Prior art date
Application number
KR1020190028210A
Other languages
English (en)
Other versions
KR102196583B1 (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 KR1020190028210A priority Critical patent/KR102196583B1/ko
Publication of KR20200109417A publication Critical patent/KR20200109417A/ko
Application granted granted Critical
Publication of KR102196583B1 publication Critical patent/KR102196583B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/205Parsing
    • G06F40/216Parsing using statistical methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/40Processing or translation of natural language

Landscapes

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

Abstract

본 발명의 실시예에 의하면, 컴퓨팅 장치에서 실행되는 키워드 자동 추출에 관한 컴퓨터 구현 방법(Computer implemented method)로서, (a) 입력된 분석 대상 문서의 텍스트 데이터에 관한 전처리를 통해 분석 대상 단어들을 추출하는 단계; (b) 상기 분석 대상 단어들에 관한 문장 단위의 단일 단어별 빈도 점수를 각각의 행렬값으로 갖는 문장-단어 대응 행렬(Sentence-Term Matrix)을 생성하는 단계; (c) 상기 문장-단어 대응 행렬에 기초하여 단일 단어별 텍스트랭크(TextRank) 점수를 계산하고, 상기 문장 단위의 단일 단어별 빈도 점수에 기초하여 문서 단위의 단일 단어별 빈도 점수를 계산하며, 상기 단일 단어별 텍스트 랭크 점수와 상기 문서 단위의 단일 단어별 빈도 점수에 기초하여 단일 단어별 중요도 점수를 계산하고, 상기 단일 단어별 중요도 점수에 기초하여 구(phrase) 형태 단어별 중요도 점수를 계산하는 단계; 및 (d) 상기 단일 단어별 중요도 점수 및 상기 구 형태 단어별 중요도 점수에 기초하여 사전 지정된 중요도 기준에 부합하는 단어를 중요 키워드로서 추출하는 단계;를 포함하는 키워드 자동 추출 방법이 제공된다.

Description

키워드 자동 추출 방법 및 장치{METHOD FOR AUTOMATIC KEYWORD EXTRACTION AND COMPUTING DEVICE THEREFOR}
본 발명은 키워드 자동 추출 방법에 관한 것으로서, 텍스트랭크(TextRank) 및 TF-IDF 기법을 이용하되 캡(CAP) 기법과 구(phrase) 형태의 단어 점수 계산 방법을 적용하여 뉴스 기사 등의 분석을 위해 중요도 높은 키워드를 자동 추출하는 방법 및 장치에 관한 것이다.
자동 키워드 추출은 요약문 생성 등과 함께 문서의 분석에서 텍스트 마이닝의 한 분야로 여러 방법을 통해 꾸준히 시도되고 있다. 이러한 텍스트 분석은 빈도나 단어 간의 관계, 단어의 품사 등을 이용해 단어 간의 관계를 정의하고 점수를 부여하는 방식으로 키워드를 선정하게 된다.
빈도만을 고려한 형태의 키워드 추출에서는 주어진 문서에 포함된 단어들의 문서 내 빈도나 타 문서에서의 빈도 등을 고려하여 점수를 계산하며, 가장 많이 쓰이는 형태로는 문서 내 빈도와 역문서 빈도를 동시에 고려하는 TF-IDF(Term Frequency - Inverse Document Frequency) 기법이 있다. 그러나 TF-IDF 등과 같이 빈도만을 고려하는 형태의 기법은 해당 문서에 빈도가 높고 다른 문서에서의 빈도가 낮은 단어가 중요한 단어라는 가정을 가지고 있다. 하지만 실제 문서들을 보면 빈도만으로 단어의 중요도를 따지는 일은 빈도 이외의 것을 고려하지 못한다는 약점을 가진다.
이러한 상황을 해결하는 방법으로 Google의 페이지랭크(PageRank) 기법을 응용한 텍스트랭크(TextRank)(R Mihalcea, P Tarau, 2004) 기법이 있다. TextRank는 그래프 기반 모델로써 빈도를 고려하는 기법들과 다르게 단어들의 관계를 정의하고 정의된 단어들의 관계를 통해서 점수를 계산하는 방식이다. TextRank는 기존의 빈도만을 고려하던 모델들과 달리 빈도 이외의 것을 반영한다는 점과 추출 대상을 문서, 문장, 단어 등 여러 가지로 쉽게 변환할 수 있다는 점에서 큰 장점을 가지지만, TextRank 또한 단어의 빈도를 완전하게 반영하지 못한다는 것이 약점이다.
이러한 이유로 TextRank와 TF-IDF 등의 기법을 발전시키려는 노력은 많이 있어왔다. TextRank에 쓰이는 그래프의 형태에 따른 여러 가지 추출 방법과 그래프의 노드(node)에 오는 대상을 단어와 문장을 섞는 등 여러 가지 방법으로 개선되어 왔지만, 아직까지도 완벽한 방법은 없으며 모든 방법이 특정 상황에서만 잘 작동하고 있다. 키워드 추출 방법은 대부분 앞서 언급된 계산 방식들을 통해 계산된 점수로 순위를 따지는 것이 일반적인 방법인데, 이 때문에 단어의 점수가 단어의 문서에서의 중요도를 충분히 반영해야 한다. 문서에서의 중요도를 충분히 반영하는 점수를 내기 위한 여러 계산방법은 지속적으로 발전의 필요성이 있으며, 동시에 구(phrase) 형태의 단어들과 단일 단어들 사이의 점수 비교에 합리적인 기준이 필요한 시점이다.
본 발명은 텍스트랭크(TextRank) 및 TF-IDF 기법을 이용하되 캡(CAP) 기법과 구(phrase) 형태의 단어 점수 계산 방법을 적용하여 뉴스 기사 등의 분석을 위해 중요도 높은 키워드를 자동 추출하는 방법 및 장치를 제공하기 위한 것이다.
본 발명의 일 측면에 따르면, 컴퓨팅 장치에서 실행되는 키워드 자동 추출에 관한 컴퓨터 구현 방법(Computer implemented method)로서, (a) 입력된 분석 대상 문서의 텍스트 데이터에 관한 전처리를 통해 분석 대상 단어들을 추출하는 단계; (b) 상기 분석 대상 단어들에 관한 문장 단위의 단일 단어별 빈도 점수를 각각의 행렬값으로 갖는 문장-단어 대응 행렬(Sentence-Term Matrix)을 생성하는 단계; (c) 상기 문장-단어 대응 행렬에 기초하여 단일 단어별 텍스트랭크(TextRank) 점수를 계산하고, 상기 문장 단위의 단일 단어별 빈도 점수에 기초하여 문서 단위의 단일 단어별 빈도 점수를 계산하며, 상기 단일 단어별 텍스트 랭크 점수와 상기 문서 단위의 단일 단어별 빈도 점수에 기초하여 단일 단어별 중요도 점수를 계산하고, 상기 단일 단어별 중요도 점수에 기초하여 구(phrase) 형태 단어별 중요도 점수를 계산하는 단계; 및 (d) 상기 단일 단어별 중요도 점수 및 상기 구 형태 단어별 중요도 점수에 기초하여 사전 지정된 중요도 기준에 부합하는 단어를 중요 키워드로서 추출하는 단계;를 포함하는 키워드 자동 추출 방법이 제공된다.
일 실시예에 의할 때, 상기 (b) 단계에서,
상기 문장 단위의 단일 단어별 빈도 점수는, TF-IDF(Term Frequency-Inverse Document Frequency) 기법 기반으로 산출되는 TF값과 IDF값의 곱으로 계산될 수 있다.
여기서, 상기 TF값은, 상기 분석 대상 문서에 포함된 문장들을 기준으로, 상기 분석 대상 단어 각각의 단일 단어별 상기 문장 단위의 출현 빈도수에 기반하여 산출될 수 있다.
여기서, 상기 IDF값은, 상기 분석 대상 문서 및 수집된 비교 대상 문서들에 포함된 모든 문장들을 모집단으로 하였을 때, 전체 문장 개수를 상기 분석 대상 단어 각각의 단일 단어별 출현 문장 개수로 나눈 값에 기반하여 산출될 수 있다.
일 실시예에 의할 때, 상기 (c) 단계에서, 상기 문서 단위의 단일 단어별 빈도 점수는, 상기 문장-단어 대응 행렬에서 사전 지정된 기준값을 넘지 않는 행렬값을 제외 처리한 후, 행렬값으로 남겨진 상기 문장 단위의 단일 단어별 빈도 점수를 단일 단어 기준으로 합산하고, 합산된 점수를 상기 분석 대상 문서에 포함된 문장 개수로 나눈 평균값으로 계산될 수 있다.
일 실시예에서, 상기 (c) 단계에서, 상기 단일 단어별 중요도 점수는 상기 단일 단어별 텍스트랭크 점수와 상기 문서 단위의 단일 단어별 빈도 점수의 곱으로 계산되고, 상기 구 형태 단어별 중요도 점수는 상기 구 형태의 단어를 구성하는 복수의 단위 단어들의 상기 단일 단어별 중요도 점수를 합산한 합산 점수를 상기 복수의 단위 단어들의 개수의 제곱근 값으로 나눈 값으로 계산될 수 있다.
일 실시예에 의할 때, 상기 (d) 단계는, 상기 구 형태 단어들 중 의미가 중복되는 키워드를 제거하는 단계를 포함할 수 있다.
여기서, 의미 중복 키워드를 제거하는 단계는, 적어도 2개의 단일 단어가 중복되는 구 형태의 단어들 중 상기 구 형태 단어별 중요도 점수에 기준하여 상대적으로 낮은 점수를 갖는 구 형태의 단어를 상기 중요 키워드에서 제거하는 단계일 수 있다.
본 발명의 다른 측면에 의할 때, 상술한 키워드 자동 추출 방법이 기록되며 컴퓨터로 읽을 수 있는 기록 매체가 제공된다.
본 발명의 또 다른 측면에 의할 때, 키워드 자동 추출 방법이 실행되는 컴퓨팅 장치로서, 메모리; 및 상기 메모리에 의해 적재된 명령어들을 실행하는 프로세서;를 포함하되, 상기 프로세서에 의해 실행되는 상기 키워드 자동 추출 방법에 관한 명령어들은, (a) 입력된 분석 대상 문서의 텍스트 데이터에 관한 전처리를 통해 분석 대상 단어들을 추출하는 단계; (b) 상기 분석 대상 단어들에 관한 문장 단위의 단일 단어별 빈도 점수를 각각의 행렬값으로 갖는 문장-단어 대응 행렬(Sentence-Term Matrix)을 생성하는 단계; (c) 상기 문장-단어 대응 행렬에 기초하여 단일 단어별 텍스트랭크(TextRank) 점수를 계산하고, 상기 문장 단위의 단일 단어별 빈도 점수에 기초하여 문서 단위의 단일 단어별 빈도 점수를 계산하며, 상기 단일 단어별 텍스트 랭크 점수와 상기 문서 단위의 단일 단어별 빈도 점수에 기초하여 단일 단어별 중요도 점수를 계산하고, 상기 단일 단어별 중요도 점수에 기초하여 구(phrase) 형태 단어별 중요도 점수를 계산하는 단계; 및 (d) 상기 단일 단어별 중요도 점수 및 상기 구 형태 단어별 중요도 점수에 기초하여 사전 지정된 중요도 기준에 부합하는 단어를 중요 키워드로서 추출하는 단계;를 수행하는 명령어들로 구성될 수 있다.
본 발명의 실시예에 따른 키워드 자동 추출 방법 및 장치에 의하면, 텍스트랭크(TextRank)와 TF-IDF 점수를 이용해 단어의 빈도와 관계를 모두 고려하면서, TF-IDF 점수 계산시 특정 수치 이하의 점수를 반영하지 않는 CAP 기법을 이용하여 각 단어의 점수가 문서 내의 중요도를 충분히 반영할 수 있도록 하는 효과가 있다.
또한 본 발명의 실시예에 따른 키워드 자동 추출 방법 및 장치에 의하면, 구(phrase) 형태의 단어와 단일 단어들의 점수를 함께 비교해주기 위해, 효율적인 구 형태의 단어들의 점수 계산 방식과 의미가 중복되는 단어들을 제거하는 합리적인 키워드 추출 방식을 제시한다.
도 1은 본 발명의 실시예에 따른 컴퓨팅 장치에서 실행되는 키워드 자동 추출에 관한 컴퓨터 구현 방법(Computer implemented method)에 관한 순서도.
도 2는 본 발명의 실시예에 따라 생성되는 문장-단어 대응 행렬(Sentence-Term Matrix)를 설명하기 위한 참조 도면.
도 3은 본 발명에 적용되는 텍스트랭크(TextRank) 기법을 설명하기 위한 참조 도면.
도 4는 분석 대상 문서인 뉴스 기사의 일 예이고, 도 5는 도 4의 뉴스 기사로부터 추출된 중요 키워드 중 구 형태의 단어를 예시한 도면.
본 발명은 다양한 변환을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세한 설명에 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변환, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.
본 발명을 설명함에 있어서, 관련된 공지 기술에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다. 또한, 본 명세서의 설명 과정에서 이용되는 숫자(예를 들어, 제1, 제2 등)는 하나의 구성요소를 다른 구성요소와 구분하기 위한 식별기호에 불과하다. 또한, 명세서 전체에서, 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다.
도 1은 본 발명의 실시예에 따른 컴퓨팅 장치에서 실행되는 키워드 자동 추출에 관한 컴퓨터 구현 방법(Computer implemented method)에 관한 순서도이고, 도 2는 본 발명의 실시예에 따라 생성되는 문장-단어 대응 행렬(Sentence-Term Matrix)를 설명하기 위한 참조 도면이며, 도 3은 본 발명에 적용되는 텍스트랭크(TextRank) 기법을 설명하기 위한 참조 도면이고, 도 4는 분석 대상 문서인 뉴스 기사의 일 예이고, 도 5는 도 4의 뉴스 기사로부터 추출된 중요 키워드 중 구 형태의 단어를 예시한 도면이다.
본 발명은 뉴스 기사 등의 다양한 문서 분석에 이용될 자동 키워드 추출에서 CAP 기법을 이용하여 중요도가 낮은 단어의 점수를 낮추는 새로운 점수 계산 방법을 제안하며, 단일 단어와 점수를 비교해야 할 구 형태의 단어의 점수 계산에 있어서 효과적인 점수 계산 방식 및 구 형태 단어들의 대한 후처리 방식을 제안하고 있다.
이하, 첨부된 도면들 중 도 1의 순서도를 중심으로 도 2 ~ 도 4를 함께 참조하여, 본 발명의 실시예에 따른 키워드 자동 추출 방법에 관하여 상세히 설명한다.
텍스트 전처리[도 1의 S110]
본 발명의 실시예에 의하면, 이와 같이 제안되는 두 가지 방법을 적용시키기 전에, 입력된 문서의 텍스트 데이터에 관한 전처리가 이루어진다.
상술한 전처리 과정을 통해, 텍스트 데이터에 포함된 특수 문자를 제거하거나 링크로 연결된 URL 주소 등을 제거하는 작업이 실행될 수 있고, 자연어 처리(NLP : Natural Language Processing)에 의한 단어별 품사 태깅, 불용어(예, 전치사, 조사, 접속사 등) 제거 작업이 실행될 수 있다. 특히, 단어의 품사를 이용하는 전처리 과정에 의할 때, 문장에서 명사구를 추출하는 작업, 각 단어의 품사에 따라 해당 품사만의 방식으로 단어를 원형화시키는 작업(lemmatization)(예, boys -> boy, running -> run, went -> go 등) 등도 실행될 수 있다.
상술한 바와 같은 전처리 과정을 거치면, 해당 분석 대상 문서의 분석 과정에 실제 활용될 분석 대상 단어들(즉, 중요 키워드를 선별하는데 후보가 되는 단어들)이 추출된다.
문장-단어 대응 행렬 생성[도 1의 S120]
분석 대상 단어들이 추출되면, 추출된 분석 대상 단어들 각각을 기준으로 문장-단어 대응 행렬(Sentence-Term Matrix)을 생성한다.
여기서, 문장-단어 대응 행렬은, 도 2를 기준으로 할 때, 입력된 분석 대상 문서가 총 m개의 문장(즉, S1 ~ Sm)으로 구성되고, 앞선 텍스트 데이터의 전처리를 통해서 총 n개의 단일 단어(즉, T1 ~ Tn)가 분석 대상 단어로서 추출된 케이스에 생성된 행렬로 예시되고 있다.
또한 여기서, 문장-단어 대응 행렬의 각 행렬값으로는, 추출된 분석 대상 단어들 각각에 대한 '문장 단위의 단일 단어별 빈도 점수'가 이용될 수 있다. 이때, 각 행렬값으로 이용될 '문장 단위의 단일 단어별 빈도 점수'는 TF-IDF(Term Frequency - Inverse Document Frequency) 기법 기반으로 산출될 수 있다.
다만, 일반적으로 TF-IDF값은 '문서 단위'의 단어 빈도에 관한 산출 기법인 바, 본 발명의 실시예에서는 이를 '문장 단위'의 단어 빈도를 산출해내기 위해서, TF-IDF 기법의 기본형에 관한 일부 변형을 도입하였다. 이에 관한 이해를 돕기 위해, '문서 단위'의 TF-IDF값을 계산하는 기존 방식을 먼저 설명한 후, 본 발명에 적용된 '문장 단위'의 TF-IDF값을 계산하는 변형된 방식에 대하여 설명하기로 한다.
기존의 문서 단위의 TF-IDF 산출 방식에 의할 때, TF-IDF 값은, 하기 수학식 1과 같이, 해당 문서에 해당 단어(Term)가 출현하는 단어 빈도(즉, TF값, 일반적으로 TF(t,d)로 표현됨)과 역문서 빈도(IDF값)의 곱으로 계산된다.
Figure pat00001
이때, TF값을 계산하는 방법으로는 다양한 방법이 사용될 수 있는데, 먼저, TF값을 계산하는 가장 간단한 방법으로는 단순히 문서(d) 내에 출현하는 해당 단어(t)의 총 빈도수(f(t,d))를 그대로 사용하는 것이다. 이에 의할 때, TF(t,d)는 곧 f(t,d)가 된다. 다른 방법으로는, 불린(Boolean) 빈도를 이용하는 방식이 있다. 이에 의할 때, TF(t,d)는 해당 문서(d) 내에 해당 단어(t)가 한 번이라도 나타나면 1, 그렇지 않은 경우에는 0이 된다. 또 다른 방법으로는, 로그 스케일 빈도를 이용하는 방식이 있다. 이에 의할 때, TF(t,d)는 log(f(t,d)+1)로 계산될 수 있다. 이외에도 TF값을 계산하는 방법으로는 증가 빈도(즉, 가장 많은 빈도로 출현한 단어의 출현 빈도를 분모로 나눠준 값) 등 다양하게 정의되는 방식들이 적용될 수 있다. TF값을 계산하는 방법으로는 상술한 방법 중 어떤 방식이 적용되어도 무방하다. 이는 시스템 설계자의 선택에 의할 수 있는 것이기 때문이다.
또한 이때, IDF값을 계산하는 방법으로는 다음과 같은 수학식, 즉,
Figure pat00002
이 적용된다. 여기서,
Figure pat00003
는 문서 모집단의 문서 수(즉, 분석 대상 문서와 이와 비교할 비교 대상 문서를 합한 전체 문서 수)이고,
Figure pat00004
는 그 문서 모집단 중 해당 단어(t)를 포함하는 문서의 수이다.
이에 의할 때, 특정 단어(t)가 다른 문서에서는 일반적으로 나타나지 않고 해당 분석 대상 문서에서 많이 출현한다면, TF-IDF 값, 즉 TF-IDF(d, t) 값은 높게 나타나게 된다.
따라서, 본 발명의 실시예에서는, 상술한 바와 같은 TF-IDF 기법을 도입하되, '문장 단위의 단일 단어별 빈도 점수'를 계산하기 위하여, 하기의 수학식 2와 같은 변형된 TF-IDF 산출 방식이 적용될 수 있다.
Figure pat00005
이때, TF(s,t)값은, 분석 대상 문서에 포함된 문장들을 기준으로, 상기 분석 대상 단어 각각의 단일 단어별 상기 문장 단위의 출현 빈도수에 기반하여 산출될 수 있다. 이때, 구체적인 TF 계산 방법으로 상술한 다양한 방식 중 어느 하나가 채용될 수 있다.
또한 이때, IDF(t)값은, 상기 분석 대상 문서 및 수집된 비교 대상 문서들에 포함된 모든 문장들을 모집단으로 하였을 때, 전체 문장 개수를 상기 분석 대상 단어 각각의 단일 단어별 출현 문장 개수로 나눈 값에 기반하여 산출될 수 있다. 보다 구체적으로는, 다음과 같은 수학식, 즉,
Figure pat00006
이 적용될 수 있다. 여기서,
Figure pat00007
는 문서 모집단 내의 문장 수(즉, 분석 대상 문서에 포함된 문장 수와, 이와 비교될 비교 대상 문서 내에 포함된 문장 수를 합한 전체 문장 수)이고,
Figure pat00008
는 그 문서 모집단 내의 문장들 중 해당 단어(t)를 포함하는 문장의 수이다.
상술한 바에 따르면, 문장-단어 대응 행렬 내의 각 행렬값으로 이용될 '문장 단위의 단일 단어별 빈도 점수'가 계산될 수 있다. 이에 따라 문장-단어 대응 행렬이 생성되면, 이에 기반하여, 도 1의 S130(단일 단어별 텍스트랭크 점수 계산) 및 S135(문서 단위의 단일 단어별 빈도 점수 계산)가 실행된다.
단일 단어별 텍스트랭크 점수 계산[도 1의 S130]
상술한 바와 같이, 문장-단어 대응 행렬이 생성되면, 본 발명의 실시예에서는 그 생성된 문장-단어 대응 행렬에 기초하여 '단일 단어별 텍스트랭크(TextRank)' 점수를 계산한다. 이하, 이해를 돕기 위해, 도 3을 참조하여 여기에 적용된 텍스트랭크 기법에 대하여 설명하면 다음과 같다.
앞서도 설명하였지만, 텍스트랭크 기법은 Google의 페이지랭크(PageRank) 기법(즉, 중요도가 높은 웹사이트는 다른 많은 사이트로부터 링크를 받는다는 점에 착안하여 웹 문서의 상대적 중요도를 가리는 기법)을 응용한 것으로서, 문서 내의 문장 또는 단어를 이용하여 그 중요도 랭킹을 계산하는 그래프 기반의 알고리즘 모델이다. 도 3을 참조할 때, 생성된 문장-단어 대응 행렬을 그 전치 행렬과 내적(Inner product) 처리하게 되면, 문장 간 혹은 단어 간의 연관 관계 정도(즉, 코사인 유사도)를 정의하는 연관 행렬(Correlation Matrix)이 생성되게 되는데, 이러한 연관 행렬을 이용하면 문장 간 혹은 단어 간의 가중치 그래프(Weighted graph)가 도출될 수 있다. 이때, 택스트랭크 점수는 이와 같은 도출되는 가중치 그래프에서의 문장 간 혹은 단어 간의 가중치 값에 기반하여 계산될 수 있다. 도 3은 문장 간 가중치 그래프가 생성된 케이스가 예시되고 있지만, 이와 동일한 방법론에 의할 때 단어 간 가중치 그래프도 생성될 수 있으며, 본 발명의 실시예에서는 단어 간 가중치를 이용하여 '단일 단어별 텍스트랭크 점수'를 계산하게 될 것이다. 이때, 텍스트랭크 점수는 하기 수학식 3에 의해 계산될 수 있다.
Figure pat00009
여기서, TR(Vi)는 특정 단일 단어(Vi)에 대한 텍스트랭크 점수이고, rij는 단어 i와 단어 j 간의 가중치이며, d는 댐핑 팩터(damping factor)로서 이는 페이지랭크에서 사용되는 값을 그대로 사용할 수 있다.
문서 단위의 단일 단어별 빈도 점수 계산[도 1의 S135]
본 단계에서, '문서 단위의 단일 단어별 빈도 점수'는 앞서 계산된 '문장 단위의 단일 단어별 빈도 점수'에 기초하여 다음과 같은 방법으로 계산될 수 있다.
즉, '문서 단위의 단일 단어별 빈도 점수'는, 상기 문장-단어 대응 행렬에서 사전 지정된 기준값(즉, CAP 값)을 넘지 않는 행렬값을 제외 처리한 후(즉, 0으로 치환한 후), 행렬값으로 남겨진 '문장 단위의 단일 단어별 빈도 점수'를 단일 단어 기준으로 합산하고, 합산된 점수를 상기 분석 대상 문서에 포함된 문장 개수로 나눈 평균값으로 계산될 수 있다.
이는 단일 단어(Term)에 해당하는 성분 중 사전 지정해준 CAP 값을 넘지 않는 성분을 가진 Term의 TF-IDF 점수를 낮게 만들어주는 효과가 있다.
단일 단어별 중요도 점수 계산[도 1의 S140]
상술한 바와 같이, '단일 단어별 텍스트 랭크 점수'와 '문서 단위의 단일 단어별 빈도 점수'가 계산되면, 이에 기초하여 '단일 단어별 중요도 점수'를 계산하게 되는데, 이때, '단일 단어별 중요도 점수'는 '단일 단어별 텍스트랭크 점수'와 '문서 단위의 단일 단어별 빈도 점수'의 곱으로 계산될 수 있다.
구 형태 단어별 중요도 점수 계산[도 1의 S150]
상술한 바와 같이, '단일 단어별 중요도 점수'가 산출되면 이에 기초하여 구(phrase) 형태 단어별 중요도 점수를 계산하게 되는데, 이때 구 형태 단어의 중요도 점수를 계산하는 방식은 매우 중요하다. 계산 방식에 따라 구 형태 단어의 중요도 점수들이 변하게 되며, 이는 구 형태 단어와 단일 단어 형태의 단어들의 중요도를 점수 형태로 잘 반영해야 하기 때문이다. 본 발명의 실시예에 의할 때, '구 형태 단어별 중요도 점수'는, 하기 수학식 4와 같이, 구 형태의 단어를 구성하는 복수의 단위 단어들의 '단일 단어별 중요도 점수'를 합산한 합산 점수를 그 복수의 단위 단어들의 개수의 제곱근으로 나눈 값으로 계산될 수 있다.
Figure pat00010
중요 키워드 추출[도 1의 S160 및 S170]
본 발명의 실시예에서는, 전술한 단계들을 모두 거친 이후, '단일 단어별 중요도 점수' 및 '구 형태 단어별 중요도 점수'에 기초하여 사전 지정된 중요도 기준(이는 시스템 설계자에 의해 결정됨)에 부합하는 단어를 중요 키워드로서 추출하는 단계가 실행된다. 예를 들어, 사전 지정된 점수 이상의 값을 갖는 단일 단어 및 구 형태의 단어가 중요 키워드로 자동 도출될 수 있다.
다만, 이 과정에서, 구 형태 단어들 중 의미가 중복되는 키워드를 제거해주어야 하는데, 이때, 의미 중복 키워드를 제거하는 단계는, 적어도 2개의 단일 단어가 중복되는 구 형태의 단어들 중 '구 형태 단어별 중요도 점수'에 기준하여 상대적으로 낮은 점수를 갖는 구 형태의 단어를 상기 중요 키워드에서 제거하는 방식에 의할 수 있다.
상술한 본 발명의 실시예에 따른 키워드 자동 추출 방법은 컴퓨터로 읽을 수 있는 기록 매체에 컴퓨터가 읽을 수 있는 코드로서 구현되는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록매체로는 컴퓨터 시스템에 의하여 해독될 수 있는 데이터가 저장된 모든 종류의 기록 매체를 포함한다. 예를 들어, ROM(Read Only Memory), RAM(Random Access Memory), 자기 테이프, 자기 디스크, 플래쉬 메모리, 광 데이터 저장장치 등이 있을 수 있다. 또한, 본 발명의 실시예에 따른 키워드 자동 추출 방법은 적어도 메모리 및 프로세서를 포함하는 컴퓨팅 장치에서 처리 및 실행될 수 있으며, 구현 방식에 따라서는 컴퓨터 통신망으로 연결된 컴퓨터 시스템에 분산되어 분산방식으로 읽을 수 있는 코드로서 저장되고 실행될 수도 있다.
이상에서는 본 발명의 실시예를 참조하여 설명하였지만, 해당 기술 분야에서 통상의 지식을 가진 자라면 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 쉽게 이해할 수 있을 것이다.

Claims (7)

  1. 컴퓨팅 장치에서 실행되는 키워드 자동 추출에 관한 컴퓨터 구현 방법(Computer implemented method)로서,
    (a) 입력된 분석 대상 문서의 텍스트 데이터에 관한 전처리를 통해 분석 대상 단어들을 추출하는 단계;
    (b) 상기 분석 대상 단어들에 관한 문장 단위의 단일 단어별 빈도 점수를 각각의 행렬값으로 갖는 문장-단어 대응 행렬(Sentence-Term Matrix)을 생성하는 단계;
    (c) 상기 문장-단어 대응 행렬에 기초하여 단일 단어별 텍스트랭크(TextRank) 점수를 계산하고, 상기 문장 단위의 단일 단어별 빈도 점수에 기초하여 문서 단위의 단일 단어별 빈도 점수를 계산하며, 상기 단일 단어별 텍스트 랭크 점수와 상기 문서 단위의 단일 단어별 빈도 점수에 기초하여 단일 단어별 중요도 점수를 계산하고, 상기 단일 단어별 중요도 점수에 기초하여 구(phrase) 형태 단어별 중요도 점수를 계산하는 단계; 및
    (d) 상기 단일 단어별 중요도 점수 및 상기 구 형태 단어별 중요도 점수에 기초하여 사전 지정된 중요도 기준에 부합하는 단어를 중요 키워드로서 추출하는 단계;
    를 포함하는 키워드 자동 추출 방법.
  2. 제1항에 있어서,
    상기 (b) 단계에서,
    상기 문장 단위의 단일 단어별 빈도 점수는, TF-IDF(Term Frequency-Inverse Document Frequency) 기법 기반으로 산출되는 TF값과 IDF값의 곱으로 계산되되,
    상기 TF값은, 상기 분석 대상 문서에 포함된 문장들을 기준으로, 상기 분석 대상 단어 각각의 단일 단어별 상기 문장 단위의 출현 빈도수에 기반하여 산출되고,
    상기 IDF값은, 상기 분석 대상 문서 및 수집된 비교 대상 문서들에 포함된 모든 문장들을 모집단으로 하였을 때, 전체 문장 개수를 상기 분석 대상 단어 각각의 단일 단어별 출현 문장 개수로 나눈 값에 기반하여 산출되는 것을 특징으로 하는, 키워드 자동 추출 방법.
  3. 제1항에 있어서,
    상기 (c) 단계에서, 상기 문서 단위의 단일 단어별 빈도 점수는,
    상기 문장-단어 대응 행렬에서 사전 지정된 기준값을 넘지 않는 행렬값을 제외 처리한 후, 행렬값으로 남겨진 상기 문장 단위의 단일 단어별 빈도 점수를 단일 단어 기준으로 합산하고, 합산된 점수를 상기 분석 대상 문서에 포함된 문장 개수로 나눈 평균값으로 계산되는 것을 특징으로 하는, 키워드 자동 추출 방법.
  4. 제1항에 있어서,
    상기 (c) 단계에서,
    상기 단일 단어별 중요도 점수는, 상기 단일 단어별 텍스트랭크 점수와 상기 문서 단위의 단일 단어별 빈도 점수의 곱으로 계산되고,
    상기 구 형태 단어별 중요도 점수는, 상기 구 형태의 단어를 구성하는 복수의 단위 단어들의 상기 단일 단어별 중요도 점수를 합산한 합산 점수를, 상기 복수의 단위 단어들의 개수의 제곱근 값으로 나눈 값으로 계산되는 것을 특징으로 하는, 키워드 자동 추출 방법.
  5. 상기 (d) 단계는, 상기 구 형태 단어들 중 의미가 중복되는 키워드를 제거하는 단계를 포함하되,
    의미 중복 키워드를 제거하는 단계는, 적어도 2개의 단일 단어가 중복되는 구 형태의 단어들 중 상기 구 형태 단어별 중요도 점수에 기준하여 상대적으로 낮은 점수를 갖는 구 형태의 단어를 상기 중요 키워드에서 제거하는 단계인 것을 특징으로 하는, 키워드 자동 추출 방법.
  6. 제1항 내지 제5항 중 어느 한 항에 따른 키워드 자동 추출 방법이 기록되며 컴퓨터로 읽을 수 있는 기록 매체.
  7. 키워드 자동 추출 방법이 실행되는 컴퓨팅 장치로서,
    메모리; 및 상기 메모리에 의해 적재된 명령어들을 실행하는 프로세서;를 포함하되, 상기 프로세서에 의해 실행되는 상기 키워드 자동 추출 방법에 관한 명령어들은,
    (a) 입력된 분석 대상 문서의 텍스트 데이터에 관한 전처리를 통해 분석 대상 단어들을 추출하는 단계; (b) 상기 분석 대상 단어들에 관한 문장 단위의 단일 단어별 빈도 점수를 각각의 행렬값으로 갖는 문장-단어 대응 행렬(Sentence-Term Matrix)을 생성하는 단계; (c) 상기 문장-단어 대응 행렬에 기초하여 단일 단어별 텍스트랭크(TextRank) 점수를 계산하고, 상기 문장 단위의 단일 단어별 빈도 점수에 기초하여 문서 단위의 단일 단어별 빈도 점수를 계산하며, 상기 단일 단어별 텍스트 랭크 점수와 상기 문서 단위의 단일 단어별 빈도 점수에 기초하여 단일 단어별 중요도 점수를 계산하고, 상기 단일 단어별 중요도 점수에 기초하여 구(phrase) 형태 단어별 중요도 점수를 계산하는 단계; 및 (d) 상기 단일 단어별 중요도 점수 및 상기 구 형태 단어별 중요도 점수에 기초하여 사전 지정된 중요도 기준에 부합하는 단어를 중요 키워드로서 추출하는 단계;를 수행하는 것을 특징으로 하는, 컴퓨팅 장치.
KR1020190028210A 2019-03-12 2019-03-12 키워드 자동 추출 방법 및 장치 KR102196583B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020190028210A KR102196583B1 (ko) 2019-03-12 2019-03-12 키워드 자동 추출 방법 및 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190028210A KR102196583B1 (ko) 2019-03-12 2019-03-12 키워드 자동 추출 방법 및 장치

Publications (2)

Publication Number Publication Date
KR20200109417A true KR20200109417A (ko) 2020-09-23
KR102196583B1 KR102196583B1 (ko) 2020-12-31

Family

ID=72708510

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190028210A KR102196583B1 (ko) 2019-03-12 2019-03-12 키워드 자동 추출 방법 및 장치

Country Status (1)

Country Link
KR (1) KR102196583B1 (ko)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102217213B1 (ko) * 2020-10-27 2021-02-18 장경애 딥러닝 기반 컨텐츠 관리를 위한 서비스 제공 장치 및 방법
CN112802597A (zh) * 2021-01-18 2021-05-14 吾征智能技术(北京)有限公司 一种新生儿黄疸的智能评估系统、设备、存储介质
CN113342928A (zh) * 2021-05-07 2021-09-03 上海大学 一种基于改进TextRank算法的钢材料专利文本中工艺信息抽取方法及其系统
CN113988066A (zh) * 2021-09-22 2022-01-28 国网天津市电力公司电力科学研究院 基于改进Jieba分词的配电网检修文本信息提取方法
CN114331766A (zh) * 2022-01-05 2022-04-12 中国科学技术信息研究所 专利技术核心度的确定方法、装置、电子设备及存储介质
KR20220081009A (ko) * 2020-12-08 2022-06-15 주식회사 카카오엔터프라이즈 주요 키워드 추출 장치, 그것의 제어 방법 및 주요 키워드 추출 프로그램
KR102445443B1 (ko) * 2022-05-27 2022-09-20 (주)유알피시스템 문서내 키워드 추출 자동화 방법 및 시스템
KR20230053373A (ko) * 2021-10-14 2023-04-21 비큐리오 주식회사 심층 신경망 기반의 문서 분석 시스템과 방법 및 이를 구현하기 위한 프로그램이 저장된 기록 매체 및 매체에 저장된 컴퓨터프로그램
CN118013955A (zh) * 2024-04-08 2024-05-10 中国标准化研究院 一种基于关联算法的标准信息更新方法

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102444457B1 (ko) 2022-06-03 2022-09-19 주식회사 액션파워 단어 그래프를 이용한 대화의 요약 생성 방법

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101717230B1 (ko) * 2015-12-30 2017-03-16 성균관대학교산학협력단 재귀 오토인코더 기반 문장 벡터 모델링을 이용하는 문서 요약 방법 및 문서 요약 시스템

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101717230B1 (ko) * 2015-12-30 2017-03-16 성균관대학교산학협력단 재귀 오토인코더 기반 문장 벡터 모델링을 이용하는 문서 요약 방법 및 문서 요약 시스템

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102217213B1 (ko) * 2020-10-27 2021-02-18 장경애 딥러닝 기반 컨텐츠 관리를 위한 서비스 제공 장치 및 방법
KR20220081009A (ko) * 2020-12-08 2022-06-15 주식회사 카카오엔터프라이즈 주요 키워드 추출 장치, 그것의 제어 방법 및 주요 키워드 추출 프로그램
CN112802597A (zh) * 2021-01-18 2021-05-14 吾征智能技术(北京)有限公司 一种新生儿黄疸的智能评估系统、设备、存储介质
CN112802597B (zh) * 2021-01-18 2023-11-21 吾征智能技术(北京)有限公司 一种新生儿黄疸的智能评估系统、设备、存储介质
CN113342928A (zh) * 2021-05-07 2021-09-03 上海大学 一种基于改进TextRank算法的钢材料专利文本中工艺信息抽取方法及其系统
CN113988066A (zh) * 2021-09-22 2022-01-28 国网天津市电力公司电力科学研究院 基于改进Jieba分词的配电网检修文本信息提取方法
KR20230053373A (ko) * 2021-10-14 2023-04-21 비큐리오 주식회사 심층 신경망 기반의 문서 분석 시스템과 방법 및 이를 구현하기 위한 프로그램이 저장된 기록 매체 및 매체에 저장된 컴퓨터프로그램
CN114331766A (zh) * 2022-01-05 2022-04-12 中国科学技术信息研究所 专利技术核心度的确定方法、装置、电子设备及存储介质
CN114331766B (zh) * 2022-01-05 2022-07-08 中国科学技术信息研究所 专利技术核心度的确定方法、装置、电子设备及存储介质
KR102445443B1 (ko) * 2022-05-27 2022-09-20 (주)유알피시스템 문서내 키워드 추출 자동화 방법 및 시스템
CN118013955A (zh) * 2024-04-08 2024-05-10 中国标准化研究院 一种基于关联算法的标准信息更新方法

Also Published As

Publication number Publication date
KR102196583B1 (ko) 2020-12-31

Similar Documents

Publication Publication Date Title
KR102196583B1 (ko) 키워드 자동 추출 방법 및 장치
Abu Nada et al. Arabic text summarization using arabert model using extractive text summarization approach
EP2664997B1 (en) System and method for resolving named entity coreference
Narasimhan et al. Machine comprehension with discourse relations
Peng et al. Context sensitive stemming for web search
Al-Khawaldeh et al. Lexical cohesion and entailment based segmentation for arabic text summarization (lceas)
US7299228B2 (en) Learning and using generalized string patterns for information extraction
US20070016863A1 (en) Method and apparatus for extracting and structuring domain terms
KR20160026892A (ko) 논팩토이드형 질의 응답 시스템 및 방법
Meena et al. Analysis of sentence scoring methods for extractive automatic text summarization
Banerjee et al. WikiWrite: Generating Wikipedia Articles Automatically.
Croce et al. Neural learning for question answering in italian
WO2018056423A1 (ja) シナリオパッセージ分類器、シナリオ分類器、及びそのためのコンピュータプログラム
Weerasinghe et al. Feature vector difference based neural network and logistic regression models for authorship verification
Patel et al. Extractive Based Automatic Text Summarization.
Weerasinghe et al. Feature Vector Difference based Authorship Verification for Open-World Settings.
KR102376489B1 (ko) 단어 랭킹 기반의 텍스트 문서 군집 및 주제 생성 장치 및 그 방법
AbdElminaam et al. Aom-mpa: Arabic opinion mining using marine predators algorithm based feature selection
Al-Azzawy et al. Arabic words clustering by using K-means algorithm
Nagy et al. Improving fake news classification using dependency grammar
Ehsan et al. A Pairwise Document Analysis Approach for Monolingual Plagiarism Detection.
Nawab et al. Retrieving candidate plagiarised documents using query expansion
KasthuriArachchi et al. Deep learning approach to detect plagiarism in sinhala text
Saggion Topic-based Summarization at DUC 2005
Büchler et al. Scaling historical text re-use

Legal Events

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