KR102053419B1 - Method, apparauts and system for named entity linking and computer program thereof - Google Patents

Method, apparauts and system for named entity linking and computer program thereof Download PDF

Info

Publication number
KR102053419B1
KR102053419B1 KR1020170146715A KR20170146715A KR102053419B1 KR 102053419 B1 KR102053419 B1 KR 102053419B1 KR 1020170146715 A KR1020170146715 A KR 1020170146715A KR 20170146715 A KR20170146715 A KR 20170146715A KR 102053419 B1 KR102053419 B1 KR 102053419B1
Authority
KR
South Korea
Prior art keywords
entity name
neural network
word
text
deep neural
Prior art date
Application number
KR1020170146715A
Other languages
Korean (ko)
Other versions
KR20180113444A (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 네이버 주식회사
Publication of KR20180113444A publication Critical patent/KR20180113444A/en
Priority to KR1020190158194A priority Critical patent/KR102315181B1/en
Application granted granted Critical
Publication of KR102053419B1 publication Critical patent/KR102053419B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/279Recognition of textual entities
    • G06F40/289Phrasal analysis, e.g. finite state techniques or chunking
    • G06F40/295Named entity recognition
    • G06F17/278
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures
    • G06F16/2228Indexing structures
    • G06F16/2237Vectors, bitmaps or matrices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/3331Query processing
    • G06F16/334Query execution
    • G06F16/3347Query execution using vector based model
    • G06F17/2795
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/237Lexical tools
    • G06F40/247Thesauruses; Synonyms
    • 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/0464Convolutional networks [CNN, ConvNet]
    • 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 Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • General Health & Medical Sciences (AREA)
  • Software Systems (AREA)
  • Databases & Information Systems (AREA)
  • Biomedical Technology (AREA)
  • Computing Systems (AREA)
  • Molecular Biology (AREA)
  • Mathematical Physics (AREA)
  • Evolutionary Computation (AREA)
  • Biophysics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Machine Translation (AREA)

Abstract

본 발명은 개체명 연결 방법, 장치, 시스템 및 컴퓨터 프로그램에 관한 것으로서, 보다 구체적으로는 텍스트에 포함되는 다의어에 대하여 개체명 연결을 수행하는 방법에 있어서, 개체명 연결 장치가, 상기 텍스트에서 상기 다의어를 포함하는 복수의 단어를 각 대응하는 복수의 벡터로 변환하는 단어-벡터 변환 단계; 상기 복수의 벡터를 은닉층을 구비하는 심층신경망에 입력하는 신경망 입력 단계; 및 상기 심층신경망의 출력값을 이용하여 상기 다의어에 대한 개체명 연결을 수행하는 개체명 연결 단계;를 포함하는 것을 특징으로 하는 개체명 연결 방법을 개시한다.The present invention relates to a method for associating an entity name, a device, a system, and a computer program, and more particularly, to a method for performing entity name association for a multilingual word included in a text, wherein the entity name association device is used in the text. A word-vector conversion step of converting a plurality of words including each into a plurality of corresponding vectors; A neural network input step of inputting the plurality of vectors into a deep neural network having a hidden layer; And an entity name concatenation step of performing an entity name concatenation to the multilingual word using an output value of the deep neural network.

Description

개체명 연결 방법, 장치, 시스템 및 컴퓨터 프로그램{METHOD, APPARAUTS AND SYSTEM FOR NAMED ENTITY LINKING AND COMPUTER PROGRAM THEREOF}Object name connection method, device, system and computer program {METHOD, APPARAUTS AND SYSTEM FOR NAMED ENTITY LINKING AND COMPUTER PROGRAM THEREOF}

본 발명은 개체명 연결 방법, 장치, 시스템 및 컴퓨터 프로그램에 관한 것으로서, 보다 구체적으로는 텍스트 내에 위치하는 다의어에 대한 개체명 연결을 수행하는 방법, 장치, 시스템 및 컴퓨터 프로그램에 관한 것이다.TECHNICAL FIELD The present invention relates to an entity name association method, an apparatus, a system, and a computer program, and more particularly, to a method, an apparatus, a system, and a computer program for performing entity name association for a multilingual term located in text.

개체명 연결(Named Entity Linking)이라 함은 주어진 텍스트 내에 위치하는 단어 등이 다의적으로 해석될 수 있는 경우, 상기 주어진 텍스트에서의 쓰임새를 고려하여 상기 단어 등이 어떤 의미로 사용되었는지를 판단하고, 이에 따라 상기 단어 등을 인물, 사물, 장소 등으로 연결하는 작업을 말한다(예를 들어, 텍스트에서 사용된 "거미"라는 단어가 가수를 의미하는지 또는 절지동물을 의미하는지 판단). 개체명 연결은 다의적 단어에 대한 의미 판단 결과가 품질에 영향을 주는 검색 엔진, 대화 시스템 등에서 중요한 구성 요소가 될 수 있다.Named entity linking means that when a word or the like located in a given text can be interpreted intentionally, the meaning of the word or the like is determined in consideration of its use in the given text. Accordingly, the term refers to an operation of connecting the word to a person, an object, a place, etc. (for example, determining whether the word "spider" used in the text means a singer or an arthropod). Entity linkage can be an important component in search engines, dialogue systems, etc., where the results of semantic judgments on multiwords affect quality.

종래에는 주로 주어진 텍스트의 연결 대상 단어의 주변 단어 등을 자질(feature)로 산출한 후, 써포트 벡터 머신(Support Vector Machine, SVM)이나 로지스틱 회귀분석(Logistic Regression), 유사도 분석 등을 적용하여 개체명 연결을 수행하였다. 그런데, 상기 종래 기술의 경우에는 구별 대상 개체명의 수가 늘어남에 따라 개체명 연결에 소요되는 시간이 증가할 수 있으며, 나아가 주어진 시간 내에 정확한 결과물을 얻기가 어려워지는 문제가 나타날 수 있다. 특히, 개체명 연결이 소수의 특정 단어에 한정되지 않고 다수의 다의어가 사용될 수 있는 검색 엔진 등에서는 구별 대상 개체명이 100 단위에서 1만 단위 이상까지 늘어날 수 있어 종래 기술로는 개체명 연결의 정확도가 크게 떨어지는 문제가 따르게 된다.Conventionally, after calculating a feature of surrounding words of a connection target word of a given text as a feature, and applying a support vector machine (SVM), logistic regression, similarity analysis, etc. The connection was performed. However, in the conventional technology, as the number of distinguished object names increases, the time required for concatenating the object names may increase, and furthermore, it may be difficult to obtain accurate results within a given time. In particular, in search engines where the name association is not limited to a few specific words and a large number of multiple words can be used, the distinguished entity name may increase from 100 units to 10,000 units or more. The problem of falling greatly follows.

대한민국 등록특허 제10-1255957호(2013.4.24.)Republic of Korea Patent No. 10-1255957 (April 24, 2013)

본 발명은 상기와 같은 종래 기술의 문제점을 해결하기 위해 창안된 것으로, 텍스트 내에 위치하는 다의어에 대하여 정확한 개체명 연결을 수행할 수 있으며, 나아가 전산 자원을 보다 효율적으로 사용하여 개체명 연결을 수행할 수 있는 개체명 연결 방법, 장치, 시스템 및 컴퓨터 프로그램을 제공하는 것을 목적으로 한다.The present invention was devised to solve the above-mentioned problems of the prior art, and it is possible to perform exact entity name concatenation with respect to a multilingual word located in the text, and furthermore, to efficiently perform entity name concatenation using computational resources. It is an object of the present invention to provide a method, apparatus, system, and computer program for connecting entity names.

상기 과제를 해결하기 위한 본 발명의 한 측면에 따른 개체명 연결 방법은, 텍스트에 포함되는 다의어에 대하여 개체명 연결을 수행하는 방법으로서, 개체명 연결 시스템이, 상기 텍스트에서 상기 다의어를 포함하는 복수의 단어를 각 대응하는 복수의 벡터로 변환하는 단어-벡터 변환 단계; 상기 복수의 벡터를 은닉층을 구비하는 심층신경망에 입력하는 신경망 입력 단계; 및 상기 심층신경망의 출력값을 이용하여 상기 다의어에 대한 개체명 연결을 수행하는 개체명 연결 단계;를 포함하는 것을 특징으로 한다.In accordance with an aspect of the present invention for solving the above problems, a method for performing entity name association with respect to a multilingual word included in a text, wherein the entity name association system includes a plurality of entities including the polynomial in the text. A word-vector conversion step of converting the word of to each corresponding plurality of vectors; A neural network input step of inputting the plurality of vectors into a deep neural network having a hidden layer; And an entity name concatenation step of performing entity name concatenation to the multilingual word using an output value of the deep neural network.

본 발명의 다른 측면에 따른 컴퓨터 프로그램은 상기 기재된 개체명 연결 방법의 각 단계를 컴퓨터에서 실행시키기 위한 컴퓨터로 판독 가능한 매체에 저장된 컴퓨터 프로그램인 것을 특징으로 한다.A computer program according to another aspect of the present invention is characterized in that the computer program is stored in a computer readable medium for executing each step of the entity name connection method described above on a computer.

본 발명의 또 다른 측면에 따른 객체명 연결 시스템은, 텍스트에 포함되는 다의어에 대하여 개체명 연결을 수행하는 개체명 연결 시스템으로서, 상기 텍스트에서 상기 다의어를 포함하는 복수의 단어를 각 대응하는 복수의 벡터로 변환하는 단어-벡터 변환부; 상기 복수의 벡터를 은닉층을 구비하는 심층신경망에 입력하는 신경망 입력부; 및 상기 심층신경망의 출력값을 이용하여 상기 다의어에 대한 개체명 연결을 수행하는 개체명 연결부;를 포함하는 것을 특징으로 한다.An object name linking system according to another aspect of the present invention is an entity name linking system that performs entity name linking for a multilingual word included in text, and includes a plurality of words each corresponding to a plurality of words including the multilingual word in the text. A word-vector conversion unit for converting to a vector; A neural network input unit for inputting the plurality of vectors into a deep neural network having a hidden layer; And an entity name connection unit that performs entity name connection to the multilingual word using the output value of the deep neural network.

본 발명의 일 실시예에 따르면, 텍스트 내에 위치하는 다의어에 대하여 정확한 개체명 연결을 수행할 수 있으며, 나아가 전산 자원을 보다 효율적으로 사용하여 개체명 연결을 수행할 수 있는 개체명 연결 방법, 장치, 시스템 및 컴퓨터 프로그램을 제공할 수 있게 된다.According to an embodiment of the present invention, it is possible to perform the exact entity name association with respect to the multilingual words located in the text, and furthermore, the entity name association method, apparatus, which can perform entity name association using more efficient computational resources, It is possible to provide a system and a computer program.

본 발명에 관한 이해를 돕기 위해 상세한 설명의 일부로 포함되는, 첨부도면은 본 발명에 대한 실시예를 제공하고, 상세한 설명과 함께 본 발명의 기술적 사상을 설명한다.
도 1은 본 발명의 일 실시예에 따른 개체명 연결 시스템의 구성을 설명하는 도면이다.
도 2는 본 발명의 일 실시예에 따른 개체명 연결의 개념을 설명하기 위한 도면이다.
도 3과 도 4는 본 발명의 일 실시예에 따른 개체명 연결 시스템에서 사용자 단말의 화면에 대한 예시도이다.
도 5는 본 발명의 일 실시예에 따라 개체명이 연결되는 웹문서의 예시도이다.
도 6은 본 발명의 일 실시예에 따른 개체명 연결 방법의 순서도이다.
도 7은 본 발명의 일 실시예에 따른 개체명 연결 시스템에서 심층신경망의 동작을 설명하기 위한 도면이다.
도 8은 본 발명의 일 실시예에 따른 개체명 연결 시스템에서 N-gram 콘볼루션 필터의 동작을 설명하기 위한 도면이다.
도 9는 본 발명의 일 실시예에 따른 개체명 연결 시스템에서 동적 데이터 샘플링 기법을 설명하기 위한 도면이다.
도 10은 본 발명의 일 실시예에 따른 개체명 연결 시스템에서 정적 정책 맞춤 손실 함수 기법을 설명하기 위한 도면이다.
도 11은 본 발명의 일 실시예에 따른 개체명 연결 시스템에서 일반 개체에 대한 네거티브 샘플링 기법을 설명하기 위한 도면이다.
도 12는 본 발명의 일 실시예에 따른 개체명 연결 시스템의 동작을 설명하기 위한 도면이다.
도 13은 본 발명의 일 실시예에 따른 학습 말뭉치 자동 구축 모듈의 동작을 설명하기 위한 도면이다.
도 14는 본 발명의 일 실시예에 따른 개체명 연결 시스템의 기능별 구성을 설명하기 위한 도면이다.
도 15는 본 발명의 일 실시예에 따른 개체명 연결 시스템의 거리 기반 단어-벡터 모델 및 후처리를 설명하기 위한 도면이다.
도 16은 본 발명의 일 실시예에 따른 개체명 연결 시스템의 구성도이다.
BRIEF DESCRIPTION OF THE DRAWINGS The accompanying drawings, included as part of the detailed description in order to provide a thorough understanding of the present invention, provide examples of the present invention and together with the description, illustrate the technical idea of the present invention.
1 is a view for explaining the configuration of the entity name connection system according to an embodiment of the present invention.
2 is a view for explaining the concept of entity name connection according to an embodiment of the present invention.
3 and 4 are exemplary diagrams of the screen of the user terminal in the entity name connection system according to an embodiment of the present invention.
5 is an exemplary view of a web document to which the entity name is linked according to an embodiment of the present invention.
6 is a flowchart illustrating a method for linking entity names according to an embodiment of the present invention.
7 is a view for explaining the operation of the deep neural network in the entity name connection system according to an embodiment of the present invention.
8 is a view for explaining the operation of the N-gram convolution filter in the entity name connection system according to an embodiment of the present invention.
9 is a diagram for describing a dynamic data sampling scheme in a system for linking entity names according to an embodiment of the present invention.
10 is a view for explaining a static policy matching loss function scheme in the entity name linking system according to an embodiment of the present invention.
FIG. 11 is a diagram for describing a negative sampling scheme for a generic entity in an entity name linking system according to an embodiment of the present invention.
12 is a view for explaining the operation of the entity name connection system according to an embodiment of the present invention.
13 is a view for explaining the operation of the learning corpus automatic building module according to an embodiment of the present invention.
14 is a view for explaining the configuration of each function of the entity name connection system according to an embodiment of the present invention.
FIG. 15 is a diagram for explaining a distance-based word-vector model and post-processing of an entity connection system according to an embodiment of the present invention. FIG.
16 is a block diagram of an entity name connection system according to an embodiment of the present invention.

본 발명은 다양한 변환을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 이하에서는 특정 실시예들을 첨부된 도면을 기초로 상세히 설명하고자 한다.As the inventive concept allows for various changes and numerous embodiments, particular embodiments will be described in detail with reference to the accompanying drawings.

본 발명을 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다.In the following description of the present invention, if it is determined that the detailed description of the related known technology may obscure the gist of the present invention, the detailed description thereof will be omitted.

제1, 제2 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되는 것은 아니며, 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다.Terms such as "first" and "second" may be used to describe various components, but the components are not limited by the terms, and the terms are only used to distinguish one component from another component. Used.

이하에서는, 본 발명에 따른 개체명 연결 방법, 장치, 시스템 및 컴퓨터 프로그램의 예시적인 실시형태들을 첨부된 도면을 참조하여 상세히 설명한다.DETAILED DESCRIPTION Hereinafter, exemplary embodiments of a method for connecting an entity name, an apparatus, a system, and a computer program according to the present invention will be described in detail with reference to the accompanying drawings.

먼저, 도 1에서는 본 발명의 일 실시예에 따른 개체명 연결 시스템(100)의 동작을 설명하기 위한 도면을 보여주고 있다. 도 1에서 볼 수 있는 바와 같이, 본 발명의 일 실시예에 따른 개체명 연결 시스템(100)은 데이터베이스(30) 등과 연결되어, 상기 데이터베이스(30) 등에 저장되어 있는 문서(예를 들어, 블로그, 카페, 뉴스 등을 포함하는 다양한 전자 문서 등)에 대하여, 상기 문서에 포함되어 있는 하나 이상의 문장을 포함하는 텍스트 내에 위치하는 다의적 단어에 대한 개체명 연결을 수행하게 된다.First, Figure 1 shows a view for explaining the operation of the entity name connection system 100 according to an embodiment of the present invention. As can be seen in Figure 1, the entity name connection system 100 according to an embodiment of the present invention is connected to the database 30 and the like, the document (for example, blog, For various electronic documents including cafes, news, etc.), the entity name linking is performed for a multi-word word located in a text including one or more sentences included in the document.

보다 구체적인 예를 들어, 데이터베이스(30)에 저장되어 있는 특정 전자 문서에, 도 2에서 볼 수 있는 바와 같이 “오늘 딸과 매장에 가서 ‘원피스’를 골랐다”라는 문장이 포함되어 있는 경우, 상기 ‘원피스’라는 단어는 그 쓰임새에 따라서 만화의 제목인 ‘원피스’일 수도 있으며, 의류의 한 종류인 ‘원피스’일 수도 있다. 이에 대하여, 본 발명의 일 실시예에 따른 개체명 연결 시스템(100)에서는 상기 문장에서 상기 ‘원피스’가 만화를 의미하는지 또는 의류를 의미하는지를 판단하여, 상기 문장의 다의어(‘원피스’)에 대한 개체명 연결을 수행하게 된다. 이에 따라, 상기 문장의 ‘원피스’에 ‘원피스_의류’ 등과 같이 개체명을 연결하고 나아가 이를 저장할 수 있다.More specifically, for example, when a specific electronic document stored in the database 30 includes the sentence “I went to the store with my daughter today and chose one piece” as shown in FIG. The word 'dress' may be 'one piece', the title of a cartoon, or 'one piece', a type of clothing, depending on its use. On the other hand, in the individual name connection system 100 according to an embodiment of the present invention, it is determined whether the 'one piece' means cartoon or clothing in the sentence, and thus, the multi-word ('one piece') of the sentence is determined. The object name connection will be performed. Accordingly, the object name may be connected to the one-piece of the sentence such as one-piece_clothing and the like.

또한, 본 발명의 일 실시예에 따른 개체명 연결 시스템(100)에서는 상기 개체명 연결 결과를 반영하여 사용자들에게 서비스를 제공할 수 있게 된다. 보다 구체적인 예를 들어, 도 3에서 볼 수 있는 바와 같이, 단말(10a)의 사용자가 만화 ‘원피스’에 대한 검색을 수행하고자 하는 경우(예를 들어, 각 검색 서비스에서 지원하는 검색어 형식에 따라 다의어 중 특정 의미의 검색어를 특정하여 입력하는 경우(원피스(만화) 또는 원피스(의류)과 같은 형식으로 입력하는 경우(도 3의 310)), 본 발명의 일 실시예에 따른 개체명 연결 시스템(100)에서는 다의적 의미를 가지는 검색어의 의미를 고려한 검색 결과를 제공(도 3의 320)함으로써, 사용자가 보다 편리하게 자신이 원하는 검색 결과를 얻을 수 있도록 도울 수 있게 된다.In addition, the entity name connection system 100 according to an embodiment of the present invention may provide services to users by reflecting the entity name connection result. For example, as shown in FIG. 3, when the user of the terminal 10a wants to perform a search for a cartoon 'one piece' (for example, it is a multi-word depending on a search word format supported by each search service). In the case where a specific search word having a specific meaning is inputted (in case of inputting in a form such as one piece (cartoon) or one piece (clothing) (310 in FIG. 3)), the entity name connection system 100 according to an embodiment of the present invention. ) Provides a search result in consideration of the meaning of the search word having a multi-purpose meaning (320 of FIG. 3), so that the user can more conveniently obtain a desired search result.

또한, 도 1을 참조하여 본 발명의 일 실시예에 따른 개체명 연결 시스템(100) 및 관련된 구성들에 대하여 보다 자세하게 살펴보면, 본 발명의 일 실시예에 따른 개체명 연결 시스템(100)은 하나 이상의 서버를 포함하여 구성될 수 있으며, 이외에도 개체명 연결을 수행하기 위한 전용 하드웨어 등을 이용하여 구성되거나, 하나 혹은 둘 이상의 단말 장치가 연동되어 구성되는 등 다양한 방식으로 구현될 수 있다. In addition, referring to FIG. 1, in more detail with respect to the entity name connection system 100 and related configurations according to an embodiment of the present invention, the entity name connection system 100 according to an embodiment of the present invention is one or more; The server may be configured to include a server. In addition, the server may be configured using dedicated hardware for performing entity name connection, or may be implemented in various ways such that one or more terminal devices are linked to each other.

또한, 단말(10a, 10b)로서는 스마트폰, 태블릿 PC, PDA, 휴대전화 등 다양한 휴대 단말기가 사용될 수 있고, 그외에도 퍼스널 컴퓨터(PC), 노트북 PC 등 다양한 단말들이 채택될 수도 있다.In addition, as the terminals 10a and 10b, various portable terminals such as a smartphone, a tablet PC, a PDA, a cellular phone, etc. may be used, and various terminals such as a personal computer (PC) and a notebook PC may be adopted.

또한, 단말(10a, 10b)과 개체명 연결 시스템(100)을 연결하는 통신 네트워크(30)로서는 유선 네트워크와 무선 네트워크를 포함할 수 있으며, 구체적으로, 근거리 통신망 (LAN: Local Area Network), 도시권 통신망 (MAN: Metropolitan Area Network), 광역 통신망 (WAN: Wide Area Network) 등의 다양한 통신망을 포함할 수 있다. 또한, 상기 통신 네트워크(30)는 공지의 월드 와이드 웹(WWW: World Wide Web)을 포함할 수도 있다. 그러나, 본 발명에 따른 통신 네트워크(30)가 상기 열거된 네트워크에 국한되는 것은 아니며, 이외에도 공지의 무선 데이터 네트워크나 공지의 전화 네트워크 또는 공지의 유무선 텔레비전 네트워크 등 다양한 네트워크를 포함하여 구성될 수도 있다.In addition, the communication network 30 connecting the terminals 10a and 10b to the entity name connection system 100 may include a wired network and a wireless network, and specifically, a local area network (LAN), a metropolitan area. Various communication networks, such as a metropolitan area network (MAN) and a wide area network (WAN), may be included. The communication network 30 may also include a known World Wide Web (WWW). However, the communication network 30 according to the present invention is not limited to the networks listed above, but may also be configured to include various networks such as a known wireless data network, a known telephone network, or a known wired / wireless television network.

또한, 본 발명의 일 실시예에 따른 개체명 연결 시스템(100)의 동작을 보다 구체적인 예를 들어 설명하면, 텍스트에 "지민"이라는 다의어가 포함되어 있을 경우, 상기 텍스트에 포함되어 있는 "지민"이라는 단어는 그 쓰임새에 따라서 "그룹 AOA"의 "지민"일 수도 있고, "그룹 방탄소년단"의 "지민"일 수도 있으며, 또는 다른 "지민"일 수도 있다. 또한, 텍스트에 "원피스"라는 다의어가 포함되어 있을 경우에도, 상기 "원피스"는 그 쓰임새에 따라 만화의 제목인 '원피스'일 수도 있으며, 의류의 한 종류인 '원피스'일 수도 있다. 이에 대하여, 본 발명의 일 실시예에 따른 개체명 연결 시스템(100)에서는 주어진 텍스트에서 사용된 "지민"이 어떤 사람을 의미하는지, 주어진 텍스트의 "원피스"가 만화를 의미하는지 또는 의류를 의미하는지를 판단하여, 상기 텍스트에서 사용된 다의어에 대한 개체명 연결을 수행하게 된다.In addition, when the operation of the entity name connection system 100 according to an embodiment of the present invention will be described in more detail as an example, when the text includes the term “jimin,” “jimin” included in the text. The word may be "Jimin" in "Group AOA", "Jimin" in "Group BTS", or other "Jimin" depending on its use. In addition, even if the text includes the term "one piece", the "one piece" may be a "one piece" which is a title of a cartoon, or a one piece of clothing, depending on its use. On the other hand, in the entity name connection system 100 according to an embodiment of the present invention, whether the "Jimin" used in a given text means a person, whether the "one piece" of the given text means cartoon or clothing. By judging, the entity name concatenation is performed for the multiword used in the text.

이에 따라, 본 발명의 일 실시예에 따른 개체명 연결 시스템(100)에서는 주어진 텍스트의 "지민", "원피스" 등의 다의어에 "지민_가수AOA", "원피스_만화" 등과 같이 개체명을 연결하여 저장할 수 있으며, 나아가 상기 개체명 연결 결과를 반영하여 사용자들에게 검색 서비스 등 다양한 서비스를 제공할 수 있게 된다. Accordingly, in the entity name connection system 100 according to an embodiment of the present invention, an entity name such as "Jimin_Singer AOA", "One Piece_Cartoon", or the like is used in a synonym such as "Jimin" or "One Piece" of a given text. It can be connected and stored, and further it is possible to provide various services such as a search service to users by reflecting the object name connection result.

나아가, 본 발명의 일 실시예에 따른 개체명 연결 시스템(100)에서는 사용자가 다의어를 구분하여 입력할 수 있도록 다의어 목록을 제공하고 사용자가 선택할 수 있도록 하는 인터페이스를 제공할 수도 있다. 예를 들어, 도 4에서 볼 수 있는 바와 같이, 사용자가 다의어 "지민" 이나 "원피스"를 입력하면, 상기 다의어 "지민"이나 "원피스"를 그 의미를 구분하여 목록을 제공한 후 사용자가 선택할 수 있도록 할 수 있다(도 4의 410, 420).Furthermore, the entity name connection system 100 according to an exemplary embodiment of the present invention may provide a multilingual list so that a user can input the multilingual word, and provide an interface for the user to select. For example, as shown in FIG. 4, when a user inputs the word "Jimin" or "one piece", the user selects the word "Jimin" or "one piece" by dividing the meaning. (410, 420 of FIG. 4).

또 다른 예로서, 사용자가 만화 '원피스'에 대한 검색을 수행하고자 하는 경우, 각 검색 서비스에서 지원하는 검색어 형식에 따라 다의어 중 특정 의미의 검색어를 특정하여 입력할 수 있도록 함으로써(예를 들어, 원피스(만화) 또는 원피스(의류)과 같은 형식으로 입력), 본 발명의 일 실시예에 따른 개체명 연결 시스템(100)에서는 다의적 의미를 가지는 검색어의 의미를 고려한 검색 결과를 제공하여 사용자가 보다 편리하게 자신이 원하는 검색 결과를 얻을 수 있도록 도울 수 있게 된다.As another example, when a user wants to perform a search for a cartoon 'one piece', the user may input a specific search word of a specific word according to a search word format supported by each search service (for example, one piece (Manga) or one-piece (clothing) type), the entity name connection system 100 according to an embodiment of the present invention provides a search result in consideration of the meaning of the search word having a multipurpose meaning more convenient to the user You can help them get the search results they want.

이에 따라, 본 발명의 일 실시예에 따른 개체명 연결 시스템(100)에서는, 도 5에서 볼 수 있는 바와 같이, 동일한 단어인 ?幣퓰?가 사용된 텍스트라 하더라도 상기 텍스트에서 어떤 의미로 사용되었는지를 파악함으로써(예를 들어, 도 5(a)에서는 원피스(의류)으로, 도 5(b)에서는 원피스(만화)로 파악), 사용자가 원하는 정보를 보다 정확하게 제공할 수 있게 된다.Accordingly, in the entity name connection system 100 according to an embodiment of the present invention, as shown in FIG. 5, even if the same word is used, what meaning is used in the text. By, for example, in Fig. 5 (a) as one piece (clothing), Fig. 5 (b) as a piece (cartoon), it is possible to more accurately provide the information desired by the user.

또한, 본 발명에서는 "지민", "원피스" 등 하나의 단어가 다의적 의미를 가지는 경우를 예를 들어 설명하고 있으나, 본 발명이 반드시 이에 한정되는 것은 아니며 둘 이상의 단어가 다의적 의미를 가지는 경우에도 본 발명이 적용될 수 있다(예를 들어, "겨울 바다(노래 제목/특정 계절의 바다)"). 이에 따라, 본 발명에서 "단어"라는 표현에는 둘 이상의 단어를 포함하는 문구(phrase) 등도 포함될 수 있다.In addition, in the present invention, a case in which one word such as "Jimin" and "one piece" has a plural meaning is described as an example. However, the present invention is not necessarily limited thereto, and the present invention is not necessarily limited thereto. The invention can be applied (e.g., "winter sea (song title / sea of specific seasons)"). Accordingly, the expression "word" in the present invention may also include a phrase (phrase) including two or more words.

도 6에서는 본 발명의 일 실시예에 따른 개체명 연결 방법의 순서도를 도시하고 있다. 도 6에서 볼 수 있는 바와 같이, 본 발명의 일 실시예에 따른 개체명 연결 방법은, 텍스트에 포함되는 다의어에 대하여 개체명 연결을 수행하는 방법에 있어서, 개체명 연결 시스템(100)이 텍스트에서 다의어를 포함하는 복수의 단어를 각 대응하는 복수의 벡터로 변환하는 단어-벡터 변환 단계(S110), 상기 복수의 벡터를 은닉층을 구비하는 심층신경망에 입력하는 신경망 입력 단계(S120) 및 상기 심층신경망의 출력값을 이용하여 상기 다의어에 대한 개체명 연결을 수행하는 개체명 연결 단계(S130)를 포함할 수 있다.6 is a flowchart illustrating a method for linking individual names according to an embodiment of the present invention. As can be seen in Figure 6, the entity name linking method according to an embodiment of the present invention, in the method for performing the entity name link for the multi-word included in the text, the entity name link system 100 in the text A word-vector conversion step (S110) for converting a plurality of words including multiwords into a plurality of corresponding vectors, a neural network input step (S120) of inputting the plurality of vectors into a deep neural network having a hidden layer, and the deep neural network The entity name concatenation step (S130) may be performed by using the output value of the entity name concatenation for the multiword.

아래에서는 도 6을 참조하여 본 발명의 일 실시예에 따른 개체명 연결 방법을 각 단계별로 나누어 자세하게 검토한다. Hereinafter, referring to FIG. 6, the method for linking individual names according to an embodiment of the present invention will be examined in detail.

먼저, S110단계에서는 개체 연결 시스템(100)이 텍스트에서 다의어를 포함하는 복수의 단어를 각 대응하는 복수의 벡터로 변환하게 된다. 이때, 본 발명의 일 실시예에 따른 개체 연결 시스템(100)은, 텍스트 내에서 다의어를 기준으로 미리 정해진 거리 이내의 복수의 단어를 선정한 후, 상기 복수의 단어에 대한 각 벡터를 산출할 수도 있다.First, in step S110, the object linking system 100 converts a plurality of words including multiwords in text into a plurality of corresponding vectors. In this case, the entity connection system 100 according to an embodiment of the present invention may select a plurality of words within a predetermined distance based on the multiword in the text, and then calculate each vector for the plurality of words. .

보다 구체적인 예를 들어, 도 7에서는 드라마 <김과장>에 관한 기사인, "김과장에서 정해성(홍가은역)은 레이스 블라우스와 트위드 배색 원피스를 매치해 러블리한"이라는 텍스트(도 7의 710)에 포함된 다의어 "원피스"에 대한 개체명을 연결하는 경우, 상기 텍스트를 형태소 단위로 분류한 후 상기 "원피스"를 기준으로 미리 정해진 거리 이내에 있는 복수의 단어 (예를 들어, 전후 4개 단어인 "블라우스", "와", "트위드", "배색" 및 "를", "매치", "해", "러블리") 를 산출한 후(도 7의 720), 상기 복수의 단어를 미리 정해진 차원의 벡터로 변환할 수 있다. 예를 들어, 도 7의 731에서 볼 수 있는 바와 같이, 소정의 단어-벡터 변환(word2vec) 함수를 이용하여 단어 "블라우스"에 대한 128차원 벡터(0.0,0.0, 0.1, 0.3, 0.8, ...), "와"에 대한 128차원 벡터(0.3, 0.2, 0.5, 0.7, 1.2, ...) 등으로 변환되어 임베딩층으로 입력될 수 있다. 이때, 변환되는 벡터의 차원은 다의어에 대한 개체명 연결의 정확도, 개체명 연결에 소요되는 시간 및 전산 자원(computing resource) 등을 고려하여 결정될 수 있다.For example, in FIG. 7, the article about the drama <Kim Governor> is included in the text, "Hae Sung-Jung (Hong Ga-eun Station) in Kim Goverment is a lovely match with a lace blouse and a tweed color dress" (710 of FIG. 7). In the case of concatenating individual names for the multilingual "one piece", a plurality of words within a predetermined distance based on the "one piece" after classifying the text in morpheme units (for example, four words before and after "blouse" &Quot;, " and " " " tweed " " colour " " " " match " " solution " and " lovely " Can be converted to a vector. For example, as can be seen at 731 of FIG. 7, a 128-dimensional vector (0.0,0.0, 0.1, 0.3, 0.8,... For the word "blouse" using a predetermined word-vector conversion (word2vec) function. .), And 128-dimensional vectors (0.3, 0.2, 0.5, 0.7, 1.2, ...) for "and" can be converted into the embedding layer. In this case, the dimension of the vector to be transformed may be determined in consideration of the accuracy of the concatenation of the entity names, the time required for concatenating the entity names, and the computing resources.

다음으로, S120 단계에서는 복수의 벡터를 은닉층을 구비하는 심층신경망에 입력하게 된다(도 7의 733). 이때, 변환된 벡터(M개)는 복수개 단위로 묶여 소정의 연산을 거쳐 N개의 벡터로 산출(도 7의 732)된 후(여기서, M>N), 심층신경망에 입력될 수 있다.Next, in operation S120, a plurality of vectors are input to the deep neural network having the hidden layer (733 in FIG. 7). In this case, the converted vectors (M) may be grouped into a plurality of units and calculated as N vectors (732 of FIG. 7) through a predetermined operation (where M> N), and may be input to the deep neural network.

즉, 본 발명에서 변환되어 임베딩층으로 입력된 벡터는 은닉층으로 전달되어 처리되는데(도 7의 732), 이때 N-gram 콘볼루션 필터(732) 등을 이용하여 상기 입력된 M개의 벡터들을 콘볼루션 연산을 통해 믹싱(mixing)하여 N개로 줄여줌으로써, 심층신경망의 학습 및 디코딩 속도 및 효율을 크게 개선할 수 있게 된다. That is, in the present invention, the vector converted into the embedding layer is transferred to the hidden layer and processed (732 of FIG. 7). At this time, the inputted M vectors are convolved using the N-gram convolution filter 732. By mixing and reducing the number to N, it is possible to greatly improve the learning and decoding speed and efficiency of the deep neural network.

즉, 도 8에서 볼 수 있는 바와 같이, N-gram 콘볼루션 필터(732)를 사용하지 않는 경우(도 8의 (a))와 대비할 때, N-gram 콘볼루션 필터(732)를 사용하는 경우(도 8의 (b)), 단어1과 단어2가 믹싱되고, 태깅 대상 다의어와 단어 4가 믹싱되는 등 입력 차원은 절반으로 크게 줄어들 수 있으며, 이에 따라 학습 및 디코딩 속도는 2개 빨라지는 등 그 효율이 크게 개선될 수 있다.That is, as can be seen in Figure 8, when using the N-gram convolution filter 732 as compared to the case of not using the N-gram convolution filter 732 (Fig. 8 (a)) (B) of FIG. 8, the input dimension can be greatly reduced in half, such as word 1 and word 2 are mixed, tagging multiword and word 4 are mixed, and the learning and decoding speed is increased by two. The efficiency can be greatly improved.

보다 구체적인 예를 들어, 텍스트에서 상기 다의어를 중심으로 12개의 단어를 산출(다의어 + 전후 각 12개 단어 = 25개 단어)하고 각 단어를 128 차원의 벡터로 변환하여 입력하는 경우 심층신경망은 128 x 25 = 3200 개를 입력받아 처리하게 되는데 반하여, 도 8에서 볼 수 있는 바와 같이 복수의 단어(M개)를 콘볼루션 연산 등을 통해 N개의 단어로 줄여줌으로써, 학습 및 디코딩에 소요되는 시간 및 전산 자원(computing resource)를 효과적으로 줄일 수 있게 된다.For example, if 12 words are calculated based on the polynomial (multiword + 12 words before and after each word = 25 words) in the text, and each word is converted into a 128-dimensional vector and the deep neural network is 128 x While 25 = 3200 are received and processed, as shown in FIG. 8, the plurality of words (M) are reduced to N words through convolution operations, such as time and computation required for learning and decoding. Effectively reducing the computing resources.

마지막으로, S130 단계에서는 심층신경망의 출력값을 이용하여 다의어에 대한 개체명 연결을 수행하게 된다. Finally, in step S130, using the output value of the deep neural network is connected to the entity name for the word.

이때, 심층신경망은 다의어가 서로 다른 의미로 사용된 복수의 텍스트군을 이용하여 학습되어 텍스트에서 사용된 다의어의 의미를 구별하여 출력할 수 있도록 학습된 신경망일 수 있다. In this case, the deep neural network may be a neural network that is trained by using a plurality of text groups in which the multilingual words are used in different meanings to distinguish and output the meanings of the multilingual words used in the text.

또한, 은닉층을 거친 정보는 ReLU(Rectified Linear Unit) 등 뉴런 함수 등을 거쳐 출력층을 통해 개체명 연결 결과치를 출력할 수 있다.In addition, the information passed through the hidden layer may be output via the output layer through the neuron function, such as ReLU (Rectified Linear Unit).

이에 따라, 심층신경망의 출력층은, 도 7의 734에서 볼 수 있는 바와 같이, 서로 다른 의미로 사용되는 각 다의어 별로 구별되어 복수의 노드를 구성하는 구조를 이룰 수 있다. 예를 들어, 심층신경망의 출력층은, 다의어 "원피스"를 그 의미에 따라 나누어 "원피스(의류)"로 사용된 경우 및 "원피스(만화)"로 사용된 경우에 대응하는 별도의 노드를 포함하여 구성될 수 있다. 이에 따라, 도 7의 710의 "레이스 블라우스와 트위드 배색 원피스를 매치해 러블리한" 텍스트가 입력되는 경우, 도 7의 734에서 볼 수 있는 바와 같이 "원피스(의류)" 노드의 출력값(0.8)이 "원피스(만화)"의 출력값(0.2)보다 높게 출력되는 바, 텍스트에서 사용된 다의어 "원피스"가 "원피스(의류)"의 의미로 사용되었다고 판단하고, 상기 다의어 "원피스"에 대한 개체명 연결을 수행할 수 있게 된다.Accordingly, as shown in 734 of FIG. 7, the output layer of the deep neural network may form a structure in which a plurality of nodes are distinguished by each lexical word used in different meanings. For example, the output layer of the deep neural network may include separate nodes corresponding to the case where the word "one piece" is divided according to its meaning and used as "one piece" and "one piece (cartoon)". Can be configured. Accordingly, when the text “Lovely matched lace blouse and tweed color dress” of 710 of FIG. 7 is inputted, as shown in 734 of FIG. 7, the output value (0.8) of the “One piece (clothing)” node is decreased. The output of "one piece (cartoon)" is higher than the output value (0.2), and it is determined that the term "one piece" used in the text is used to mean "one piece (clothing)", and the entity name connection for the multilingual "one piece" is determined. Will be able to perform

이에 따라, 본 발명의 일 실시예에 따른 개체명 연결 시스템(100)은, 1) 태깅 대상 주변 단어들을 분산된 에너지 벡터 값으로 변환하여 임베딩층(embedding layer)으로 입력하고, 2) 이때 입력된 벡터 값은 처리에 요구되는 계산량을 줄일 수 있도록 콘볼루션 연산 등을 통해 믹싱되어 압축될 수 있으며, 3) 압축된 벡터는 은닉층(hidden layer)에 곱해지고 ReLU 함수로 비선형 활성화(non-linear activation)를 거쳐 4) 이어서 서로 다른 의미의 다의어 별로 구별되는 복수의 노드를 구비하는 출력층(output layer)과 곱해져 최종적으로 출력층(output layer)의 값으로부터 태깅 대상 다의어가 어떤 의미를 나타내는지를 판단하게 된다.Accordingly, the entity name connection system 100 according to an embodiment of the present invention, 1) converts the tagging surrounding words into distributed energy vector values and inputs them into the embedding layer, and 2) Vector values can be mixed and compressed using convolution operations to reduce the amount of computation required, and 3) the compressed vector is multiplied by a hidden layer and non-linear activation with the ReLU function. 4) Subsequently, it is multiplied by an output layer having a plurality of nodes distinguished by different words of different meanings, and finally, it is determined from the value of the output layer which meaning of the tagging target word is represented.

나아가, 본 발명에는 개체명 연결 시스템(100)의 성능을 최적화하기 위한 추가적인 기법들이 더 적용될 수도 있다.Furthermore, additional techniques for optimizing the performance of the entity name connection system 100 may be further applied to the present invention.

먼저, 본 발명의 일 실시예에 따른 개체명 연결 시스템(100)에서는, 종래 기술에 따라 신경망을 이용하여 개체명 연결을 수행하는 경우 학습 데이터 분포의 불균일성에 의해 다수 학습 데이터에 해당하는 다의어로 편중되어 개체명이 연결되는 문제점을 개선할 수 있다.First, in the entity name connection system 100 according to an embodiment of the present invention, when performing entity name connection using a neural network according to the prior art, the multilingualism is biased to correspond to a plurality of learning data by nonuniformity of learning data distribution. This can improve the problem of concatenating entity names.

즉, 도 9의 표(910)에서 볼 수 있는 바와 같이 다의어의 의미별 학습 데이터의 수가 크게 차이가 나게 되는 경우(원피스_(의류) 51,099건 >> 원피스_(만화) 5,313건, 원피스_(음악그룹) 1,672건), 소수의 학습 데이터(위의 경우, 원피스_(만화), 원피스_(음악그룹))에 해당하는 경우에 대한 정확도가 떨어지는 등, 상기 다수의 학습 데이터에 해당하는 다의어(위의 경우, 원피스_(의류))로 편중되어 개체명이 연결되는 문제가 나타날 수 있다.That is, as shown in the table 910 of FIG. 9, when the number of learning data for each meaning of a multiword becomes largely different (one piece _ (clothing) 51,099 cases >> one piece _ (cartoon) 5,313 cases, one piece _ ( Music group) 1,672 cases), a small number of learning data (in the above case, one piece _ (cartoon), one piece _ (music group), the accuracy of the case corresponding to the multiple words corresponding to the plurality of learning data ( In the above case, one-piece _ (clothing)) may be biased to connect the individual name.

이에 대하여, 본 발명의 일 실시예에 따른 개체명 연결 시스템(100)에서는 도 9의 수식(920)에서 볼 수 있는 바와 같이, 특정 다의어에 대한 학습 데이터를 샘플링함에 있어서, 개체명 연결의 정확도 등 성능이 떨어지는 결과를 보이는 다의어에 대한 샘플링 분포를 높일 수 있도록 동적으로 보정하여 다의어의 의미별 학습 데이터의 분포의 불균일성을 완화하여 줌으로써, 학습 데이터에서의 각 개체간 빈도 차이로 인해 다수 개체로 편향되는 문제를 효과적으로 개선할 수 있게 된다. On the other hand, in the entity name linkage system 100 according to an embodiment of the present invention, as shown in Equation 920 of FIG. Dynamically corrected to increase sampling distribution for multilingual words that show poor performance, thereby reducing the nonuniformity of the distribution of training data for each semantic word. Effectively ameliorate the problem.

또한, 본 발명의 일 실시예에 따른 개체명 연결 시스템(100)에서는, 도 10에서 볼 수 있는 바와 같이, 태깅 대상이 되는 다의어의 연결 후보 개체들끼리만 비교하여 순위를 산출(Ranking)하도록 함으로써, 수많은 출력 개체 클래스로 인해 학습 품질이 저하되는 문제를 효과적으로 개선할 수도 있다. In addition, in the entity name connection system 100 according to an embodiment of the present invention, as shown in FIG. 10, by comparing only the candidate candidates of the multilingual targets to be tagged, the rank is calculated (Ranking). Many output object classes can effectively improve the problem of poor learning quality.

보다 구체적으로, 도 10의 출력층(1010)에서 볼 수 있는 바와 같이, 본 발명의 일 실시예에 따른 개체명 연결 시스템(100)의 출력층은 각 다의어의 서로 다른 의미에 대응되는 복수의 노드를 포함하는 구조를 이루게 되는데(예를 들어, 원피스(만화), 원피스(의류), 지민(AOA), 지민(BTS), 나비(가수), 나비(동물) 등), 다의어 ?幣퓰?에 대한 학습 과정에서 출력층의 원피스(만화), 원피스(의류) 등 다의어 ?幣퓰?에 연결될 수 있는 후보 개체(원피스(만화), 원피스(의류))들끼리만 비교하여 결과를 판단하도록 함으로써, 다수의 무관한 출력 개체(지민(AOA), 지민(BTS), 나비(가수), 나비(동물) 등)로 인한 품질 저하를 효과적으로 억제할 수 있게 된다.More specifically, as can be seen in the output layer 1010 of Figure 10, the output layer of the entity name connection system 100 according to an embodiment of the present invention includes a plurality of nodes corresponding to different meanings of each multilingual (For example, dress (cartoon), dress (clothing), Jimin (AOA), Jimin (BTS), butterfly (singer), butterfly (animal), etc.) In the process, only candidate objects (one piece, one piece, and one piece) that can be connected to the same language, such as one piece (cartoon) and one piece (clothing) of the output layer, are compared with each other and judge the result. It is possible to effectively suppress the deterioration caused by output entities (JIA (AOA), JTS (BTS), butterflies (singers), butterflies (animals), etc.).

보다 구체적으로, 도 10의 수식(1020)에서 볼 수 있는 바와 같이 F1 측정치(F1 measure)를 반영할 수 있는 non-differential 함수(convex 함수 등)인 f1_prior 함수를 적용하여 다의어에 대한 동일 개체 예측의 성공, 실패에 따라 손실 전파(loss propagation)을 감소 또는 증가하도록 조절하여 줌으로써, 개체명 연결의 정확도를 효과적으로 개선할 수 있다. 이에 따라, Macro F1 기준 1% 이상의 개선 효과를 달성할 수 있었다.More specifically, as shown in equation 1020 of FIG. 10, the f1_prior function, which is a non-differential function (such as a convex function) that can reflect the F1 measure, is applied to the same entity prediction for the multilingual. By adjusting the loss propagation to decrease or increase according to success or failure, the accuracy of the entity name association can be effectively improved. Accordingly, the improvement effect of 1% or more of the Macro F1 standard could be achieved.

또한, 본 발명의 일 실시예에 따른 개체명 연결 시스템(100)에서는, 종래 기술에 따라 신경망을 이용하여 개체명 연결을 수행하는 경우 일반 명사나 동사, 형용사 등 일반 개체(Common sense entity)로 사용될 수 있는 다의어에 대한 개체명 연결시에 정확도가 떨어질 수 있는 문제점을 개선할 수 있다.In addition, in the entity name connection system 100 according to an embodiment of the present invention, when performing entity name connection using a neural network according to the prior art, it is used as a common sense entity such as a common noun, a verb, an adjective, etc. It is possible to improve the problem that the accuracy may be reduced when concatenating entity names for multiwords.

이에 대하여, 본 발명의 일 실시예에 따른 개체명 연결 시스템(100)에서는, 도 11에서 볼 수 있는 바와 같이, 일반 명사, 동사, 형용사 등 일반 개체를 개체명 연결이 불필요한 개체를 나타내는 클래스로 정의하여 네거티브 샘플링(Negative sampling) 기법을 적용함으로써, 일반 개체에 대한 개체명 연결 오류의 발생을 효과적으로 억제할 수 있게 된다.In contrast, in the entity name linkage system 100 according to an embodiment of the present invention, as shown in FIG. 11, a general entity such as a normal noun, a verb, an adjective, and the like is defined as a class representing an entity for which entity name linkage is unnecessary Therefore, by applying the negative sampling technique, it is possible to effectively suppress the occurrence of an entity name connection error for a general entity.

이때, 본 발명에서 일반 개체라 함은, 상기 일반 명사, 동사, 형용사 등을 모두 포함하여야 하는 것은 아니며, 상기 일반 명사, 동사, 형용사 중 하나 이상을 포함하는 것으로 정의될 수 있는 바, 본 발명의 일 실시예에 따른 개체명 연결 시스템(100)에서는 일반 명사, 동사 또는 형용사에 해당하는 일반 개체에 대한 학습 데이터를 이용하여 심층신경망을 학습시키는 경우를 폭넙게 포함한다.In this case, the general entity in the present invention does not have to include all of the common nouns, verbs, adjectives, etc., and may be defined as including one or more of the common nouns, verbs, adjectives, and the like. The entity name connection system 100 according to an embodiment includes a case of learning a deep neural network using learning data on a general entity corresponding to a general noun, a verb, or an adjective.

즉, 도 11의 1110에서 볼 수 있는 바와 같이 일반 명사(기술과 경험을 "공유") 등의 일반 개체(Common sense entity)를 고유 명사(배우 "공유")로 잘못 인식하는 개체명 연결 오류를 방지하기 위하여, 일반 개체(Common sense entity)에 대한 네거티브 샘플링을 적용함으로써, 일반 명사 등 일반 개체에 대한 개체명 연결 오류를 효과적으로 방지할 수 있게 된다.That is, as shown in 1110 of FIG. 11, an entity name connection error that incorrectly recognizes a common sense entity such as a common noun (a "share" of technology and experience) as a proper noun (an actor "share"). In order to prevent this, by applying negative sampling on a common sense entity, it is possible to effectively prevent an object name connection error on a general entity such as a common noun.

예를 들어, 태깅을 원하지 않는 일반 명사, 동사, 형용사 등에 대한 개체명 연결을 방지하기 위해서, 이러한 개체들을 별도의 클래스로 정의하여 학습시키고, 이 클래스로 분류된 단어에 대하여는 개체명 연결을 하지 않는 방식을 사용할 수 있다. 특히, 연결 오류가 빈번하게 발생하는 단어들에 대하여 별도의 클래스로 분류되도록 학습시킴으로써 효율적으로 태깅 오류를 방지할 수 있다.For example, to avoid linking entity names for common nouns, verbs, adjectives, etc. that you do not want to tag, you define these classes as separate classes, and do not link them to words classified in this class. Can be used. In particular, tagging errors can be efficiently prevented by learning to classify words that frequently cause connection errors into separate classes.

나아가, 종래의 심층신경망(DNN) 모델에서는 다수의 다의어에 대한 개체명 연결을 위하여 곱셈 연산 등 연산량이 크게 증가하면서 처리 속도가 저하되는 문제가 나타날 수 있으나, 본 발명의 일 실시예에 따른 개체명 연결 시스템(100)에서는 N-gram 콘볼루션 필터 등을 이용하여 입력 임베딩층(input embedding layer)을 압축시켜 연산량을 줄임으로써, 개체명 연결 작업의 처리 속도를 개선할 수도 있다.Furthermore, in the conventional deep neural network (DNN) model, a problem may occur in which the processing speed decreases with a large increase in arithmetic operations such as multiplication operations for concatenating individual names for a plurality of multilingual terms, but according to an embodiment of the present invention. The concatenation system 100 may reduce the amount of computation by compressing an input embedding layer by using an N-gram convolution filter or the like, thereby improving the processing speed of the concatenation of entity names.

도 12에서는 본 발명의 일 실시예에 따른 개체명 연결 시스템(100)의 동작을 설명하고 있다. 도 12에서 볼 수 있는 바와 같이, 본 발명의 일 실시예에 따른 개체명 연결 시스템(100)은 개체명 연결 엔진(1220)을 포함하여 구성될 수 있으며, 개체명 연결 엔진(1220)은 심층신경망(Deep Neural Network, DNN) 모델 디코더(decoder) 및 단어-벡터(word vector) 모델 디코더(decoder)를 포함하여 구성될 수 있다. 본 발명에서는 심층신경망(DNN) 모델 디코더를 사용함과 동시에 단어를 벡터 형태로 변환(word to vector)하여 사용함으로써, 전산 자원을 보다 효율적으로 사용하면서도 정확한 개체명 연결을 수행할 수 있게 된다.12 illustrates the operation of the entity name connection system 100 according to an embodiment of the present invention. As can be seen in Figure 12, the entity name connection system 100 according to an embodiment of the present invention may be configured to include the entity name connection engine 1220, the entity name connection engine 1220 is a deep neural network (Deep Neural Network, DNN) can be configured to include a model decoder (decoder) and a word-vector (decoder) model decoder (decoder). In the present invention, by using a deep neural network (DNN) model decoder and at the same time convert the word into a vector form (word to vector), it is possible to use the computational resources more efficiently and to perform accurate entity name concatenation.

나아가, 본 발명의 일 실시예에 따른 개체명 연결 엔진(1220)은 심층신경망(DNN) 모델 디코더 또는 단어-벡터(word vector) 모델 디코더에서 발생할 수 있는 개체명 연결 오류를 보완하기 위한 수동 태깅 이슈 대응 모듈을 더 포함할 수 있으며, 이에 따라 학습 과정 등에서 나타날 수 있는 오류에 대하여 신속하고 효과적인 대응이 가능하게 된다.Furthermore, the entity name connection engine 1220 according to an embodiment of the present invention is a manual tagging issue to compensate for entity name connection errors that may occur in a deep neural network (DNN) model decoder or a word vector model decoder. It may further include a response module, thereby enabling a quick and effective response to errors that may appear in the learning process.

따라서, 개체명 연결 엔진(1220)은 하나 이상의 다의어를 포함하는 텍스트(1210)를 입력받고, 상기 하나 이상의 다의어에 대한 개체명 연결을 효과적으로 수행(1250)할 수 있게 된다.Accordingly, the entity name connection engine 1220 may receive the text 1210 including one or more synonyms, and effectively perform 1250 the entity name association for the one or more synonyms.

보다 구체적으로, 종래 기술에 따라 써포트 벡터 머신(Support Vector Machine, SVM)이나 로지스틱 회귀분석(Logistic Regression), 유사도 분석 기법 등을 이용하여 개체명 연결을 수행하는 경우, 구별 대상 개체명의 수가 늘어남에 따라 소요 시간의 증가와 함께 시간 대비 정확도가 떨어지는 문제가 나타날 수 있었으나, 본 발명의 일 실시예에 따른 개체명 연결 시스템(100)에서는 심층신경망(DNN) 모델 디코더를 사용함과 동시에 단어를 벡터 형태로 변환(word to vector)하여 개체명 연결을 수행함으로써, 구별 대상 개체명의 수가 늘어나더라도 소요 시간의 증가 및 정확도의 하락을 효과적으로 억제할 수 있게 된다.More specifically, when performing object name concatenation using a support vector machine (SVM), logistic regression, or similarity analysis technique according to the related art, as the number of distinguished object names increases, Although the accuracy of time may decrease with increasing time, the entity name connection system 100 according to an embodiment of the present invention converts a word into a vector form while using a deep neural network (DNN) model decoder. By performing the object name concatenation by (word to vector), it is possible to effectively suppress the increase in the time required and the deterioration of accuracy even if the number of distinguished object names increases.

보다 구체적으로, 종래에는 각 단어에 대하여 개체 ID를 부여하기 위해 문맥 주변에서 각 개체를 잘 설명하는 단어의 존재 여부와 그 가중치 값을 사용하는 등의 기법을 사용하였으나, 이러한 경우 각 개체에 해당하는 단어가 없는 경우(Unseen word)에는 해당 개체에 대한 판단이 어려워지며, 이를 보완하기 위하여 무한정 해당 개체와 관련된 단어를 모으기도 어렵다는 문제가 따랐다. 더불어, 단순의 단어의 가중치에 대한 합을 이용하여 개체명 연결을 수행하는 경우 단어간 상관 관계나 의존 관계를 표현하는 것에도 한계가 있어 개체명 연결의 커버리지나 품질이 저하되는 문제가 나타날 수도 있었다.More specifically, conventionally, in order to give an individual ID to each word, a technique such as whether a word that describes each object well and a weight value thereof is used around the context is used. When there is no word (Unseen word), it is difficult to judge the object, and to compensate for this, it is difficult to collect words related to the object indefinitely. In addition, when the entity name linkage is performed by using the sum of the weights of simple words, there is a limit in expressing the correlation or dependency relationship between words, which may cause the coverage or quality of the entity name linkage to be deteriorated. .

이에 대하여 본 발명에서는 심층신경망(DNN) 모델을 도입하고, 상기 심층신경망(DNN) 모형의 학습 전에 단어-벡터 변환(word2vec) 방식으로 다량의 뉴스, 블로그 등을 학습하여, 다수의 단어에 대해 에너지 벡터 표현값을 얻음으로써, 단어가 모형 사전에 없는 경우(Unseen word) 등 판단이 어려운 케이스를 현저하게 줄일 수 있게 된다.In contrast, the present invention introduces a deep neural network (DNN) model, a large amount of news, blogs, etc. by learning a word-vector transformation (word2vec) before learning the deep neural network (DNN) model, energy for a number of words By obtaining vector representations, it is possible to significantly reduce cases that are difficult to judge, such as when words are not in the model dictionary (Unseen word).

또한, 본 발명의 일 실시예에 따른 개체명 연결 시스템(100)은 학습 말뭉치 자동 구축 모듈(1230)을 이용하여 심층신경망(DNN) 모델 디코더의 학습에 필요한 학습 말뭉치를 자동으로 생성할 수 있으며, 이에 따라 보다 높은 정확도를 가지는 심층신경망(DNN) 모델 디코더를 효과적으로 구축할 수 있게 된다.In addition, the entity name connection system 100 according to an embodiment of the present invention may automatically generate a learning corpus required for learning a deep neural network (DNN) model decoder by using the learning corpus automatic construction module 1230. Accordingly, it is possible to effectively build a deep neural network (DNN) model decoder with higher accuracy.

보다 구체적으로, 도 13에서는 본 발명의 일 실시예에 따른 학습 말뭉치 구축 모듈(1230)의 동작을 설명하고 있다. 도 13에서 볼 수 있는 바와 같이, 학습 말뭉치 구축 모듈(1230)은 위키 백과 등과 같은 미리 준비된 데이터 베이스로부터 서로 다른 의미로 사용된 다의어에 대응하는 키워드 등 메타 데이터를 파싱하게 된다(1310).More specifically, FIG. 13 illustrates the operation of the learning corpus building module 1230 according to an embodiment of the present invention. As shown in FIG. 13, the learning corpus building module 1230 parses meta data, such as keywords corresponding to a multiword used in different meanings, from a prepared database such as Wikipedia.

예를 들어, 도 13에서 볼 수 있는 바와 같이, 다의어 "여름"에 대한 메타 데이터 파싱을 통해 "상주상무프로축구단"의 "축구선수"인 "여름"과 "그룹 우주소녀"의 멤버로서 "가수"인 "여름" 등에 대한 메타 데이터를 얻을 수 있게 된다.For example, as can be seen in FIG. 13, as a member of "Summer" and "Group Space Girl" who are "Soccer Players" of the "Resident Business Professional Football Team" through parsing metadata for the term "Summer". Meta data about "summer", etc. can be obtained.

이어서, 학습 말뭉치 구축 모듈(1230)은 생성된 메타 데이터를 이용하여 규칙(Rule) 기반 질의(Query) 생성 등을 통해 각 개체(entity)에 대한 검색식 등을 생성하게 된다(1320).Subsequently, the learning corpus building module 1230 generates a search expression for each entity through rule generation, etc. using the generated metadata, in operation 1320.

예를 들어, 상기 규칙(Rule)으로서 성명과 직업, 성명과 소속단체 등의 적절한 규칙을 적용할 수 있으며, 이에 따라 "축구선수" "여름"에 대해서는 "여름, 광주FC, 축구선수, NOT(가수)" 등의 검색어를 포함하는 검색식을 생성할 수 있으며, "가수" "여름"에 대해서는 "여름, 우주소녀, 스타쉽엔터테인먼트, NOT(선수)" 등의 검색어를 포함하는 검색식을 생성할 수 있게 된다.For example, as the rule, appropriate rules such as name and occupation, name and affiliated organization can be applied, and accordingly, "Soccer player" and "summer" can be applied to "summer, Gwangju FC, soccer player, NOT ( Singer) ", and the like, and search terms including" singer "and" summer "include search terms such as" summer, space girl, starship entertainment, and NOT. " It becomes possible.

이에 따라, 상기 학습 말뭉치 구축 모듈(1230)은 생성된 각 검색식을 이용하여 웹, 뉴스, 블로그 등의 문서를 검색하여 "축구선수"인 "여름" 및 "가수"인 "여름" 등 각 다의어에 대한 학습 데이터를 생성할 수 있게 된다(1330).Accordingly, the learning corpus building module 1230 searches for documents such as web, news, blogs, and the like by using the generated search expressions, and the respective words such as "summer", "soccer player", and "summer", "singer". It is possible to generate training data for (1330).

이를 통해, 본 발명에 따른 학습 말뭉치 구축 모듈(1230)은 다수의 다의어에 대한 다량의 학습 데이터를 효과적으로 생성함으로써, 높은 정확도를 가지는 심층신경망(DNN) 모델 디코더를 효과적으로 구축할 수 있게 된다.Through this, the learning corpus building module 1230 according to the present invention effectively generates a large amount of training data for a plurality of multilingual words, thereby effectively constructing a deep neural network (DNN) model decoder with high accuracy.

나아가, 도 14에서는 본 발명의 일 실시예에 따른 개체명 연결 엔진(1410)의 구성을 보다 자세하게 설명하고 있다.14 illustrates a configuration of the entity name connection engine 1410 according to an embodiment of the present invention in more detail.

도 14에서 볼 수 있는 바와 같이, 본 발명의 일 실시예에 따른 개체명 연결 엔진(1410)은 토크나이저(Tokenizer)(1411), 심층신경망 모델(DNN model)(1412), 거리기반 단어-벡터 모델(Distance based word vector model)(1413), 후처리부(1414) 및 리소스부(1415)를 포함하여 구성될 수 있다.As can be seen in Figure 14, the entity name connection engine 1410 according to an embodiment of the present invention is a tokenizer (14), a deep neural network model (DNN model) 1412, distance-based word-vector A model may include a distance based word vector model 1413, a post processor 1414, and a resource unit 1415.

토크나이저(1411)에서는 주어진 텍스트를 분석하여 형태소 등으로 분류하게 된다.The tokenizer 1411 analyzes the given text and classifies it into a morpheme.

이어서, 심층신경망 모델(1412)에서는 분류된 형태소 등을 입력받아 상기 텍스트에서 사용된 다의어에 대한 개체명 연결을 수행하게 된다.Subsequently, the deep neural network model 1412 receives the classified morphemes and the like and performs entity name concatenation with respect to the multilingual term used in the text.

또한, 거리기반 단어-벡터 모델(1413)에서는 텍스트 내에서 제1 단어를 벡터로 변환함에 있어서, 텍스트에 포함되는 제2 단어 및 상기 제2 단어와의 거리를 고려하여 상기 제1 단어에 대한 벡터를 산출하게 된다.In addition, in the distance-based word-vector model 1413, when converting the first word into a vector in the text, the vector for the first word is considered in consideration of the second word included in the text and the distance from the second word. Will yield.

또한, 후처리부(1414)에서는 심층신경망 모델(1412) 및 거리기반 단어-벡터 모델(1413)에서 산출된 결과물에 대한 후처리를 수행하게 된다.In addition, the post processor 1414 performs the post processing on the result calculated by the deep neural network model 1412 and the distance-based word-vector model 1413.

본 발명의 일 실시예에 따른 개체명 연결 시스템(100)에서는 심층신경망(DNN) 모델(1412)로 분류하기 어려운 개체들을 기구축된 데이터베이스(1415) 등을 이용해 거리기반 단어-벡터 모델(1413) 등을 이용하여 개체명 연결을 수행할 수도 있다.In the entity name connection system 100 according to an exemplary embodiment of the present invention, a distance-based word-vector model 1413 may be classified by using an instrumented database 1415 or the like that are difficult to classify into a deep neural network (DNN) model 1412. You can also perform entity name concatenation using

보다 구체적으로, 도 15에서는 거리기반 단어-벡터 모델(Distance based word vector model)(1413) 및 후처리부(1414)의 동작을 보다 자세하게 설명하고 있다.More specifically, FIG. 15 illustrates the operations of the distance based word vector model 1413 and the post processor 1414 in more detail.

도 15에서 볼 수 있는 바와 같이, 본 발명의 일 실시예에 따른 거리기반 단어-벡터 모델(1413)에서는 주어진 텍스트 내의 개체명 연결 대상 단어에 대하여 주변 단어들과의 관계 및 문장 내에서의 거리를 고려하여 분석에 활용할 수 있다. 구체적으로, ‘김과장’이라는 드라마에 ‘정혜성’이라는 연기자가 출연하여 ‘홍가은’이라는 배역을 맡은 경우, ‘김과장’을 분석할 때 주변에 ‘정혜성’과 ‘홍가은’이라는 단어가 나타나는 점을 이용하여 회사에서의 직급을 나타내는 ‘김과장’ 이 아닌 드라마 ‘김과장’임을 알 수 있다. As can be seen in FIG. 15, in the distance-based word-vector model 1413 according to an embodiment of the present invention, a relationship between neighboring words and a distance in a sentence with respect to an object name connection target word in a given text is shown. It can be considered and used for analysis. Specifically, when the actor 'Hye-sung' appeared in the drama 'Kim, Chief' and played the role of 'Hong-ga-eun', the words 'jeong-hye-sung' and 'hong-ga-eun' appeared when analyzing 'Kim-jang-jang'. By using the dots, we can see that it is the drama 'Kim Manager' rather than 'Kim Manager' who indicates the position in the company.

이때 각 단어들간의 거리는 가중치로 사용될 수 있다. 마찬가지로, ‘정혜성’을 분석할 경우, 앞의 ‘김과장’ 과 뒤의 ‘홍가은’을 고려하여 ‘정혜성’을 연기자 정혜성으로 결정할 수 있다. 이러한 방법을 이용하여, ‘홍가은’ 이라는 단어가 등록되거나 학습되지 않은 경우라도 ‘홍가은’을 캐릭터로 태깅할 수 있다.In this case, the distance between each word may be used as a weight. Similarly, if you analyze Chung Hye-sung, you can decide Jeong Hye-sung as the actor Jung Hye-sung, taking into account Kim and Jang Hong-eun. Using this method, even if the word 'honggaeun' is not registered or learned, it is possible to tag 'honggaeun' as a character.

보다 구체적인 예를 들어, 도 15에서 볼 수 있는 바와 같이, 주어진 텍스트(1510)에서 "정해성"이라는 다의어에 대한 개체명 연결을 수행하는 경우, 거리기반 단어-벡터 모델은 기구축된 데이터베이스(1520) 등을 이용하여 드라마 "김과장"에 대응하는 키워드들(도 15에서 "김과장", "정해성", "홍가은" 등)을 산출할 수 있고, 텍스트(1510)에서 개체명 연결 대상 단어인 "김과장"을 기준으로 "정해성", "홍가은" 등의 거리를 고려해 가중치를 부여하여 상기 "김과장"이 회사에서의 직급을 나타내는 "김과장"이 아닌 드라마 "김과장" 임을 판단할 수 있다.For a more specific example, as can be seen in FIG. 15, when performing entity name concatenation for a synonym of "deterministic" in a given text 1510, the distance-based word-vector model is an instrumented database 1520. Keywords (eg, "Kim", "Jeong Hae-sung", "Hong-ga-eun", etc. in FIG. 15) corresponding to the drama "Kim, Chief" can be calculated, and "Kim, Chief," which is the object name concatenated word in the text 1510. The weighting may be given in consideration of distances such as "Jeong Hae Sung" and "Hong Ga Eun" based on "based on" to determine that the "Kim Kim" is a drama "Kim Manager" rather than "Kim Manager" indicating the position in the company.

나아가, 텍스트(1510)에 포함된 다른 다의어인 "원피스"에 대한 개체명 연결을 수행함에 있어서는, 상기 심층신경망 모델(1530)을 이용하여 개체명 연결을 수행할 수도 있는 바, 개체명 연결 대상 단어에 따른 거리기반 단어-벡터 모델(1413) 및 심층신경망 모델(1530)의 정확도나, 개체명 연결에 소요되는 시간 및 전산 자원 등을 고려하여 거리기반 단어-벡터 모델(1413) 및 심층신경망 모델(1530)을 선택적으로 적용할 수도 있으며, 필요에 따라서는 거리기반 단어-벡터 모델(1413) 및 심층신경망 모델(1530)의 결과치를 모두 고려하여 개체명 연결을 수행함으로써 그 정확도를 더욱 개선하는 것도 가능하다.Furthermore, in performing the entity name link to another multi-word “one piece” included in the text 1510, the entity name link may be performed using the deep neural network model 1530. In consideration of the accuracy of the distance-based word-vector model 1413 and the deep neural network model 1530, the time required for the connection of individual names, and the computational resources, the distance-based word-vector model 1413 and the deep neural network model ( 1530 may be selectively applied, and if necessary, the accuracy of the name connection may be further improved by taking into account the results of the distance-based word-vector model 1413 and the deep neural network model 1530. Do.

이어서, 후처리부(1414)에서는 거리기반 단어-벡터 모델(1413) 및 신경망 모델(1530)의 결과치 중 하나를 고려하거나, 둘을 모두 산출하여 비교하는 등의 방법으로(1540), 다의어에 대한 개체명 연결을 수행하게 된다(1550).Subsequently, the post-processing unit 1414 considers one of the results of the distance-based word-vector model 1413 and the neural network model 1530, calculates and compares both, and the like (1540). The connection is performed (1550).

이에 따라, 본 발명의 일 실시예에 따른 개체명 연결 시스템(100)에서는 "CPU" 기반으로도 1코어당 수백TPS의 성능을 낼 수 있고, 수천만개 수준의 개체(entity)에 대한 태깅도 가능하며, 이때 F1 결과치도 88% 이상의 성능을 가질 수 있다.Accordingly, in the entity name connection system 100 according to an embodiment of the present invention, the performance of hundreds of TPSs per core can be achieved even on the basis of "CPU", and tagging of tens of millions of entities is possible. In this case, the F1 result may have a performance of 88% or more.

또한, 본 발명의 또 다른 측면에 따른 컴퓨터 프로그램은 앞서 살핀 개체명 연결 방법의 각 단계를 컴퓨터에서 실행시키기 위하여 컴퓨터로 판독 가능한 매체에 저장된 컴퓨터 프로그램인 것을 특징으로 한다. 상기 컴퓨터 프로그램은 컴파일러에 의해 만들어지는 기계어 코드를 포함하는 컴퓨터 프로그램뿐만 아니라, 인터프리터 등을 사용해서 컴퓨터에서 실행될 수 있는 고급 언어 코드를 포함하는 컴퓨터 프로그램일 수도 있다. 이때, 상기 컴퓨터로서는 퍼스널 컴퓨터(PC)나 노트북 컴퓨터 등에 한정되지 아니하며, 서버, 스마트폰, 태블릿 PC, PDA, 휴대전화 등 중앙처리장치(CPU)를 구비하여 컴퓨터 프로그램을 실행할 수 있는 일체의 정보처리 장치를 포함한다.In addition, the computer program according to another aspect of the present invention is characterized in that the computer program stored in a computer readable medium for executing each step of the method of linking the salping individual name in the computer. The computer program may be a computer program including not only a computer program including machine code generated by a compiler, but also a high-level language code executable on a computer using an interpreter or the like. In this case, the computer is not limited to a personal computer (PC) or a notebook computer, but is provided with a central processing unit (CPU) such as a server, a smart phone, a tablet PC, a PDA, a mobile phone, and any information processing capable of executing a computer program. Device.

또한, 상기 컴퓨터로 판독 가능한 매체는 컴퓨터로 실행 가능한 프로그램을 계속 저장하거나, 실행 또는 다운로드를 위해 임시 저장하는 것일 수도 있다. 또한, 매체는 단일 또는 수개 하드웨어가 결합된 형태의 다양한 기록수단 또는 저장수단일 수 있는데, 어떤 컴퓨터 시스템에 직접 접속되는 매체에 한정되지 않고, 네트워크 상에 분산 존재하는 것일 수도 있다. 매체의 예시로는, 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체, CD-ROM 및 DVD와 같은 광기록 매체, 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical medium), 및 ROM, RAM, 플래시 메모리 등을 포함하여 프로그램 명령어가 저장되도록 구성된 것이 있을 수 있다. 또한, 다른 매체의 예시로, 애플리케이션을 유통하는 앱 스토어나 기타 다양한 소프트웨어를 공급 내지 유통하는 사이트, 서버 등에서 관리하는 기록매체 내지 저장매체도 들 수 있다.In addition, the computer-readable medium may be to continuously store a computer-executable program, or to temporarily store for execution or download. In addition, the medium may be a variety of recording means or storage means in the form of a single or several hardware combined, not limited to a medium directly connected to any computer system, it may be distributed on the network. Examples of the medium include magnetic media such as hard disks, floppy disks and magnetic tape, optical recording media such as CD-ROMs and DVDs, magneto-optical media such as floptical disks, And ROM, RAM, flash memory, and the like, configured to store program instructions. In addition, examples of another medium may include a recording medium or a storage medium managed by an app store that distributes an application, a site that supplies or distributes various software, a server, or the like.

또한, 도 16에서는 본 발명의 일 실시예에 따른 개체명 연결 시스템(100)의 구성도를 예시하고 있다.16 illustrates a configuration diagram of the entity name connection system 100 according to an embodiment of the present invention.

도 16에서 볼 수 있는 바와 같이 본 발명의 일 실시예에 따른 개체명 연결 시스템(100)은 단어-벡터 변환부(110), 신경망 입력부(120) 및 개체명 연결부(130)를 포함하여 구성될 수 있다.As can be seen in FIG. 16, the entity name connection system 100 according to an embodiment of the present invention includes a word-vector converter 110, a neural network input unit 120, and an entity name connection unit 130. Can be.

아래에서는 본 발명의 일 실시예에 따른 개체명 연결 시스템(100)을 각 구성요소 별로 나누어 살핀다. 본 발명의 일 실시예에 따른 개체명 연결 시스템(100)에 대한 보다 자세한 내용은 앞서 설명한 본 발명의 일 실시예에 따른 개체명 연결 방법에 대한 설명으로부터 유추될 수 있는 바, 아래에서 보다 자세한 설명은 생략한다.In the following, the entity name connection system 100 according to an embodiment of the present invention is divided and searched for each component. For more information on the entity name connection system 100 according to an embodiment of the present invention can be inferred from the description of the entity name connection method according to an embodiment of the present invention described above, it will be described in more detail below Is omitted.

먼저, 단어-벡터 변환부(110)에서는 텍스트에서 다의어를 포함하는 복수의 단어를 각 대응하는 복수의 벡터로 변환하게 된다.First, the word-vector converting unit 110 converts a plurality of words including multiple words in text into a plurality of corresponding vectors.

이어서, 신경망 입력부(120)에서는 상기 복수의 벡터를 은닉층을 구비하는 심층신경망에 입력하게 된다.Next, the neural network input unit 120 inputs the plurality of vectors into a deep neural network having a hidden layer.

마지막으로, 개체명 연결부(130)에서는 심층신경망의 출력값을 이용하여 상기 다의어에 대한 개체명 연결을 수행하게 된다.Finally, the entity name connection unit 130 performs the entity name connection to the multilingual using the output value of the deep neural network.

이때, 심층신경망은 상기 다의어가 서로 다른 의미로 사용된 복수의 텍스트군을 이용하여 학습된 신경망일 수 있다. In this case, the deep neural network may be a neural network learned by using a plurality of text groups in which the multiword is used in a different meaning.

나아가, 본 발명의 일 실시예에 따른 개체명 연결 시스템(100)에서는, 변환된 벡터 M개를 복수개 단위로 묶어 연산하여 N개의 벡터로 산출(여기서, M>N)하여 처리할 수 있다.Furthermore, in the entity name connection system 100 according to an embodiment of the present invention, the transformed M vectors may be combined into a plurality of units, calculated as N vectors, and M (N> N) may be processed.

이상의 설명은 본 발명의 기술 사상을 예시적으로 설명한 것에 불과한 것으로서, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 다양한 수정 및 변형이 가능할 것이다. 따라서 본 발명에 기재된 실시예들은 본 발명의 기술 사상을 한정하기 위한 것이 아니라 설명하기 위한 것이고, 이러한 실시예에 한정되는 것은 아니다. 본 발명의 보호 범위는 아래의 청구범위에 의해서 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술 사상은 본 발명의 권리범위에 포함되는 것으로 해석되어야 할 것이다.The above description is merely illustrative of the technical idea of the present invention, and those skilled in the art to which the present invention pertains may make various modifications and changes without departing from the essential characteristics of the present invention. Therefore, the embodiments described in the present invention are not intended to limit the technical spirit of the present invention but to describe the present invention, and are not limited to these embodiments. The protection scope of the present invention should be interpreted by the following claims, and all technical ideas within the scope equivalent thereto should be construed as being included in the scope of the present invention.

10a, 10b : 단말
20 : 통신 네트워크
30 : 데이터베이스
100 : 개체명 연결 시스템
110 : 단어-벡터 변환부
120 : 신경망 입력부
130 : 개체명 연결부
10a, 10b: terminal
20: communication network
30: database
100: object name connection system
110: word-vector converter
120: neural network input unit
130: object name connection

Claims (12)

텍스트에 포함되는 다의어에 대하여 개체명 연결을 수행하는 방법에 있어서,
개체명 연결 시스템이, 상기 텍스트에서 상기 다의어를 포함하는 복수의 단어를 각 대응하는 복수의 벡터로 변환하는 단어-벡터 변환 단계;
상기 복수의 벡터를 은닉층을 구비하는 심층신경망에 입력하는 신경망 입력 단계; 및
상기 심층신경망의 출력값을 이용하여 상기 다의어에 대한 개체명 연결을 수행하는 개체명 연결 단계;를 포함하며,
상기 단어-벡터 변환 단계에서는,
상기 텍스트 내에서 상기 다의어를 기준으로 미리 정해진 거리 이내의 복수의 단어를 선정한 후, 상기 복수의 단어에 대한 각 벡터를 산출하는 것을 특징으로 하는 개체명 연결 방법.
In the method of performing entity name concatenation for a multiword contained in text,
A word-vector conversion step of converting, by the entity name concatenation system, a plurality of words in the text including the multiword into respective corresponding plurality of vectors;
A neural network input step of inputting the plurality of vectors into a deep neural network having a hidden layer; And
And an entity name concatenation step of performing entity name concatenation with respect to the multilingual word using an output value of the deep neural network.
In the word-vector conversion step,
And selecting a plurality of words within a predetermined distance based on the multiword within the text, and calculating each vector for the plurality of words.
삭제delete 텍스트에 포함되는 다의어에 대하여 개체명 연결을 수행하는 방법에 있어서,
개체명 연결 시스템이, 상기 텍스트에서 상기 다의어를 포함하는 복수의 단어를 각 대응하는 복수의 벡터로 변환하는 단어-벡터 변환 단계;
상기 복수의 벡터를 은닉층을 구비하는 심층신경망에 입력하는 신경망 입력 단계; 및
상기 심층신경망의 출력값을 이용하여 상기 다의어에 대한 개체명 연결을 수행하는 개체명 연결 단계;를 포함하며,
상기 변환된 벡터 M개를 복수개 단위로 묶어 연산하여 N개의 벡터로 산출(여기서, M>N)하여 처리하는 것을 특징으로 하는 개체명 연결 방법.
In the method of performing entity name concatenation for a multiword contained in text,
A word-vector conversion step of converting, by the entity name concatenation system, a plurality of words in the text including the multiword into respective corresponding plurality of vectors;
A neural network input step of inputting the plurality of vectors into a deep neural network having a hidden layer; And
And an entity name concatenation step of performing entity name concatenation with respect to the multilingual word using an output value of the deep neural network.
And converting the transformed M vectors into a plurality of units, calculating them as N vectors (where M > N), and processing them.
텍스트에 포함되는 다의어에 대하여 개체명 연결을 수행하는 방법에 있어서,
개체명 연결 시스템이, 상기 텍스트에서 상기 다의어를 포함하는 복수의 단어를 각 대응하는 복수의 벡터로 변환하는 단어-벡터 변환 단계;
상기 복수의 벡터를 은닉층을 구비하는 심층신경망에 입력하는 신경망 입력 단계; 및
상기 심층신경망의 출력값을 이용하여 상기 다의어에 대한 개체명 연결을 수행하는 개체명 연결 단계;를 포함하며,
상기 심층신경망을 상기 다의어가 서로 다른 의미로 사용된 복수의 텍스트군을 이용하여 학습시키는 심층신경망 학습 단계를 더 포함하는 것을 특징으로 하는 개체명 연결 방법.
In the method of performing entity name concatenation for a multiword contained in text,
A word-vector conversion step of converting, by the entity name concatenation system, a plurality of words in the text including the multiword into respective corresponding plurality of vectors;
A neural network input step of inputting the plurality of vectors into a deep neural network having a hidden layer; And
And an entity name concatenation step of performing entity name concatenation with respect to the multilingual word using an output value of the deep neural network.
And a deep neural network learning step of learning the deep neural network using a plurality of text groups in which the multilingual meaning is different from each other.
제4항에 있어서,
상기 심층신경망 학습 단계는,
기구축된 데이터베이스를 이용하여 상기 다의어의 복수의 의미에 대응하는 각 키워드를 산출하는 단계;
상기 키워드를 이용하여 상기 다의어가 상기 각 복수의 의미로 사용된 텍스트들을 검출하는 단계; 및
상기 검출된 텍스트들을 이용하여 상기 심층신경망을 학습하는 단계;를 포함하는 것을 특징으로 하는 개체명 연결 방법.
The method of claim 4, wherein
The deep neural network learning step,
Calculating each keyword corresponding to a plurality of meanings of the multiword by using an instrumented database;
Detecting texts in which the multilingual term is used for each of the plurality of meanings using the keyword; And
Learning the deep neural network using the detected texts.
제4항에 있어서,
상기 복수의 텍스트군에서 상기 심층신경망을 학습시킬 텍스트를 선택함에 있어서,
상기 각 텍스트군에서의 개체명 연결 결과를 고려하여 상기 각 텍스트군에서 학습시킬 텍스트로 선택되는 비율을 조절하는 것을 특징으로 하는 개체명 연결 방법.
The method of claim 4, wherein
In selecting the text to learn the deep neural network from the plurality of text groups,
And a ratio of selecting a text to be learned from each text group in consideration of a result of the entity name linking in each text group.
제4항에 있어서,
상기 심층신경망을 학습시킴에 있어서,
상기 다의어의 서로 다른 의미에 대응되는 출력층의 복수의 노드 간의 출력치를 비교하여 손실 전파(loss propagation) 값을 조절하는 것을 특징으로 하는 개체명 연결 방법.
The method of claim 4, wherein
In learning the deep neural network,
And a loss propagation value is adjusted by comparing output values between a plurality of nodes of an output layer corresponding to different meanings of the multiword.
제4항에 있어서,
상기 심층신경망 학습 단계는,
상기 다의어 중 일반 명사, 동사 또는 형용사에 해당하는 일반 개체(common sense entity)에 대한 학습 데이터를 이용하여 상기 심층신경망을 학습시키는 단계를 포함하는 것을 특징으로 하는 개체명 연결 방법.
The method of claim 4, wherein
The deep neural network learning step,
And training the deep neural network using training data on a common sense entity corresponding to a common noun, a verb, or an adjective.
텍스트에 포함되는 다의어에 대하여 개체명 연결을 수행하는 방법에 있어서,
개체명 연결 시스템이, 상기 텍스트에서 상기 다의어를 포함하는 복수의 단어를 각 대응하는 복수의 벡터로 변환하는 단어-벡터 변환 단계;
상기 복수의 벡터를 은닉층을 구비하는 심층신경망에 입력하는 신경망 입력 단계; 및
상기 심층신경망의 출력값을 이용하여 상기 다의어에 대한 개체명 연결을 수행하는 개체명 연결 단계;를 포함하며,
상기 텍스트 내에 위치하는 제1 단어에 대하여,
상기 텍스트에 포함되는 제2 단어와의 상관 관계 및 상기 제1 단어와 상기 제2 단어 간의 거리를 고려하여 상기 제1 단어에 대한 개체명 연결을 수행하는 것을 특징으로 하는 개체명 연결 방법.
In the method of performing entity name concatenation for a multiword contained in text,
A word-vector conversion step of converting, by the entity name concatenation system, a plurality of words in the text including the multiword into respective corresponding plurality of vectors;
A neural network input step of inputting the plurality of vectors into a deep neural network having a hidden layer; And
And an entity name concatenation step of performing entity name concatenation with respect to the multilingual word using an output value of the deep neural network.
For a first word located within the text,
And the entity name linkage is performed on the first word in consideration of a correlation between the second word included in the text and a distance between the first word and the second word.
제1항에 있어서,
텍스트에 포함되는 다의어에 대하여 개체명 연결을 수행하는 방법에 있어서,
개체명 연결 시스템이, 상기 텍스트에서 상기 다의어를 포함하는 복수의 단어를 각 대응하는 복수의 벡터로 변환하는 단어-벡터 변환 단계;
상기 복수의 벡터를 은닉층을 구비하는 심층신경망에 입력하는 신경망 입력 단계; 및
상기 심층신경망의 출력값을 이용하여 상기 다의어에 대한 개체명 연결을 수행하는 개체명 연결 단계;를 포함하며,
상기 심층신경망의 출력층은,
서로 다른 의미로 사용된 각 다의어 별로 구별되는 복수의 노드를 포함하는 구조를 가지는 것을 특징으로 하는 개체명 연결 방법.
The method of claim 1,
In the method of performing entity name concatenation for a multiword contained in text,
A word-vector conversion step of converting, by the entity name concatenation system, a plurality of words in the text including the multiword into respective corresponding plurality of vectors;
A neural network input step of inputting the plurality of vectors into a deep neural network having a hidden layer; And
And an entity name concatenation step of performing entity name concatenation with respect to the multilingual word using an output value of the deep neural network.
The output layer of the deep neural network,
A method of concatenating entity names, characterized in that it has a structure including a plurality of nodes distinguished by each synonym used in different meanings.
컴퓨터에서 제1항, 제3항 내지 제10항 중 어느 한 항에 기재된 각 단계를 실행시키기 위한 컴퓨터로 판독 가능한 매체에 저장된 컴퓨터 프로그램.A computer program stored in a computer readable medium for executing each step according to any one of claims 1 to 10 in a computer. 텍스트에 포함되는 다의어에 대하여 개체명 연결을 수행하는 개체명 연결 시스템에 있어서,
상기 텍스트에서 상기 다의어를 포함하는 복수의 단어를 각 대응하는 복수의 벡터로 변환하는 단어-벡터 변환부;
상기 복수의 벡터를 은닉층을 구비하는 심층신경망에 입력하는 신경망 입력부; 및
상기 심층신경망의 출력값을 이용하여 상기 다의어에 대한 개체명 연결을 수행하는 개체명 연결부;를 포함하며,
상기 심층신경망의 출력층은,
서로 다른 의미로 사용된 각 다의어 별로 구별되는 복수의 노드를 포함하는 구조를 가지는 것을 특징으로 하는 개체명 연결 시스템.
In the entity name concatenation system for performing entity name concatenation for a multiword contained in text,
A word-vector converting unit converting a plurality of words including the multiword in the text into a plurality of corresponding vectors;
A neural network input unit for inputting the plurality of vectors into a deep neural network having a hidden layer; And
And an entity name connection unit configured to perform entity name connection to the multilingual word using an output value of the deep neural network.
The output layer of the deep neural network,
An entity name connection system, characterized in that it has a structure including a plurality of nodes which are distinguished by each lexical term used in different meanings.
KR1020170146715A 2017-04-06 2017-11-06 Method, apparauts and system for named entity linking and computer program thereof KR102053419B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020190158194A KR102315181B1 (en) 2017-04-06 2019-12-02 Method, apparauts and system for named entity linking and computer program thereof

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR20170045002 2017-04-06
KR1020170045002 2017-04-06

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020190158194A Division KR102315181B1 (en) 2017-04-06 2019-12-02 Method, apparauts and system for named entity linking and computer program thereof

Publications (2)

Publication Number Publication Date
KR20180113444A KR20180113444A (en) 2018-10-16
KR102053419B1 true KR102053419B1 (en) 2019-12-09

Family

ID=64132818

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1020170146715A KR102053419B1 (en) 2017-04-06 2017-11-06 Method, apparauts and system for named entity linking and computer program thereof
KR1020190158194A KR102315181B1 (en) 2017-04-06 2019-12-02 Method, apparauts and system for named entity linking and computer program thereof

Family Applications After (1)

Application Number Title Priority Date Filing Date
KR1020190158194A KR102315181B1 (en) 2017-04-06 2019-12-02 Method, apparauts and system for named entity linking and computer program thereof

Country Status (1)

Country Link
KR (2) KR102053419B1 (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102346244B1 (en) * 2018-11-13 2022-01-04 울산과학기술원 Neural network-based auto-slot filling method and apparatus
CN112560466B (en) * 2020-12-24 2023-07-25 北京百度网讯科技有限公司 Link entity association method, device, electronic equipment and storage medium
CN113297852B (en) * 2021-07-26 2021-11-12 北京惠每云科技有限公司 Medical entity word recognition method and device

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101508070B1 (en) * 2013-12-17 2015-04-07 울산대학교 산학협력단 Method for word sense diambiguration of polysemy predicates using UWordMap
US20150363688A1 (en) * 2014-06-13 2015-12-17 Microsoft Corporation Modeling interestingness with deep neural networks

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4227797B2 (en) 2002-05-27 2009-02-18 株式会社リコー Synonym search device, synonym search method using the same, synonym search program, and storage medium
US8112402B2 (en) * 2007-02-26 2012-02-07 Microsoft Corporation Automatic disambiguation based on a reference resource
KR100884200B1 (en) * 2007-06-29 2009-02-18 이화여자대학교 산학협력단 System for management contents based on meaning identification of tag and method thereof
KR100989581B1 (en) * 2010-04-28 2010-10-25 한국과학기술정보연구원 Apparatus and method for building resource description framework network using ontology schema merged named entity database and mining rule
KR101255957B1 (en) 2011-12-09 2013-04-24 포항공과대학교 산학협력단 Method and apparatus for tagging named entity
KR101562279B1 (en) * 2013-09-16 2015-10-30 고려대학교 산학협력단 Mobile device based on inference of user intent and content recommending method using the same
KR101727139B1 (en) * 2013-10-31 2017-04-14 한국전자통신연구원 Method for automactically constructing corpus, method and apparatus for recognizing named entity using the same
KR101627428B1 (en) * 2014-11-17 2016-06-03 포항공과대학교 산학협력단 Method for establishing syntactic analysis model using deep learning and apparatus for perforing the method

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101508070B1 (en) * 2013-12-17 2015-04-07 울산대학교 산학협력단 Method for word sense diambiguration of polysemy predicates using UWordMap
US20150363688A1 (en) * 2014-06-13 2015-12-17 Microsoft Corporation Modeling interestingness with deep neural networks

Also Published As

Publication number Publication date
KR20190138623A (en) 2019-12-13
KR20180113444A (en) 2018-10-16
KR102315181B1 (en) 2021-10-21

Similar Documents

Publication Publication Date Title
Bhatia et al. Automatic labelling of topics with neural embeddings
CN107436875B (en) Text classification method and device
WO2018049960A1 (en) Method and apparatus for matching resource for text information
Mairesse et al. Stochastic language generation in dialogue using factored language models
US10282419B2 (en) Multi-domain natural language processing architecture
US9336298B2 (en) Dialog-enhanced contextual search query analysis
US7519588B2 (en) Keyword characterization and application
US9390161B2 (en) Methods and systems for extracting keyphrases from natural text for search engine indexing
US20130060769A1 (en) System and method for identifying social media interactions
US8731930B2 (en) Contextual voice query dilation to improve spoken web searching
Wu et al. Infusing finetuning with semantic dependencies
JP2010250814A (en) Part-of-speech tagging system, training device and method of part-of-speech tagging model
KR102315181B1 (en) Method, apparauts and system for named entity linking and computer program thereof
US10242033B2 (en) Extrapolative search techniques
CN107885717B (en) Keyword extraction method and device
Cordobés et al. Graph-based techniques for topic classification of tweets in Spanish
Vedula et al. Towards open intent discovery for conversational text
US20090327877A1 (en) System and method for disambiguating text labeling content objects
Vij et al. Fuzzy logic for inculcating significance of semantic relations in word sense disambiguation using a WordNet graph
US20210279269A1 (en) Content Fragments Aligned to Content Criteria
Zhang et al. SKG-Learning: A deep learning model for sentiment knowledge graph construction in social networks
Gupta et al. Text analysis and information retrieval of text data
CN109977294B (en) Information/query processing device, query processing/text query method, and storage medium
Celikyilmaz et al. An empirical investigation of word class-based features for natural language understanding
CN115062135B (en) Patent screening method and electronic equipment

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