KR102304673B1 - 키워드 추출 방법, 컴퓨터 장치, 및 저장 매체 - Google Patents

키워드 추출 방법, 컴퓨터 장치, 및 저장 매체 Download PDF

Info

Publication number
KR102304673B1
KR102304673B1 KR1020197017920A KR20197017920A KR102304673B1 KR 102304673 B1 KR102304673 B1 KR 102304673B1 KR 1020197017920 A KR1020197017920 A KR 1020197017920A KR 20197017920 A KR20197017920 A KR 20197017920A KR 102304673 B1 KR102304673 B1 KR 102304673B1
Authority
KR
South Korea
Prior art keywords
word
determined
text
processed
sequence
Prior art date
Application number
KR1020197017920A
Other languages
English (en)
Other versions
KR20190085098A (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 텐센트 테크놀로지(센젠) 컴퍼니 리미티드
Publication of KR20190085098A publication Critical patent/KR20190085098A/ko
Application granted granted Critical
Publication of KR102304673B1 publication Critical patent/KR102304673B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • 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
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/18Complex mathematical operations for evaluating statistical data, e.g. average values, frequency distributions, probability functions, regression analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/205Parsing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/279Recognition of textual entities
    • G06F40/284Lexical analysis, e.g. tokenisation or collocates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/044Recurrent networks, e.g. Hopfield networks
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Artificial Intelligence (AREA)
  • Data Mining & Analysis (AREA)
  • Health & Medical Sciences (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Software Systems (AREA)
  • Mathematical Physics (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Computing Systems (AREA)
  • Evolutionary Computation (AREA)
  • Mathematical Analysis (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Molecular Biology (AREA)
  • Biophysics (AREA)
  • Biomedical Technology (AREA)
  • Algebra (AREA)
  • Databases & Information Systems (AREA)
  • Evolutionary Biology (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Operations Research (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Medical Informatics (AREA)
  • Machine Translation (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Character Discrimination (AREA)

Abstract

본 발명은 사용자 단말기 또는 서버에 적용 가능한 키워드 추출 방법에 관한 것이다. 상기 키워드 추출 방법은, 처리될 텍스트의 결정될 단어를 획득하는 단계; 결정될 단어에 각각 대응하는 선행 텍스트 단어를 결정하는 단계 - 선행 텍스트 단어는 처리될 텍스트 내의 결정될 단어에 선행하는 텍스트에서 발견되는 단어임 -; 결정될 단어와 결정될 단어에 각각 대응하는 선행 텍스트 단어가 처리될 텍스트에 나타나는 순서에 기초하여, 결정될 단어의 단어 시퀀스(word sequence)를 결정하는 단계; 결정될 단어가 처리될 텍스트의 키워드일 확률을 얻기 위해, 결정될 단어의 단어 시퀀스를 훈련된 순환 신경망 모델(recurrent neural network model)에 입력하는 단계; 결정될 단어가 처리될 텍스트의 키워드일 확률 및 사전 설정된 임계값에 기초하여, 처리될 텍스트의 키워드를 결정하는 단계를 포함한다.

Description

키워드 추출 방법, 컴퓨터 장치, 및 저장 매체
본 출원은 2017년 2월 23일에 중국 특허청에 출원된 중국 특허출원 제201710101013.1호("KEYWORD EXTRACTION METHOD AND APPARATUS")에 대해 우선권을 주장하는 바이며, 그 전체 내용이 원용에 의해 본 명세서에 포함된다.
본 출원은 정보 기술 분야에 관한 것으로, 상세하게는 키워드 추출 방법, 컴퓨터 장치, 및 저장 매체에 관한 것이다.
정보화 시대가 발전함에 따라 정보 표현 방식이 다양해지고 있으며, 텍스트를 이용하여 정보를 표현하는 방식은 대체할 수 없다. 네트워크가 발전함에 따라 온라인 텍스트 정보량이 폭발적으로 증가하고 있다. 필요한 텍스트 정보를 수동으로 얻는 것이 점점 더 어려워지고 있다. 따라서, 정보를 효율적으로 얻는 방법이 매우 중요한 주제가 되고 있다.
대용량 텍스트 데이터를 효율적으로 처리하기 위해, 연구원들이 텍스트 분류, 텍스트 클러스터링, 자동 요약, 및 정보 검색(information retrieval) 등에 대해 많은 연구를 하고 있다. 이러한 연구는 모두 핵심적이고 기본적인 문제, 즉 텍스트 내의 키워드를 추출하는 방법에 관한 것이다.
종래의 키워드 추출 방법은 특징 선택에 기반한 기계 학습 알고리즘(machine learning algorithm)을 이용하며, 데이터의 특징에 따라 효율적인 특징이 수동으로 추출될 필요가 있다. 수동 작업 방식은 주관적인 생각에 크게 의존하기 때문에, 키워드의 정확도를 보장할 수 없다.
본 출원에서 제공되는 다양한 실시예에 따라, 키워드 추출 방법, 컴퓨터 장치, 및 저장 매체가 제공된다.
전술한 목적을 달성하기 위해, 본 출원의 실시예에서는 다음의 기술적 해결책이 사용된다.
사용자 단말기 또는 서버에 적용되는 키워드 추출 방법은,
처리될 텍스트의 결정될 단어를 획득하는 단계;
결정될 단어에 각각 대응하는 선행 단어를 결정하는 단계 - 선행 단어는 처리될 텍스트 내의 결정될 단어의 선행 텍스트에 나타나는 단어임 -
결정될 단어와 결정될 단어에 각각 대응하는 선행 단어가 처리될 텍스트에 나타나는 순서에 따라, 결정될 단어의 단어 시퀀스(word sequence)를 결정하는 단계;
결정될 단어 각각이 처리될 텍스트의 키워드일 확률을 얻기 위해, 결정될 단어의 단어 시퀀스를 훈련된 순환 신경망 모델(cyclic neural network model)에 각각 입력하는 단계; 및
결정될 단어 각각이 처리될 텍스트의 키워드일 확률 및 사전 설정된 임계값에 따라, 처리될 텍스트의 키워드를 결정하는 단계를 포함하다.
컴퓨터 장치가 메모리와 프로세서를 포함한다. 상기 메모리는 컴퓨터 판독가능 명령을 저장한다. 상기 컴퓨터 판독가능 명령은, 상기 프로세서에 의해 실행되는 경우 상기 프로세서로 하여금:
처리될 텍스트의 결정될 단어를 획득하는 단계;
결정될 단어에 각각 대응하는 선행 단어를 결정하는 단계 - 선행 단어는 처리될 텍스트 내의 결정될 단어의 선행 텍스트에 나타나는 단어임 -
결정될 단어와 결정될 단어에 각각 대응하는 선행 단어가 처리될 텍스트에 나타나는 순서에 따라, 결정될 단어의 단어 시퀀스를 결정하는 단계;
결정될 단어 각각이 처리될 텍스트의 키워드일 확률을 얻기 위해, 결정될 단어의 단어 시퀀스를 훈련된 순환 신경망 모델에 각각 입력하는 단계; 및
결정될 단어 각각이 처리될 텍스트의 키워드일 확률 및 사전 설정된 임계값에 따라, 처리될 텍스트의 키워드를 결정하는 단계를 수행하게 한다.
컴퓨터 판독가능 명령을 저장하는 하나 이상의 비휘발성 저장 매체가 제공된다. 상기 컴퓨터 판독가능 명령은, 하나 이상의 프로세서에 의해 실행되는 경우 하나 이상의 프로세서로 하여금:
처리될 텍스트의 결정될 단어를 획득하는 단계;
결정될 단어에 각각 대응하는 선행 단어를 결정하는 단계 - 선행 단어는 처리될 텍스트 내의 결정될 단어의 선행 텍스트에 나타나는 단어임 -
결정될 단어와 결정될 단어에 각각 대응하는 선행 단어가 처리될 텍스트에 나타나는 순서에 따라, 결정될 단어의 단어 시퀀스를 결정하는 단계;
결정될 단어 각각이 처리될 텍스트의 키워드일 확률을 얻기 위해, 결정될 단어의 단어 시퀀스를 훈련된 순환 신경망 모델에 각각 입력하는 단계; 및
결정될 단어 각각이 처리될 텍스트의 키워드일 확률 및 사전 설정된 임계값에 따라, 처리될 텍스트의 키워드를 결정하는 단계를 수행하게 한다.
본 출원의 하나 이상의 실시예의 세부 사항은 다음의 첨부 도면과 설명에 개시되어 있다. 본 출원의 다른 특징, 목적, 및 장점이 상세한 설명, 첨부 도면, 및 청구 범위를 참조하여 명백해질 것이다.
본 출원의 실시예의 기술적 해결책을 더 명확하게 설명하기 위해, 이하에서는 실시예를 설명하는 데 필요한 첨부 도면을 간략히 소개한다. 명백하게, 아래에서 설명되는 첨부 도면은 본 출원의 일부 실시예일 뿐이며, 당업자라면 창의적인 노력없이 이러한 첨부 도면에 따라 다른 첨부 도면을 얻을 수 있을 것이다.
도 1은 일 실시예에 따른 키워드 추출 방법의 적용 환경을 개략적으로 나타낸 도면이다.
도 2는 일 실시예에 따른 컴퓨터 장치의 내부 구조를 개략적으로 나타낸 도면이다.
도 3은 일 실시예에 따른 키워드 추출 방법을 나타낸 흐름도이다.
도 4는 다른 실시예에 따른 키워드 추출 방법을 나타낸 흐름도이다.
도 5는 일 실시예에 따른 LSTM 유닛의 구조도이다.
도 6은 일 실시예에 따른 키워드 추출 방법에 대응하는 모델을 개략적으로 나타낸 구조도이다.
도 7은 일 실시예에 따른 컴퓨터 장치의 구조 블록도이다.
도 8은 다른 실시예에 따른 컴퓨터 장치의 구조 블록도이다.
본 출원의 목적, 기술적 해결책, 및 이점이 더 명확해지고 이해 가능하도록, 첨부 도면과 실시예를 참조하여 본 출원에 대해 더 상세하게 설명할 것이다. 여기서 설명된 특정 실시 형태는 본 출원을 제한하려는 것이 아니라 본 출원을 해석하기 위해 사용될 뿐이라고 이해해야 한다.
도 1은 일 실시예에 따른 키워드 추출 방법의 적용 환경을 개략적으로 나타낸 도면이다. 도 1에 도시된 바와 같이, 적용 환경은 사용자 단말기(110)와 서버(120)를 포함하고, 사용자 단말기(110)는 서버(120)와 통신한다. 사용자 단말기(110)에는 검색 엔진 또는 질문 응답 시스템(question answering system)이 설치된다. 사용자가 사용자 단말기(110) 중 하나를 통해 텍스트를 입력하고, 입력된 텍스트가 통신 네트워크를 통해 서버(120)에 송신되며, 서버(120)는 입력된 텍스트를 처리하고, 입력된 텍스트에서 키워드를 추출하며, 검색 결과 또는 질문 응답 결과를 사용자에게 제공한다. 대안적으로, 사용자는 사용자 단말기(110) 중 하나를 통해 텍스트를 입력하고, 사용자 단말기(110)는 입력된 텍스트를 처리하고, 입력된 텍스트의 키워드를 추출하며, 통신 네트워크를 통해 키워드를 서버(120)에 송신하고, 서버(120)는 사용자에게 검색 결과 또는 질문 응답 결과를 제공한다.
도 2는 일 실시예에 따른 컴퓨터 장치의 내부 구조를 개략적으로 나타낸 도면이다. 상기 컴퓨터 장치는 사용자 단말기 또는 서버일 수 있다. 도 2에 도시된 바와 같이, 상기 컴퓨터 장치는 시스템 버스를 통해 연결된 프로세서, 메모리, 및 네트워크 인터페이스를 포함한다. 상기 프로세서는 계산 및 제어 능력을 제공하여 전체 컴퓨터 장치의 연산을 지원하도록 구성된다. 상기 메모리는 비휘발성 저장 매체와 내부 메모리를 포함한다. 비휘발성 저장 매체는 운영체제와 컴퓨터 판독가능 명령을 저장할 수 있으며, 내부 메모리는 비휘발성 저장 매체 내의 운영체제와 컴퓨터 판독가능 명령을 실행하기 위한 환경을 제공한다. 컴퓨터 판독가능 명령이 프로세서에 의해 실행되는 경우, 상기 프로세서는 키워드 추출 방법을 수행할 수 있다. 네트워크 인터페이스는 외부 단말기와 네트워크 통신을 수행하도록 구성된다.
당업자라면, 도 2에 도시된 구조가 본 출원의 해결책과 관련된 구조 중 일부를 나타낸 블록도이며, 본 출원의 해결책이 적용되는 컴퓨터 장치를 한정하지 않는다는 것을 이해할 수 있을 것이다. 구체적으로, 상기 컴퓨터 장치는 도 2의 구성 요소(member)보다 더 많거나 더 적은 수의 구성 요소를 포함할 수 있거나, 또는 일부 구성 요소의 조합을 포함하거나, 또는 다른 구성 요소 레이아웃을 포함한다.
도 3을 참조하면, 일 실시예에서, 키워드 추출 방법이 제공된다. 상기 키워드 추출 방법은 도 1에 도시된 서버(120)에서 실행된다. 상기 키워드 추출 방법은 다음의 단계를 포함한다.
S310: 처리될 텍스트의 결정될 단어를 획득한다.
처리될 텍스트는 일반적으로 개별 문자로 구성된다. 개별 문자와 비교할 때, 단어가 의미를 더 잘 표현할 수 있고 더 실질적인 의미를 가지고 있을 수 있다.
처리될 텍스트의 결정될 단어를 획득하기 위해, 처리될 텍스트는 사전 처리될 수 있다. 결정될 단어는 처리될 텍스트 내의 단어이고, 결정될 단어가 처리될 텍스트의 키워드인지 여부가 판정될 필요가 있다. 결정될 단어는, 단어 분할(word segmentation)이 수행된 후에 처리될 텍스트의 단어일 수 있다. 즉, 전처리(preprocessing)가 단어 분할을 포함할 수 있다. 처리 효율을 향상시키기 위해, 결정될 단어는 처리될 텍스트의 단어로부터 추출된 단어로서 실용적인 의미를 가지고 있는 단어일 수 있다. 즉, 전처리가 불용어(stop word)를 식별하고 불용어를 제외하는 처리를 더 포함할 수 있다.
일 실시 형태에서, 단계 310 이전에, 상기 키워드 추출 방법은 처리될 텍스트를 획득하는 단계를 더 포함한다. 사용자가 사용자 단말기를 통해 텍스트를 입력하고, 서버는 통신 네트워크를 통해 사용자에 의해 입력된 텍스트를 획득함으로써, 처리될 텍스트를 획득한다.
S320: 결정될 단어에 각각 대응하는 선행 단어를 결정한다. 여기서, 선행 단어는 처리될 텍스트 내의 결정될 단어의 선행 텍스트에 나타나는 단어이다.
선행 단어의 정의에 따르면, 선행 단어는 처리될 텍스트 내의 결정될 단어의 선행 텍스트에 나타나는 단어이다. 결정될 단어에 각각 대응하는 선행 단어는 처리될 텍스트에 따라 결정될 수 있다. 구체적으로, 결정될 단어 각각의 선행 텍스트에 나타나는 선행 단어는 처리될 텍스트에 나타나는 단어의 순서에 따라 결정될 수 있다. 여기서, 상기 단어는 처리될 텍스트에 대해 전처리(예를 들어, 단어 분할)가 수행된 후에 획득된다.
S330: 결정될 단어와 결정될 단어에 각각 대응하는 선행 단어가 처리될 텍스트에 나타나는 순서에 따라, 결정될 단어의 단어 시퀀스를 결정한다.
처리될 텍스트 내의 최초로 결정될 단어(first to-be-determined word)가 대응하는 선행 단어를 가지고 있지 않을 수 있고, 최초로 결정될 단어의 단어 시퀀스가 최초로 결정될 단어 자체로 구성될 수 있다는 것을 유의해야 한다.
최조로 결정될 단어 이외의 다른 결정될 단어는 선행 단어를 가지고 있을 필요가 있고, 결정될 단어의 대응하는 단어 시퀀스는 결정될 단어의 선행 단어와 결정될 단어 자체의 단어 시퀀스로서 단어(선행 단어와 결정될 단어)가 처리될 텍스트에 나타나는 순서로 결정되는 단어 시퀀스이다.
S350: 결정될 단어 각각이 처리될 텍스트의 키워드일 확률을 얻기 위해, 결정될 단어의 단어 시퀀스를 훈련된 순환 신경망 모델에 각각 입력한다.
본 실시예에서의 순환 신경망 모델은 RNN(Recurrent Neural Net) 모델, 또는 LSTM(Long Short-Term Memory) 모델, GRU(Long Short-Term Memory) 모델일 수 있다. 순환 신경망 모델은 입력층, 은닉층(hidden layer), 및 출력층을 포함한다. 은닉층 내의 은닉 유닛은 가장 중요한 연산, 즉 결정될 단어의 단어 입력 시퀀스에 따라, 결정될 단어 각각이 처리될 텍스트의 키워드일 확률을 얻는 연산을 완료한다. 훈련된 순환 신경망 모델에 입력된 단어 시퀀스는 결정될 단어와 결정될 단어의 선행 단어에 따라 결정된다. 따라서, 결정될 단어 각각이 처리될 텍스트의 키워드일 더 정확한 확률을 획득하기 위해 선행 텍스트의 정보를 충분히 고려할 수 있다.
S360: 결정될 단어 각각이 처리될 텍스트의 키워드일 확률 및 사전 설정된 임계값에 따라, 처리될 텍스트의 키워드를 결정한다.
처리될 텍스트 내의 결정될 단어 각각이 키워드일 확률이 사전 설정된 임계값 각각과 비교되고, 결정될 단어(결정될 단어 각각이 키워드일 확률이 사전 설정된 임계값보다 크거나 또는 사전 설정된 임계값보다 작지 않은 결정될 단어)가 처리될 텍스트의 키워드로서 결정된다.
임계값의 설정은 특정 요구과 연관되어 있다. 더 높은 임계값이 더 높은 정확도와 더 낮은 리콜 레이트(recall rate)를 나타낸다. 임계값이 낮게 설정되면, 정확도가 낮고 리콜 레이트가 높다. 사용자가 요구에 따라 임계값을 설정할 수 있다. 예를 들어, 임계값은 0.5로 설정될 수 있다.
전술한 키워드 추출 방법의 경우, 데이터 특성에 따라 효율적인 특징을 수동으로 추출하는 것이 필요하지 않지만, 대응하는 결정될 단어가 키워드일 확률을 얻기 위해, 단어 시퀀스가 훈련된 순환 신경망 모델에 입력된다. 또한, 훈련된 순환 신경망 모델에 입력된 단어 시퀀스는 결정될 단어와 결정될 단어의 선행 단어에 의해 결정된다. 따라서, 결정될 단어가 처리될 텍스트의 키워드일 더 정확한 확률을 얻기 위해, 선행하는 부분의 정보를 충분히 고려함으로써 추출되는 키워드의 정확도를 높일 수 있다.
일 실시예에서, 처리될 텍스트의 결정될 단어를 획득하는 단계, 즉 단계 S310은 다음의 단계를 포함한다.
단계 a: 처리될 텍스트 내의 단어를 획득하기 위해, 처리될 텍스트에 대해 단어 분할을 수행하고;
단계 b: 처리될 텍스트 내의 불용어를 식별하고, 처리될 텍스트 내의 불용어 이외의 단어를 결정될 단어로서 결정한다.
처리될 텍스트 내의 불용어를 결정하기 위해, 불용어 라이브러리 내의 불용어가 처리될 텍스트 내의 단어와 비교된다. 예를 들어, 공통 불용어가 "of", "-ed", 및 "what" 등을 포함하고, 키워드일 수 없다. 본 실시예에서, 처리될 텍스트 내의 불용어 이외의 단어가 결정될 단어로서 결정된다. 불용어 이외의 단어는 일반적으로 표기 단어(notional word)이다. 불용어보다는 표기 단어가 결정될 단어로서 사용됨으로써, 키워드 추출의 정확도가 불용어의 출력 결과에 의해 영향을 받지 않도록 방지할 뿐만 아니라 키워드를 추출하는 속도도 높여준다.
일 실시예에서, 선행 단어는 처리될 텍스트 내의 결정될 단어의 선행 텍스트에 나타나는, 불용어 이외의 단어를 포함한다. 처리될 텍스트 내의 결정될 단어의 선행 텍스트에 나타나는, 불용어 이외의 단어가 처리될 텍스트 내의 결정될 단어의 선행 텍스트에 나타나는 표기 단어라는 것을 이해할 수 있을 것이다.
다른 실시예에서, 선행 단어는 모든 처리될 텍스트 내의 결정될 단어의 선행 텍스트에 나타나는 단어를 포함한다. 즉, 선행 단어는 불용어와 처리될 텍스트 내의 결정될 단어의 선행 텍스트에 나타나는 표기 단어를 포함한다.
일 실시예에서, 단계 S330은 아래의 단계를 포함할 수 있다.
단계 a: 결정될 단어에 각각 대응하는 선행 단어의 단어 벡터와 결정될 단어의 단어 벡터를 획득하고;
단계 b: 결정될 단어에 각각 대응하는 선행 단어와 결정될 단어가 처리될 텍스트에 나타나는 순서에 따라, 결정될 단어에 각각 대응하는 선행 단어의 단어 벡터와 결정될 단어의 단어 벡터를 이용하여, 결정될 단어의 단어 시퀀스를 결정한다. 상기 단어 시퀀스는 단어 벡터 시퀀스이다.
단어 벡터는 단어에 대응하는 벡터 표현이고, 자연어(natural language)로 단어를 디지털화하는 방식이며, 언어 모델을 훈련시켜 얻어질 수 있다. 공통 언어 모델은 K차원 벡터 공간에서의 벡터 연산으로서, 훈련을 통해 텍스트 내용 처리를 단순화하기 위해 딥 러닝(deep learning)의 생각을 이용하는 Word2vec이다. 특정 실시 형태에서, Word2vec은 대규모 텍스트 데이터에 대해 훈련을 수행하여 각각의 단어의 단어 벡터를 획득하는 데 사용되고, 처리될 텍스트 내의 각각의 단어의 단어 벡터가 검색을 통해 획득됨으로써, 결정될 단어에 대응하는 선행 단어의 단어 벡터와 결정될 단어의 단어 벡터를 획득한다.
이렇게 하면, 단어 벡터가 각각의 단어를 나타내는 데 사용되므로 단어 수준의 의미 정보가 더 잘 획득됨으로써, 추출되는 키워드의 정확도를 더욱 향상시킬 수 있다.
훈련된 순환 신경망 모델에 입력된 단어 시퀀스가 단어 벡터 시퀀스인 경우, 훈련된 순환 신경망 모델의 은닉층에 의해 출력된 결과도 역시 벡터이고, 0 내지 1의 범위에서 벡터를 매핑하여 결정될 단어 각각의 확률을 나타내기 위해, Softmax 함수 또는 시그모이드 함수(Sigmoid function)가 사용될 수 있다는 것을 유의해야 한다. Softmax 함수는 일반적인 다중 클래스 회귀 모델(multi-class regression model)이다. 결정될 단어가 키워드인지 여부를 판정하는 단계는 2차원 문제를 야기한다. 대응하는 Softmax 함수는 2차원을 가지고 있으며, 하나의 차원은 결정될 단어가 키워드일 확률을 나타내고, 다른 차원은 결정될 단어가 키워드가 아닐 확률을 나타낸다.
또한, 선행 단어와 결정될 단어에 각각 대응하는 단어 벡터는 대규모로 언어 자료(corpus)를 학습하여 얻어진다. 언어 자료를 대규모로 학습하여 얻어진 단어 벡터는 단어의 의미 정보를 충분히 활용하여 의미 수준에서 키워드를 결정함으로써, 추출된 키워드의 정확성을 더욱 높일 수 있다.
도 4를 참조하면, 일 실시예에서, 추출된 키워드의 정확도를 더욱 높이기 위해, 결정될 단어의 단어 시퀀스를 훈련된 순환 신경망 모델에 각각 입력하는 단계 이전에, 키워드 추출 방법은 이하의 단계를 더 포함한다.
S340: 순환 신경망 모델을 훈련시켜 훈련된 순환 신경망 모델을 얻기 위해 훈련용 샘플을 획득한다. 여기서, 훈련용 샘플은 요소 쌍을 포함하고, 요소 쌍은 훈련용 텍스트에 대응하는 훈련용 단어 및 훈련용 단어가 훈련용 텍스트의 키워드일 확률을 포함한다.
요소 쌍 내의 훈련용 단어가 훈련용 텍스트의 키워드일 확률의 값이 0 또는 1이다. 확률 값이 0이면, 훈련용 단어가 훈련용 텍스트의 키워드가 아니라는 것을 나타내고, 확률 값이 1이면, 훈련용 단어가 훈련용 텍스트의 키워드라는 것을 나타낸다.
훈련 과정 중에, 가우시안 분포가 순환 신경망 모델의 네트워크 파라미터를 초기화하는 데 사용될 수 있고, 훈련용 텍스트의 i번째 결정될 단어와 i번째 결정될 단어의 선행 단어 각각에 대해, 처리될 텍스트에 나타나는 이러한 단어의 순서에 따라 단어 시퀀스가 형성되며, 단어 시퀀스 내의 단어 벡터 각각이 순환 신경망 모델에 순차적으로 입력되어 i번째 결정될 단어의 유실을 획득함으로써 결정될 단어 각각의 유실을 획득한다. 훈련 과정 중에, 그라디언트 디센트(gradient descent) 방법이 순환 신경망 모델의 파라미터를 업데이트하는 데 사용된다는 것을 유의해야 한다.
일 실시예에서, 상기 순환 신경망 모델은 LSTM 모델이다.
LSTM 모델은 RNN 모델에 기반하고 있다. 주기적 신경망 모드의 은닉 유닛은 LSTM 유닛이다. LSTM 유닛의 구조도가 도 5에 도시되어 있다. 메모리 유닛은 이력 정보를 저장하는 데 사용되고, 이력 정보의 갱신 및 사용은 3개의 게이트, 즉 입력 게이트, 포겟 게이트(forget gate), 및 출력 게이트에 의해 각각 제어된다. LSTM 모델은 가변 길이 시퀀스를 입력하는 것에 대한 결함을 극복하고, 이력 정보를 더 잘 저장할 수 있으며, 그래서 추가적으로, 추출되는 키워드의 정확도가 향상된다.
도 5와 도 6을 참조하면, 예를 들어 순환 신경망 모델이 LSTM 모델로서 사용되어 결정될 단어의 단어 시퀀스를 결정하고, 결정될 단어에 대응하는 단어 시퀀스 내의 선행 단어 각각의 단어 벡터(단어 삽입(Embedding)을 통해 획득된 단어 벡터)와 결정될 단어의 단어 벡터는 처리될 텍스트에 나타나는 단어의 순서에 따라, 훈련된 LSTM 모델에 입력된다. 따라서, 결정될 단어 각각이 처리될 텍스트의 키워드일 확률을 얻기 위해, 결정될 단어의 개수에 따라 LSTM 모델이 반복적으로 사용된다. 또한, 결정될 단어 각각이 LSTM 모델의 마지막 LSTM 유닛의 입력으로서 사용되고, 결정될 단어 각각이 출력 결과가 출력되기 전에, 결정될 단어 각각의 선행하는 부분의 이력 정보, 즉 결정될 단어 각각에 대응하는 선행 단어 각각의 의미 정보가 고려된다. LSTM 모델에 의해 출력되는, 결정될 단어 각각의 결과가 LSTM 모델의 마지막 은닉층(LSTM 유닛)의 출력이다.
이하, 특정 실시예를 참조하여 본 개시의 키워드 추출 방법에 대해 더 설명한다.
도 6을 참조하면, 키워드 추출 방법에 대응하는 모델이 LSTM 유닛과 Softmax 함수를 포함한다. 분류기가 상기 모델을 이용하여 구성될 수 있고, 처리될 텍스트의 결정될 단어 각각에 대해, 결정될 단어 각각이 키워드일 확률을 결정한다. 결정될 단어에 대해, 문장의 시작부터 모든 단어가 추출되어 단어 시퀀스를 형성한다. 상기 모델의 입력이 단어 벡터이고, 각각의 LSTM 유닛이 LSTM 유닛에 대한 단어 벡터 입력에 대응하는 단어 결과를 출력할 수 있고, 상기 단어 결과와 단어 시퀀스에 있는 다음의 단어 벡터가 다음 LSTM 유닛의 입력으로서 사용된다. 마지막 LSTM 유닛은 이전의 LSTM 유닛의 출력 결과와 결정될 단어의 단어 벡터를 마지막 LSTM 유닛의 입력으로 사용하고, 출력 결과가 벡터의 형태로 표현되는 결정될 단어에 대응하는 결과이다. 결정될 단어가 키워드일 확률이 Softmax 함수를 이용하여 상기 출력 결과에 기초하여 벡터의 형태로 결정된다. 결정될 단어가 키워드일 확률이 사전 설정된 임계값과 비교되어, 결정될 단어가 키워드인지 여부를 판정한다.
예를 들어, 처리될 텍스트가 "what special product does Ningbo have for presentation in Shanghai World Expo"이다. 단어 분할 이후, 결정되는 결정될 단어가 "Ningbo", "special product", "Shanghai", "World Expo", "for", 및 "presentation"을 포함한다. 결정될 단어 각각의 단어 벡터와 결정될 단어 각각의 선행하는 부분의 선행 단어 각각의 단어 벡터가 처리될 텍스트에 나타나는 단어의 순서로 훈련된 순환 신경망 모델에 입력됨으로써, 결정될 단어 각각이 처리될 텍스트의 키워드일 확률을 얻는다. 예를 들어, 결정될 단어가 "World Expo"인 경우, 도 6에 도시된 바와 같이, 대응하는 단어 벡터가 "Ningbo", "have", "special product", "Shanghai", 및 "World Expo"의 순서로 순환 신경망 모델에 입력된다. Ningbo"의 단어 벡터가 LSTM 모델의 제1 LSTM 유닛에 입력되고, "have"의 단어 벡터가 제2 LSTM 유닛에 입력되며, … , 결정될 단어 "World Expo"의 단어 벡터가 마지막 LSTM 유닛에 입력되고, 각각의 LSTM 유닛은 이전 LSTM 유닛의 출력에 의해 영향을 받는다. 결정될 단어 각각이 처리될 텍스트의 키워드일 확률을 얻기 위해, LSTM 모델의 출력이 Softmax 함수에 의해 매핑되는, 마지막 LSTM 유닛의 출력 벡터에 대응하는 확률 값이다. 입력된 단어 벡터 시퀀스는 선행 부분의 정보를 고려하기 위해, 결정될 단어에 대응하는 선행 단어의 각각의 벡터와 결정될 단어의 단어 벡터를 포함하며, LSTM 모델에는 이력 정보가 더 잘 저장될 수 있다. 따라서, 결정될 단어가 처리될 텍스트의 키워드일 더 정확한 확률이 얻어질 수 있다.
도 3과 도 4의 흐름도의 각각의 단계가 화살표에 따라 순차적으로 표시되어 있지만, 이러한 단계들이 반드시 화살표로 표시된 순서에 따라 수행되지는 않는다고 이해해야 한다. 명확하게 표시되지 않으면, 이러한 단계은 엄격한 순서로 수행될 필요가 없으며, 다른 순서로 수행될 수 있다. 또한, 도 3과 도 4의 적어도 일부 단계가 복수의 하위 단계 또는 복수의 스테이지를 포함할 수 있다. 이러한 하위 단계 또는 스테이지가 반드시 동시에 수행되지는 않으며, 다른 순간에 수행될 수 있다. 이러한 하위 단계 또는 스테이지가 반드시 순서대로 수행되는 것은 아니며, 다른 단계 또는 다른 단계의 하위 단계나 스테이지 중 적어도 일부와 번갈아 수행될 수 있다.
일 실시예에서, 컴퓨터 장치가 더 제공된다. 상기 컴퓨터 장치의 내부 구조가 도 2에 도시되어 있다. 컴퓨터 장치는 키워드 추출 장치를 포함하고, 키워드 추출 장치는 각각의 모듈을 포함하며, 각각의 모듈은 소프트웨어, 또는 하드웨어, 또는 이들의 조합에 의해 전부 구현되거나 또는 부분적으로 구현될 수 있다.
일 실시예에서, 키워드 추출 장치가 제공된다. 도 7에 도시된 바와 같이, 상기 키워드 추출 장치는, 결정될 단어 획득 모듈(710), 선행 단어 결정 모듈(720), 단어 시퀀스 결정 모듈(730), 확률 결정 모듈(750), 및 키워드 결정 모듈(760)을 포함한다.
결정될 단어 획득 모듈(710)은 처리될 텍스트의 결정될 단어를 획득하도록 구성된다.
선행 단어 결정 모듈(720)은 결정될 단어에 각각 대응하는 선행 단어를 결정하도록 구성된다. 선행 단어는 처리될 텍스트 내의 결정될 단어의 선행 텍스트에 나타나는 단어이다.
단어 시퀀스 결정 모듈(730)은, 결정될 단어와 결정될 단어에 각각 대응하는 선행 단어가 처리될 텍스트에 나타나는 순서에 따라 단어 시퀀스를 결정하도록 구성된다.
확률 결정 모듈(750)은, 결정될 단어 각각이 처리될 텍스트의 키워드일 확률을 얻기 위해, 결정될 단어의 단어 순서 각각를 훈련된 순환 신경망 모델에 입력하도록 구성된다.
키워드 결정 모듈(760)은 결정될 단어 각각이 처리될 텍스트의 키워드일 확률 및 사전 설정된 임계값에 따라, 처리될 텍스트의 키워드를 결정하도록 구성된다.
전술한 키워드 추출장치의 경우, 데이터 특성에 따라 효율적인 특징을 수동으로 추출할 필요는 없지만, 대응하는 결정될 단어가 키워드일 확률을 얻기 위해 단어 시퀀스를 훈련된 순환 신경망 모델에 입력한다. 또한, 훈련된 순환 신경망 모델에 입력된 단어 시퀀스는 결정될 단어와 결정될 단어의 선행 단어에 의해 결정된다. 따라서, 결정될 단어가 처리될 텍스트의 키워드일 확률을 더 정확하게 얻기 위해 선행 부분의 정보가 충분히 고려될 수 있으며, 따라서 추출된 키워드의 정확도를 향상시킬 수 있다.
도 8을 참조하면, 일 실시예에서, 결정될 단어 획득 모듈(710)은 단어 분할 유닛(711)과 식별 결정 유닛(identification determining unit)(713)을 포함한다.
단어 분할 유닛(711)은, 처리될 텍스트 내의 단어를 획득하기 위해, 처리될 텍스트에 대해 단어 분할을 수행하도록 구성된다.
식별 결정 유닛(713)은 처리될 텍스트 내의 불용어를 식별하고, 처리될 텍스트 내의 불용어 이외의 단어를 결정될 단어로서 결정하도록 구성된다.
일 실시예에서, 선행 단어는 처리될 텍스트 내의 결정될 단어의 선행 텍스트에 나타나는, 불용어 이외의 단어를 포함한다.
일 실시예에서, 단어 시퀀스 결정 모듈(730)은 단어 벡터 획득 유닛(731)과 단어 시퀀스 결정 유닛(733)을 포함한다.
단어 벡터 획득 유닛(731)은 결정될 단어에 각각 대응하는 선행 단어의 단어 벡터와 결정될 단어의 단어 벡터를 획득하도록 구성된다.
단어 시퀀스 결정 유닛(733)은 결정될 단어에 각각 대응하는 선행 단어와 결정될 단어가 처리될 텍스트에 나타나는 순서에 따라, 결정될 단어에 각각 대응하는 선행 단어의 단어 벡터와 결정될 단어의 단어 벡터를 이용하여, 결정될 단어의 단어 시퀀스를 결정하도록 구성된다. 상기 단어 시퀀스는 단어 벡터 시퀀스이다.
도 8을 참조하면, 일 실시예에서, 상기 키워드 추출 장치는,
순환 신경망 모델을 훈련시켜 훈련된 순환 신경망 모델을 얻기 위해 훈련용 샘플을 획득하도록 구성된 모델 훈련 모듈(740)을 더 포함하고, 훈련용 샘플은 요소 쌍을 포함하고, 요소 쌍은 훈련용 텍스트에 대응하는 훈련용 단어 및 훈련용 단어가 훈련용 텍스트의 키워드일 확률을 포함한다.
일 실시예에서, 상기 순환 신경망 모델은 LSTM 모델이다.
키워드 추출 장치는 키워드 추출 방법에 대응하며, 여기서는 키워드 추출 방법에 대응하는 키워드 추출 장치의 구체적인 기술적 특징에 대해 반복하지 않는다.
일 실시예에서, 컴퓨터 장치가 더 제공된다. 상기 컴퓨터 장치는 메모리와 프로세서를 포함한다. 상기 메모리는 컴퓨터 판독가능 명령을 저장한다. 상기 컴퓨터 판독가능 명령은, 프로세서에 의해 실행되는 경우 프로세서로 하여금:
처리될 텍스트의 결정될 단어를 획득하는 단계;
결정될 단어에 각각 대응하는 선행 단어를 결정하는 단계 - 선행 단어는 처리될 텍스트 내의 결정될 단어의 선행 텍스트에 나타나는 단어임 -
결정될 단어와 결정될 단어에 각각 대응하는 선행 단어가 처리될 텍스트에 나타나는 순서에 따라, 결정될 단어의 단어 시퀀스를 결정하는 단계;
결정될 단어 각각이 처리될 텍스트의 키워드일 확률을 얻기 위해, 결정될 단어의 단어 시퀀스를 훈련된 순환 신경망 모델에 각각 입력하는 단계; 및
결정될 단어 각각이 처리될 텍스트의 키워드일 확률 및 사전 설정된 임계값에 따라, 처리될 텍스트의 키워드를 결정하는 단계를 수행하게 한다.
일 실시예에서, 상기 처리될 텍스트의 결정될 단어를 획득하는 단계는,
처리될 텍스트 내의 단어를 획득하기 위해, 처리될 텍스트에 대해 단어 분할을 수행하는 단계; 및
처리될 텍스트 내의 불용어를 식별하고, 처리될 텍스트 내의 불용어 이외의 단어를 결정될 단어로서 결정하는 단계를 포함한다.
일 실시예에서, 상기 결정될 단어와 결정될 단어에 각각 대응하는 선행 단어가 처리될 텍스트에 나타나는 순서에 따라, 결정될 단어의 단어 시퀀스를 결정하는 단계는,
결정될 단어에 각각 대응하는 선행 단어의 단어 벡터와 결정될 단어의 단어 벡터를 획득하는 단계; 및
결정될 단어에 각각 대응하는 선행 단어와 결정될 단어가 처리될 텍스트에 나타나는 순서에 따라, 결정될 단어에 각각 대응하는 선행 단어의 단어 벡터와 결정될 단어의 단어 벡터를 이용하여, 결정될 단어의 단어 시퀀스를 결정하는 단계를 포함한다. 상기 단어 시퀀스는 단어 벡터 시퀀스이다.
일 실시예에서, 상기 결정될 단어의 단어 시퀀스를 훈련된 순환 신경망 모델에 각각 입력하는 단계 이전에, 상기 키워드 추출 방법은,
순환 신경망 모델을 훈련시켜 훈련된 순환 신경망 모델을 얻기 위해, 훈련용 샘플을 획득하는 단계를 더 포함한다. 상기 훈련용 샘플은 요소 쌍을 포함하고, 요소 쌍은 훈련용 텍스트에 대응하는 훈련용 단어 및 훈련용 단어가 훈련용 텍스트의 키워드일 확률을 포함한다.
일 실시예에서, 상기 순환 신경망 모델은 LSTM 모델이다.
당업자는 전술한 실시예의 절차의 전부나 일부가 컴퓨터 적절한 하드웨어에게 지시하는 프로그램에 의해 구현될 수 있는 것을 이해할 수 있을 것이다. 상기 프로그램은 컴퓨터 판독가능 비휘발성 저장 매체에 저장될 수 있다. 상기 프로그램이 실행되는 경우, 상기 프로그램은 각각의 전술한 방법의 실시예의 절차를 포함할 수 있다. 각각의 본 출원의 실시예에서의 메모리, 또는 스토리지, 또는 데이터베이스, 또는 다른 매체의 어떠한 이용도 비휘발성 및/또는 휘발성 메모리를 포함할 수 있다. 비휘발성 메모리는 읽기 전용 메모리(read-only memory, ROM), 또는 피롬(programmable ROM, PROM), 또는 이피롬(electrically programmable ROM, EPROM), 이이피폼(electrically erasable programmable ROM, EEPROM), 또는 플래시 메모리를 포함할 수 있다. 휘발성 메모리는 램(random access memory, RAM) 또는 외부 캐시 메모리를 포함할 수 있다. 제한하기보다는 설명하기 위해, RAM은 다양한 형태, 예를 들어 정적 RAM(static RAM, SRAM), 동적 RAM(dynamic RAM, DRAM), 동기식 동적 램(synchronous DRAM, SDRAM), 더블 데이터 레이트 SDRAM(double data rate SDRAM, DDRSDRAM), 향상된 SDRAM(enhanced SDRAM, ESDRAM), SLDRAM(Synchlink DRAM), RDRAM(Rambus direct RAM), DRDRAM(directly memory bus dynamic RAM), 및 RDRAM(memory bus dynamic RAM)일 수 있다.
전술한 실시예에서의 각각의 기술적인 특징이 무작위로 조합될 수 있다. 설명의 단순화를 위해, 전술한 실시예에서의 각각의 기술적 특징의 가능한 조합 전부를 설명하려는 것은 아니다. 하지만, 이러한 기술적 특징의 조합은 이러한 조합이 모순되지 않는 한 명세서의 범위에 속하는 것으로 간주해야 한다. 전술한 실시예는 본 출원의 몇 가지 실시 형태를 설명할 뿐이며, 그 설명이 구체적이고 상세하지만, 본 개시의 특허 범위에 대한 제한으로 해석될 수 없다. 당업자라면 본 출원의 개념에서 벗어나지 않고 변경과 개량을 할 수 있으며, 이러한 변경과 개량이 모두 본 출원의 보호 범위에 속한다는 것을 유의해야 한다. 그러므로, 본 출원의 특허 보호 범위는 첨부된 청구 범위를 따른다.

Claims (15)

  1. 사용자 단말기 또는 서버에 적용되는 키워드 추출 방법으로서,
    처리될 텍스트의 결정될 단어를 획득하는 단계;
    결정될 단어에 각각 대응하는 선행 단어를 결정하는 단계 - 선행 단어는 처리될 텍스트 내의 결정될 단어의 선행 텍스트에 나타나는 단어임 -
    결정될 단어 및 결정될 단어에 각각 대응하는 선행 단어가 처리될 텍스트에 나타나는 순서에 따라, 결정될 단어의 단어 시퀀스(sequence)를 결정하는 단계 - 처리될 텍스트 내의 최초로 결정될 단어의 단어 시퀸스는 최초로 결정될 단어 자체로 구성되고, 최초로 결정될 단어 이외의 다른 결정될 단어의 단어 시퀸스는 상기 결정될 단어의 선행 단어와 결정될 단어가 처리될 텍스트에 나타나는 순서로 결정되는 단어 시퀸스임 - ;
    결정될 단어 각각이 처리될 텍스트의 키워드일 확률을 얻기 위해, 결정될 단어의 단어 시퀀스를 훈련된 순환 신경망 모델(cyclic neural network model)에 각각 입력하는 단계; 및
    결정될 단어 각각이 처리될 텍스트의 키워드일 확률 및 사전 설정된 임계값에 따라, 처리될 텍스트의 키워드를 결정하는 단계
    를 포함하는 키워드 추출 방법.
  2. 제1항에 있어서,
    상기 처리될 텍스트의 결정될 단어를 획득하는 단계는,
    처리될 텍스트 내의 단어를 획득하기 위해, 처리될 텍스트에 대해 단어 분할(word segmentation)을 수행하는 단계; 및
    처리될 텍스트 내의 불용어(stop word)를 식별하고, 처리될 텍스트 내의 불용어 이외의 단어를 결정될 단어로서 결정하는 단계
    를 포함하는, 키워드 추출 방법.
  3. 제1항에 있어서,
    상기 결정될 단어 및 결정될 단어에 각각 대응하는 선행 단어가 처리될 텍스트에 나타나는 순서에 따라, 결정될 단어의 단어 시퀀스를 결정하는 단계는,
    결정될 단어에 각각 대응하는 선행 단어의 단어 벡터(word vector)와 결정될 단어의 단어 벡터를 획득하는 단계; 및
    결정될 단어에 각각 대응하는 선행 단어와 결정될 단어가 처리될 텍스트에 나타나는 순서에 따라, 결정될 단어에 각각 대응하는 선행 단어의 단어 벡터와 결정될 단어의 단어 벡터를 이용하여, 결정될 단어의 단어 시퀀스를 결정하는 단계 - 결정될 단어의 단어 시퀀스는 단어 벡터 시퀀스임 -
    를 포함하는, 키워드 추출 방법.
  4. 제1항에 있어서,
    상기 결정될 단어의 단어 시퀀스를 훈련된 순환 신경망 모델에 각각 입력하는 단계 이전에,
    상기 순환 신경망 모델을 훈련시켜 훈련된 순환 신경망 모델을 얻기 위해 훈련용 샘플을 획득하는 단계 - 훈련용 샘플은 요소 쌍을 포함하고, 요소 쌍은 훈련용 텍스트에 대응하는 훈련용 단어 및 훈련용 단어가 훈련용 텍스트의 키워드일 확률을 포함하고 있음 -
    를 포함하는, 키워드 추출 방법.
  5. 제1항에 있어서,
    상기 순환 신경망 모델은 LSTM 모델인, 키워드 추출 방법.
  6. 컴퓨터 장치로서,
    상기 컴퓨터 장치는 메모리와 프로세서를 포함하고, 상기 메모리는 컴퓨터 판독가능 명령을 저장하며, 상기 컴퓨터 판독가능 명령은, 상기 프로세서에 의해 실행되는 경우 상기 프로세서로 하여금:
    처리될 텍스트의 결정될 단어를 획득하는 단계;
    결정될 단어에 각각 대응하는 선행 단어를 결정하는 단계 - 선행 단어는 처리될 텍스트 내의 결정될 단어의 선행 텍스트에 나타나는 단어임 -
    결정될 단어 및 결정될 단어에 각각 대응하는 선행 단어가 처리될 텍스트에 나타나는 순서에 따라, 결정될 단어의 단어 시퀀스를 결정하는 단계 - 처리될 텍스트 내의 최초로 결정될 단어의 단어 시퀸스는 최초로 결정될 단어 자체로 구성되고, 최초로 결정될 단어 이외의 다른 결정될 단어의 단어 시퀸스는 상기 결정될 단어의 선행 단어와 결정될 단어가 처리될 텍스트에 나타나는 순서로 결정되는 단어 시퀸스임 - ;
    결정될 단어 각각이 처리될 텍스트의 키워드일 확률을 얻기 위해, 결정될 단어의 단어 시퀀스를 훈련된 순환 신경망 모델(cyclic neural network model)에 각각 입력하는 단계; 및
    결정될 단어 각각이 처리될 텍스트의 키워드일 확률 및 사전 설정된 임계값에 따라, 처리될 텍스트의 키워드를 결정하는 단계
    를 수행하게 하는, 컴퓨터 장치.
  7. 제6항에 있어서,
    상기 처리될 텍스트의 결정될 단어를 획득하는 단계는,
    처리될 텍스트 내의 단어를 획득하기 위해, 처리될 텍스트에 대해 단어 분할(word segmentation)을 수행하는 단계; 및
    처리될 텍스트 내의 불용어(stop word)를 식별하고, 처리될 텍스트 내의 불용어 이외의 단어를 결정될 단어로서 결정하는 단계
    를 포함하는, 컴퓨터 장치.
  8. 제6항에 있어서,
    상기 결정될 단어 및 결정될 단어에 각각 대응하는 선행 단어가 처리될 텍스트에 나타나는 순서에 따라, 결정될 단어의 단어 시퀀스를 결정하는 단계는,
    결정될 단어에 각각 대응하는 선행 단어의 단어 벡터와 결정될 단어의 단어 벡터를 획득하는 단계; 및
    결정될 단어에 각각 대응하는 선행 단어와 결정될 단어가 처리될 텍스트에 나타나는 순서에 따라, 결정될 단어에 각각 대응하는 선행 단어의 단어 벡터와 결정될 단어의 단어 벡터를 이용하여, 결정될 단어의 단어 시퀀스를 결정하는 단계 - 결정될 단어의 단어 시퀀스는 단어 벡터 시퀀스임 -
    를 포함하는, 컴퓨터 장치.
  9. 제6항에 있어서,
    상기 결정될 단어의 단어 시퀀스를 훈련된 순환 신경망 모델에 각각 입력하는 단계 이전에, 상기 컴퓨터 판독가능 명령은 상기 프로세서로 하여금,
    상기 순환 신경망 모델을 훈련시켜 훈련된 순환 신경망 모델을 얻기 위해 훈련용 샘플을 획득하는 단계 - 훈련용 샘플은 요소 쌍을 포함하고, 요소 쌍은 훈련용 텍스트에 대응하는 훈련용 단어 및 훈련용 단어가 훈련용 텍스트의 키워드일 확률을 포함하고 있음 -
    를 더 수행하게 하는, 컴퓨터 장치.
  10. 제6항에 있어서,
    상기 순환 신경망 모델은 LSTM 모델인, 컴퓨터 장치.
  11. 하나 이상의 비휘발성 저장 매체로서,
    상기 하나 이상의 비휘발성 저장 매체는 컴퓨터 판독가능 명령을 저장하고, 상기 컴퓨터 판독가능 명령은, 하나 이상의 프로세서에 의해 실행되는 경우 하나 이상의 프로세서로 하여금:
    처리될 텍스트의 결정될 단어를 획득하는 단계;
    결정될 단어에 각각 대응하는 선행 단어를 결정하는 단계 - 선행 단어는 처리될 텍스트 내의 결정될 단어의 선행 텍스트에 나타나는 단어임 -
    결정될 단어 및 결정될 단어에 각각 대응하는 선행 단어가 처리될 텍스트에 나타나는 순서에 따라, 결정될 단어의 단어 시퀀스를 결정하는 단계 - 처리될 텍스트 내의 최초로 결정될 단어의 단어 시퀸스는 최초로 결정될 단어 자체로 구성되고, 최초로 결정될 단어 이외의 다른 결정될 단어의 단어 시퀸스는 상기 결정될 단어의 선행 단어와 결정될 단어가 처리될 텍스트에 나타나는 순서로 결정되는 단어 시퀸스임 - ;
    결정될 단어 각각이 처리될 텍스트의 키워드일 확률을 얻기 위해, 결정될 단어의 단어 시퀀스를 훈련된 순환 신경망 모델(cyclic neural network model)에 각각 입력하는 단계; 및
    결정될 단어 각각이 처리될 텍스트의 키워드일 확률 및 사전 설정된 임계값에 따라, 처리될 텍스트의 키워드를 결정하는 단계
    를 수행하게 하는, 하나 이상의 비휘발성 저장 매체.
  12. 제11항에 있어서,
    상기 처리될 텍스트의 결정될 단어를 획득하는 단계는,
    처리될 텍스트 내의 단어를 획득하기 위해, 처리될 텍스트에 대해 단어 분할(word segmentation)을 수행하는 단계; 및
    처리될 텍스트 내의 불용어(stop word)를 식별하고, 처리될 텍스트 내의 불용어 이외의 단어를 결정될 단어로서 결정하는 단계
    를 포함하는, 하나 이상의 비휘발성 저장 매체.
  13. 제11항에 있어서,
    상기 결정될 단어 및 결정될 단어에 각각 대응하는 선행 단어가 처리될 텍스트에 나타나는 순서에 따라, 결정될 단어의 단어 시퀀스를 결정하는 단계는,
    결정될 단어에 각각 대응하는 선행 단어의 단어 벡터와 결정될 단어의 단어 벡터를 획득하는 단계; 및
    결정될 단어에 각각 대응하는 선행 단어와 결정될 단어가 처리될 텍스트에 나타나는 순서에 따라, 결정될 단어에 각각 대응하는 선행 단어의 단어 벡터와 결정될 단어의 단어 벡터를 이용하여, 결정될 단어의 단어 시퀀스를 결정하는 단계 - 결정될 단어의 단어 시퀀스는 단어 벡터 시퀀스임 -
    를 포함하는, 하나 이상의 비휘발성 저장 매체.
  14. 제11항에 있어서,
    상기 결정될 단어의 단어 시퀀스를 훈련된 순환 신경망 모델에 각각 입력하는 단계 이전에, 상기 컴퓨터 판독가능 명령은 하나 이상의 프로세서로 하여금:
    상기 순환 신경망 모델을 훈련시켜 훈련된 순환 신경망 모델을 얻기 위해 훈련용 샘플을 획득하는 단계 - 훈련용 샘플은 요소 쌍을 포함하고, 요소 쌍은 훈련용 텍스트에 대응하는 훈련용 단어 및 훈련용 단어가 훈련용 텍스트의 키워드일 확률을 포함하고 있음 -
    를 더 수행하게 하는, 하나 이상의 비휘발성 저장 매체.
  15. 제11항에 있어서,
    상기 순환 신경망 모델은 LSTM 모델인, 하나 이상의 비휘발성 저장 매체.
KR1020197017920A 2017-02-23 2018-02-08 키워드 추출 방법, 컴퓨터 장치, 및 저장 매체 KR102304673B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CN201710101013.1 2017-02-23
CN201710101013.1A CN108304365A (zh) 2017-02-23 2017-02-23 关键词提取方法及装置
PCT/CN2018/075711 WO2018153265A1 (zh) 2017-02-23 2018-02-08 关键词提取方法、计算机设备和存储介质

Publications (2)

Publication Number Publication Date
KR20190085098A KR20190085098A (ko) 2019-07-17
KR102304673B1 true KR102304673B1 (ko) 2021-09-23

Family

ID=62872540

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020197017920A KR102304673B1 (ko) 2017-02-23 2018-02-08 키워드 추출 방법, 컴퓨터 장치, 및 저장 매체

Country Status (6)

Country Link
US (1) US10963637B2 (ko)
EP (1) EP3518122A4 (ko)
JP (1) JP6956177B2 (ko)
KR (1) KR102304673B1 (ko)
CN (1) CN108304365A (ko)
WO (1) WO2018153265A1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20220044074A (ko) * 2020-09-30 2022-04-06 베이징 바이두 넷컴 사이언스 앤 테크놀로지 코., 엘티디. 여론 획득과 단어 점도 모델의 훈련 방법 및 기기, 서버와 매체

Families Citing this family (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20220215293A1 (en) * 2018-08-01 2022-07-07 Intuit Inc. Method to identify incorrect account numbers
CN111027313A (zh) * 2018-10-08 2020-04-17 中国科学院沈阳计算技术研究所有限公司 基于注意力机制的BiGRU判决结果倾向性分析方法
CN109635288B (zh) * 2018-11-29 2023-05-23 东莞理工学院 一种基于深度神经网络的简历抽取方法
CN109615241A (zh) * 2018-12-13 2019-04-12 大连海事大学 一种基于卷积和循环神经网络的软件Bug分派方法
CN109740152B (zh) * 2018-12-25 2023-02-17 腾讯科技(深圳)有限公司 文本类目的确定方法、装置、存储介质和计算机设备
CN109902273B (zh) * 2019-01-30 2024-05-07 平安科技(深圳)有限公司 关键词生成模型的建模方法和装置
CN111859940B (zh) * 2019-04-23 2024-05-14 北京嘀嘀无限科技发展有限公司 一种关键词提取方法、装置、电子设备及存储介质
CN110110330B (zh) * 2019-04-30 2023-08-11 腾讯科技(深圳)有限公司 基于文本的关键词提取方法和计算机设备
US11537664B2 (en) * 2019-05-23 2022-12-27 Google Llc Learning to select vocabularies for categorical features
US11316810B2 (en) * 2019-06-07 2022-04-26 International Business Machines Corporation Messaging system for automatically generating semantic contextual messages
CN110598095B (zh) * 2019-08-27 2024-02-13 深圳市雅阅科技有限公司 一种识别包含指定信息文章的方法、装置及存储介质
CN111144127B (zh) * 2019-12-25 2023-07-25 科大讯飞股份有限公司 文本语义识别方法及其模型的获取方法及相关装置
CN113076756A (zh) * 2020-01-06 2021-07-06 北京沃东天骏信息技术有限公司 一种文本生成方法和装置
CN111738791B (zh) * 2020-01-20 2024-05-24 北京沃东天骏信息技术有限公司 一种文本处理方法、装置、设备和存储介质
CN113221553A (zh) * 2020-01-21 2021-08-06 腾讯科技(深圳)有限公司 一种文本处理方法、装置、设备以及可读存储介质
CN111460096B (zh) * 2020-03-26 2023-12-22 北京金山安全软件有限公司 一种碎片文本的处理方法、装置及电子设备
CN111709230B (zh) * 2020-04-30 2023-04-07 昆明理工大学 基于词性软模板注意力机制的短文本自动摘要方法
KR102216066B1 (ko) * 2020-05-04 2021-02-18 호서대학교 산학협력단 문장형 쿼리에 대해 검색결과를 제공하는 방법
KR102418260B1 (ko) * 2020-05-27 2022-07-06 삼성생명보험주식회사 고객 상담 기록 분석 방법
CN111737996B (zh) * 2020-05-29 2024-03-26 北京百度网讯科技有限公司 基于语言模型获取词向量的方法、装置、设备及存储介质
CN111831821B (zh) * 2020-06-03 2024-01-09 北京百度网讯科技有限公司 文本分类模型的训练样本生成方法、装置和电子设备
CN111967268B (zh) * 2020-06-30 2024-03-19 北京百度网讯科技有限公司 文本中的事件抽取方法、装置、电子设备和存储介质
CN112015884A (zh) * 2020-08-28 2020-12-01 欧冶云商股份有限公司 一种用户走访数据关键词提取方法、装置及存储介质
CN112131877B (zh) * 2020-09-21 2024-04-09 民生科技有限责任公司 一种海量数据下的实时中文文本分词方法
CN112884440B (zh) * 2021-03-02 2024-05-24 岭东核电有限公司 核电试验中的试验工序执行方法、装置和计算机设备
KR102620697B1 (ko) * 2021-07-12 2024-01-02 주식회사 카카오뱅크 딥러닝 기반의 자연어 처리를 통한 메시지 내 이체 정보 판단 방법 및 장치
CN113761161A (zh) * 2021-08-10 2021-12-07 紫金诚征信有限公司 文本关键词提取方法、装置、计算机设备和存储介质
CN113808758B (zh) * 2021-08-31 2024-06-07 联仁健康医疗大数据科技股份有限公司 一种检验数据标准化的方法、装置、电子设备和存储介质
CN113609843B (zh) * 2021-10-12 2022-02-01 京华信息科技股份有限公司 一种基于梯度提升决策树的句词概率计算方法及系统

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016134169A (ja) * 2015-01-19 2016-07-25 三星電子株式会社Samsung Electronics Co.,Ltd. 言語モデル学習方法及び装置、言語認識方法及び装置
CN106095749A (zh) * 2016-06-03 2016-11-09 杭州量知数据科技有限公司 一种基于深度学习的文本关键词提取方法

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4360122B2 (ja) * 2003-05-26 2009-11-11 富士ゼロックス株式会社 キーワード抽出装置
US7493322B2 (en) * 2003-10-15 2009-02-17 Xerox Corporation System and method for computing a measure of similarity between documents
US7519588B2 (en) * 2005-06-20 2009-04-14 Efficient Frontier Keyword characterization and application
CN101122909B (zh) * 2006-08-10 2010-06-16 株式会社日立制作所 文本信息检索装置以及文本信息检索方法
US8346534B2 (en) * 2008-11-06 2013-01-01 University of North Texas System Method, system and apparatus for automatic keyword extraction
US9177333B2 (en) * 2010-06-17 2015-11-03 Microsoft Technology Licensing, Llc Ad copy quality detection and scoring
CN101944099B (zh) * 2010-06-24 2012-05-30 西北工业大学 一种使用本体进行文本文档自动分类的方法
US9715660B2 (en) * 2013-11-04 2017-07-25 Google Inc. Transfer learning for deep neural network based hotword detection
JP6230190B2 (ja) * 2014-01-09 2017-11-15 日本放送協会 重要語抽出装置、及びプログラム
KR101656741B1 (ko) * 2015-04-23 2016-09-12 고려대학교 산학협력단 프레임 기반 의견스팸 판단장치, 프레임 기반 의견스팸 판단방법, 프레임 기반으로 의견스팸을 판단하기 위한 컴퓨터 프로그램 및 컴퓨터 판독가능 기록매체
US9916376B2 (en) * 2015-08-11 2018-03-13 Fujitsu Limited Digital document keyword generation
CN105139237A (zh) * 2015-09-25 2015-12-09 百度在线网络技术(北京)有限公司 信息推送的方法和装置
CN105260359B (zh) * 2015-10-16 2018-10-02 晶赞广告(上海)有限公司 语义关键词提取方法及装置
CN105955952A (zh) * 2016-05-03 2016-09-21 成都数联铭品科技有限公司 一种基于双向递归神经网络的信息提取方法
US10056083B2 (en) * 2016-10-18 2018-08-21 Yen4Ken, Inc. Method and system for processing multimedia content to dynamically generate text transcript
US10255269B2 (en) * 2016-12-30 2019-04-09 Microsoft Technology Licensing, Llc Graph long short term memory for syntactic relationship discovery
CN111078838B (zh) * 2019-12-13 2023-08-18 北京小米智能科技有限公司 关键词提取方法、关键词提取装置及电子设备

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016134169A (ja) * 2015-01-19 2016-07-25 三星電子株式会社Samsung Electronics Co.,Ltd. 言語モデル学習方法及び装置、言語認識方法及び装置
CN106095749A (zh) * 2016-06-03 2016-11-09 杭州量知数据科技有限公司 一种基于深度学习的文本关键词提取方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20220044074A (ko) * 2020-09-30 2022-04-06 베이징 바이두 넷컴 사이언스 앤 테크놀로지 코., 엘티디. 여론 획득과 단어 점도 모델의 훈련 방법 및 기기, 서버와 매체
KR102527589B1 (ko) 2020-09-30 2023-04-28 베이징 바이두 넷컴 사이언스 앤 테크놀로지 코., 엘티디. 여론 획득과 단어 점도 모델의 훈련 방법 및 기기, 서버와 매체

Also Published As

Publication number Publication date
JP2019531562A (ja) 2019-10-31
WO2018153265A1 (zh) 2018-08-30
US20190220514A1 (en) 2019-07-18
CN108304365A (zh) 2018-07-20
EP3518122A1 (en) 2019-07-31
JP6956177B2 (ja) 2021-11-02
EP3518122A4 (en) 2019-11-20
KR20190085098A (ko) 2019-07-17
US10963637B2 (en) 2021-03-30

Similar Documents

Publication Publication Date Title
KR102304673B1 (ko) 키워드 추출 방법, 컴퓨터 장치, 및 저장 매체
US11562145B2 (en) Text classification method, computer device, and storage medium
US11941366B2 (en) Context-based multi-turn dialogue method and storage medium
CN110021439B (zh) 基于机器学习的医疗数据分类方法、装置和计算机设备
CN108509596B (zh) 文本分类方法、装置、计算机设备和存储介质
KR102194200B1 (ko) 인공신경망 모델을 이용한 뉴스 기사 분석에 의한 주가지수 예측 방법 및 장치
CN108491406B (zh) 信息分类方法、装置、计算机设备和存储介质
CN113849648B (zh) 分类模型训练方法、装置、计算机设备和存储介质
CN110968725B (zh) 图像内容描述信息生成方法、电子设备及存储介质
CN112052684A (zh) 电力计量的命名实体识别方法、装置、设备和存储介质
US20220318230A1 (en) Text to question-answer model system
CN112100377B (zh) 文本分类方法、装置、计算机设备和存储介质
CN112417859A (zh) 意图识别方法、系统、计算机设备及计算机可读存储介质
CN113486175B (zh) 文本分类方法、文本分类装置、计算机设备及存储介质
CN112580329B (zh) 文本噪声数据识别方法、装置、计算机设备和存储介质
CN108108354A (zh) 一种基于深度学习的微博用户性别预测方法
CN109885830A (zh) 语句释义方法、装置、计算机设备
CN111680132A (zh) 一种用于互联网文本信息的噪声过滤和自动分类方法
CN113836303A (zh) 一种文本类别识别方法、装置、计算机设备及介质
CN112307048A (zh) 语义匹配模型训练方法、匹配方法、装置、设备及存储介质
US20230063686A1 (en) Fine-grained stochastic neural architecture search
CN117932058A (zh) 基于文本分析的情绪识别方法、装置及设备
CN114519353A (zh) 模型的训练方法、情感消息生成方法和装置、设备、介质
KR20220096055A (ko) 단어 임베딩을 수행하는 전자장치 및 이의 동작방법
Souri et al. Neural network dealing with Arabic language

Legal Events

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