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 PDFInfo
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 35
- 238000004590 computer program Methods 0.000 title claims abstract description 16
- 239000013598 vector Substances 0.000 claims abstract description 80
- 238000013528 artificial neural network Methods 0.000 claims abstract description 72
- 238000006243 chemical reaction Methods 0.000 claims abstract description 11
- 238000012549 training Methods 0.000 claims description 5
- 238000012545 processing Methods 0.000 claims description 4
- 230000006870 function Effects 0.000 description 8
- 238000003062 neural network model Methods 0.000 description 8
- 238000010586 diagram Methods 0.000 description 6
- 238000004891 communication Methods 0.000 description 5
- 238000005070 sampling Methods 0.000 description 5
- 238000012706 support-vector machine Methods 0.000 description 4
- 230000007423 decrease Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 230000014509 gene expression Effects 0.000 description 3
- 238000012805 post-processing Methods 0.000 description 3
- 241000255777 Lepidoptera Species 0.000 description 2
- 241001465754 Metazoa Species 0.000 description 2
- 230000006866 deterioration Effects 0.000 description 2
- 238000007477 logistic regression Methods 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 241000239290 Araneae Species 0.000 description 1
- 241000238421 Arthropoda Species 0.000 description 1
- 108010052919 Hydroxyethylthiazole kinase Proteins 0.000 description 1
- 108010027436 Hydroxymethylpyrimidine kinase Proteins 0.000 description 1
- 241000556720 Manga Species 0.000 description 1
- 229920006465 Styrenic thermoplastic elastomer Polymers 0.000 description 1
- 230000004913 activation Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 210000002569 neuron Anatomy 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 210000003101 oviduct Anatomy 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 229920006348 thermoplastic styrenic block copolymer Polymers 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/279—Recognition of textual entities
- G06F40/289—Phrasal analysis, e.g. finite state techniques or chunking
- G06F40/295—Named entity recognition
-
- G06F17/278—
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/22—Indexing; Data structures therefor; Storage structures
- G06F16/2228—Indexing structures
- G06F16/2237—Vectors, bitmaps or matrices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/3331—Query processing
- G06F16/334—Query execution
- G06F16/3347—Query execution using vector based model
-
- G06F17/2795—
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/237—Lexical tools
- G06F40/247—Thesauruses; Synonyms
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/0464—Convolutional networks [CNN, ConvNet]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning 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
본 발명은 개체명 연결 방법, 장치, 시스템 및 컴퓨터 프로그램에 관한 것으로서, 보다 구체적으로는 텍스트 내에 위치하는 다의어에 대한 개체명 연결을 수행하는 방법, 장치, 시스템 및 컴퓨터 프로그램에 관한 것이다.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.
본 발명은 상기와 같은 종래 기술의 문제점을 해결하기 위해 창안된 것으로, 텍스트 내에 위치하는 다의어에 대하여 정확한 개체명 연결을 수행할 수 있으며, 나아가 전산 자원을 보다 효율적으로 사용하여 개체명 연결을 수행할 수 있는 개체명 연결 방법, 장치, 시스템 및 컴퓨터 프로그램을 제공하는 것을 목적으로 한다.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
보다 구체적인 예를 들어, 데이터베이스(30)에 저장되어 있는 특정 전자 문서에, 도 2에서 볼 수 있는 바와 같이 “오늘 딸과 매장에 가서 ‘원피스’를 골랐다”라는 문장이 포함되어 있는 경우, 상기 ‘원피스’라는 단어는 그 쓰임새에 따라서 만화의 제목인 ‘원피스’일 수도 있으며, 의류의 한 종류인 ‘원피스’일 수도 있다. 이에 대하여, 본 발명의 일 실시예에 따른 개체명 연결 시스템(100)에서는 상기 문장에서 상기 ‘원피스’가 만화를 의미하는지 또는 의류를 의미하는지를 판단하여, 상기 문장의 다의어(‘원피스’)에 대한 개체명 연결을 수행하게 된다. 이에 따라, 상기 문장의 ‘원피스’에 ‘원피스_의류’ 등과 같이 개체명을 연결하고 나아가 이를 저장할 수 있다.More specifically, for example, when a specific electronic document stored in the
또한, 본 발명의 일 실시예에 따른 개체명 연결 시스템(100)에서는 상기 개체명 연결 결과를 반영하여 사용자들에게 서비스를 제공할 수 있게 된다. 보다 구체적인 예를 들어, 도 3에서 볼 수 있는 바와 같이, 단말(10a)의 사용자가 만화 ‘원피스’에 대한 검색을 수행하고자 하는 경우(예를 들어, 각 검색 서비스에서 지원하는 검색어 형식에 따라 다의어 중 특정 의미의 검색어를 특정하여 입력하는 경우(원피스(만화) 또는 원피스(의류)과 같은 형식으로 입력하는 경우(도 3의 310)), 본 발명의 일 실시예에 따른 개체명 연결 시스템(100)에서는 다의적 의미를 가지는 검색어의 의미를 고려한 검색 결과를 제공(도 3의 320)함으로써, 사용자가 보다 편리하게 자신이 원하는 검색 결과를 얻을 수 있도록 도울 수 있게 된다.In addition, the entity
또한, 도 1을 참조하여 본 발명의 일 실시예에 따른 개체명 연결 시스템(100) 및 관련된 구성들에 대하여 보다 자세하게 살펴보면, 본 발명의 일 실시예에 따른 개체명 연결 시스템(100)은 하나 이상의 서버를 포함하여 구성될 수 있으며, 이외에도 개체명 연결을 수행하기 위한 전용 하드웨어 등을 이용하여 구성되거나, 하나 혹은 둘 이상의 단말 장치가 연동되어 구성되는 등 다양한 방식으로 구현될 수 있다. In addition, referring to FIG. 1, in more detail with respect to the entity
또한, 단말(10a, 10b)로서는 스마트폰, 태블릿 PC, PDA, 휴대전화 등 다양한 휴대 단말기가 사용될 수 있고, 그외에도 퍼스널 컴퓨터(PC), 노트북 PC 등 다양한 단말들이 채택될 수도 있다.In addition, as the
또한, 단말(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
또한, 본 발명의 일 실시예에 따른 개체명 연결 시스템(100)의 동작을 보다 구체적인 예를 들어 설명하면, 텍스트에 "지민"이라는 다의어가 포함되어 있을 경우, 상기 텍스트에 포함되어 있는 "지민"이라는 단어는 그 쓰임새에 따라서 "그룹 AOA"의 "지민"일 수도 있고, "그룹 방탄소년단"의 "지민"일 수도 있으며, 또는 다른 "지민"일 수도 있다. 또한, 텍스트에 "원피스"라는 다의어가 포함되어 있을 경우에도, 상기 "원피스"는 그 쓰임새에 따라 만화의 제목인 '원피스'일 수도 있으며, 의류의 한 종류인 '원피스'일 수도 있다. 이에 대하여, 본 발명의 일 실시예에 따른 개체명 연결 시스템(100)에서는 주어진 텍스트에서 사용된 "지민"이 어떤 사람을 의미하는지, 주어진 텍스트의 "원피스"가 만화를 의미하는지 또는 의류를 의미하는지를 판단하여, 상기 텍스트에서 사용된 다의어에 대한 개체명 연결을 수행하게 된다.In addition, when the operation of the entity
이에 따라, 본 발명의 일 실시예에 따른 개체명 연결 시스템(100)에서는 주어진 텍스트의 "지민", "원피스" 등의 다의어에 "지민_가수AOA", "원피스_만화" 등과 같이 개체명을 연결하여 저장할 수 있으며, 나아가 상기 개체명 연결 결과를 반영하여 사용자들에게 검색 서비스 등 다양한 서비스를 제공할 수 있게 된다. Accordingly, in the entity
나아가, 본 발명의 일 실시예에 따른 개체명 연결 시스템(100)에서는 사용자가 다의어를 구분하여 입력할 수 있도록 다의어 목록을 제공하고 사용자가 선택할 수 있도록 하는 인터페이스를 제공할 수도 있다. 예를 들어, 도 4에서 볼 수 있는 바와 같이, 사용자가 다의어 "지민" 이나 "원피스"를 입력하면, 상기 다의어 "지민"이나 "원피스"를 그 의미를 구분하여 목록을 제공한 후 사용자가 선택할 수 있도록 할 수 있다(도 4의 410, 420).Furthermore, the entity
또 다른 예로서, 사용자가 만화 '원피스'에 대한 검색을 수행하고자 하는 경우, 각 검색 서비스에서 지원하는 검색어 형식에 따라 다의어 중 특정 의미의 검색어를 특정하여 입력할 수 있도록 함으로써(예를 들어, 원피스(만화) 또는 원피스(의류)과 같은 형식으로 입력), 본 발명의 일 실시예에 따른 개체명 연결 시스템(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
이에 따라, 본 발명의 일 실시예에 따른 개체명 연결 시스템(100)에서는, 도 5에서 볼 수 있는 바와 같이, 동일한 단어인 ?幣퓰?가 사용된 텍스트라 하더라도 상기 텍스트에서 어떤 의미로 사용되었는지를 파악함으로써(예를 들어, 도 5(a)에서는 원피스(의류)으로, 도 5(b)에서는 원피스(만화)로 파악), 사용자가 원하는 정보를 보다 정확하게 제공할 수 있게 된다.Accordingly, in the entity
또한, 본 발명에서는 "지민", "원피스" 등 하나의 단어가 다의적 의미를 가지는 경우를 예를 들어 설명하고 있으나, 본 발명이 반드시 이에 한정되는 것은 아니며 둘 이상의 단어가 다의적 의미를 가지는 경우에도 본 발명이 적용될 수 있다(예를 들어, "겨울 바다(노래 제목/특정 계절의 바다)"). 이에 따라, 본 발명에서 "단어"라는 표현에는 둘 이상의 단어를 포함하는 문구(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
아래에서는 도 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
보다 구체적인 예를 들어, 도 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-
즉, 도 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-
보다 구체적인 예를 들어, 텍스트에서 상기 다의어를 중심으로 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
나아가, 본 발명에는 개체명 연결 시스템(100)의 성능을 최적화하기 위한 추가적인 기법들이 더 적용될 수도 있다.Furthermore, additional techniques for optimizing the performance of the entity
먼저, 본 발명의 일 실시예에 따른 개체명 연결 시스템(100)에서는, 종래 기술에 따라 신경망을 이용하여 개체명 연결을 수행하는 경우 학습 데이터 분포의 불균일성에 의해 다수 학습 데이터에 해당하는 다의어로 편중되어 개체명이 연결되는 문제점을 개선할 수 있다.First, in the entity
즉, 도 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
또한, 본 발명의 일 실시예에 따른 개체명 연결 시스템(100)에서는, 도 10에서 볼 수 있는 바와 같이, 태깅 대상이 되는 다의어의 연결 후보 개체들끼리만 비교하여 순위를 산출(Ranking)하도록 함으로써, 수많은 출력 개체 클래스로 인해 학습 품질이 저하되는 문제를 효과적으로 개선할 수도 있다. In addition, in the entity
보다 구체적으로, 도 10의 출력층(1010)에서 볼 수 있는 바와 같이, 본 발명의 일 실시예에 따른 개체명 연결 시스템(100)의 출력층은 각 다의어의 서로 다른 의미에 대응되는 복수의 노드를 포함하는 구조를 이루게 되는데(예를 들어, 원피스(만화), 원피스(의류), 지민(AOA), 지민(BTS), 나비(가수), 나비(동물) 등), 다의어 ?幣퓰?에 대한 학습 과정에서 출력층의 원피스(만화), 원피스(의류) 등 다의어 ?幣퓰?에 연결될 수 있는 후보 개체(원피스(만화), 원피스(의류))들끼리만 비교하여 결과를 판단하도록 함으로써, 다수의 무관한 출력 개체(지민(AOA), 지민(BTS), 나비(가수), 나비(동물) 등)로 인한 품질 저하를 효과적으로 억제할 수 있게 된다.More specifically, as can be seen in the
보다 구체적으로, 도 10의 수식(1020)에서 볼 수 있는 바와 같이 F1 측정치(F1 measure)를 반영할 수 있는 non-differential 함수(convex 함수 등)인 f1_prior 함수를 적용하여 다의어에 대한 동일 개체 예측의 성공, 실패에 따라 손실 전파(loss propagation)을 감소 또는 증가하도록 조절하여 줌으로써, 개체명 연결의 정확도를 효과적으로 개선할 수 있다. 이에 따라, Macro F1 기준 1% 이상의 개선 효과를 달성할 수 있었다.More specifically, as shown in
또한, 본 발명의 일 실시예에 따른 개체명 연결 시스템(100)에서는, 종래 기술에 따라 신경망을 이용하여 개체명 연결을 수행하는 경우 일반 명사나 동사, 형용사 등 일반 개체(Common sense entity)로 사용될 수 있는 다의어에 대한 개체명 연결시에 정확도가 떨어질 수 있는 문제점을 개선할 수 있다.In addition, in the entity
이에 대하여, 본 발명의 일 실시예에 따른 개체명 연결 시스템(100)에서는, 도 11에서 볼 수 있는 바와 같이, 일반 명사, 동사, 형용사 등 일반 개체를 개체명 연결이 불필요한 개체를 나타내는 클래스로 정의하여 네거티브 샘플링(Negative sampling) 기법을 적용함으로써, 일반 개체에 대한 개체명 연결 오류의 발생을 효과적으로 억제할 수 있게 된다.In contrast, in the 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
즉, 도 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
도 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
나아가, 본 발명의 일 실시예에 따른 개체명 연결 엔진(1220)은 심층신경망(DNN) 모델 디코더 또는 단어-벡터(word vector) 모델 디코더에서 발생할 수 있는 개체명 연결 오류를 보완하기 위한 수동 태깅 이슈 대응 모듈을 더 포함할 수 있으며, 이에 따라 학습 과정 등에서 나타날 수 있는 오류에 대하여 신속하고 효과적인 대응이 가능하게 된다.Furthermore, the entity
따라서, 개체명 연결 엔진(1220)은 하나 이상의 다의어를 포함하는 텍스트(1210)를 입력받고, 상기 하나 이상의 다의어에 대한 개체명 연결을 효과적으로 수행(1250)할 수 있게 된다.Accordingly, the entity
보다 구체적으로, 종래 기술에 따라 써포트 벡터 머신(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
보다 구체적으로, 종래에는 각 단어에 대하여 개체 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
보다 구체적으로, 도 13에서는 본 발명의 일 실시예에 따른 학습 말뭉치 구축 모듈(1230)의 동작을 설명하고 있다. 도 13에서 볼 수 있는 바와 같이, 학습 말뭉치 구축 모듈(1230)은 위키 백과 등과 같은 미리 준비된 데이터 베이스로부터 서로 다른 의미로 사용된 다의어에 대응하는 키워드 등 메타 데이터를 파싱하게 된다(1310).More specifically, FIG. 13 illustrates the operation of the learning
예를 들어, 도 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
예를 들어, 상기 규칙(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
이를 통해, 본 발명에 따른 학습 말뭉치 구축 모듈(1230)은 다수의 다의어에 대한 다량의 학습 데이터를 효과적으로 생성함으로써, 높은 정확도를 가지는 심층신경망(DNN) 모델 디코더를 효과적으로 구축할 수 있게 된다.Through this, the learning
나아가, 도 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
토크나이저(1411)에서는 주어진 텍스트를 분석하여 형태소 등으로 분류하게 된다.The
이어서, 심층신경망 모델(1412)에서는 분류된 형태소 등을 입력받아 상기 텍스트에서 사용된 다의어에 대한 개체명 연결을 수행하게 된다.Subsequently, the deep
또한, 거리기반 단어-벡터 모델(1413)에서는 텍스트 내에서 제1 단어를 벡터로 변환함에 있어서, 텍스트에 포함되는 제2 단어 및 상기 제2 단어와의 거리를 고려하여 상기 제1 단어에 대한 벡터를 산출하게 된다.In addition, in the distance-based word-
또한, 후처리부(1414)에서는 심층신경망 모델(1412) 및 거리기반 단어-벡터 모델(1413)에서 산출된 결과물에 대한 후처리를 수행하게 된다.In addition, the
본 발명의 일 실시예에 따른 개체명 연결 시스템(100)에서는 심층신경망(DNN) 모델(1412)로 분류하기 어려운 개체들을 기구축된 데이터베이스(1415) 등을 이용해 거리기반 단어-벡터 모델(1413) 등을 이용하여 개체명 연결을 수행할 수도 있다.In the entity
보다 구체적으로, 도 15에서는 거리기반 단어-벡터 모델(Distance based word vector model)(1413) 및 후처리부(1414)의 동작을 보다 자세하게 설명하고 있다.More specifically, FIG. 15 illustrates the operations of the distance based
도 15에서 볼 수 있는 바와 같이, 본 발명의 일 실시예에 따른 거리기반 단어-벡터 모델(1413)에서는 주어진 텍스트 내의 개체명 연결 대상 단어에 대하여 주변 단어들과의 관계 및 문장 내에서의 거리를 고려하여 분석에 활용할 수 있다. 구체적으로, ‘김과장’이라는 드라마에 ‘정혜성’이라는 연기자가 출연하여 ‘홍가은’이라는 배역을 맡은 경우, ‘김과장’을 분석할 때 주변에 ‘정혜성’과 ‘홍가은’이라는 단어가 나타나는 점을 이용하여 회사에서의 직급을 나타내는 ‘김과장’ 이 아닌 드라마 ‘김과장’임을 알 수 있다. As can be seen in FIG. 15, in the distance-based word-
이때 각 단어들간의 거리는 가중치로 사용될 수 있다. 마찬가지로, ‘정혜성’을 분석할 경우, 앞의 ‘김과장’ 과 뒤의 ‘홍가은’을 고려하여 ‘정혜성’을 연기자 정혜성으로 결정할 수 있다. 이러한 방법을 이용하여, ‘홍가은’ 이라는 단어가 등록되거나 학습되지 않은 경우라도 ‘홍가은’을 캐릭터로 태깅할 수 있다.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
나아가, 텍스트(1510)에 포함된 다른 다의어인 "원피스"에 대한 개체명 연결을 수행함에 있어서는, 상기 심층신경망 모델(1530)을 이용하여 개체명 연결을 수행할 수도 있는 바, 개체명 연결 대상 단어에 따른 거리기반 단어-벡터 모델(1413) 및 심층신경망 모델(1530)의 정확도나, 개체명 연결에 소요되는 시간 및 전산 자원 등을 고려하여 거리기반 단어-벡터 모델(1413) 및 심층신경망 모델(1530)을 선택적으로 적용할 수도 있으며, 필요에 따라서는 거리기반 단어-벡터 모델(1413) 및 심층신경망 모델(1530)의 결과치를 모두 고려하여 개체명 연결을 수행함으로써 그 정확도를 더욱 개선하는 것도 가능하다.Furthermore, in performing the entity name link to another multi-word “one piece” included in the
이어서, 후처리부(1414)에서는 거리기반 단어-벡터 모델(1413) 및 신경망 모델(1530)의 결과치 중 하나를 고려하거나, 둘을 모두 산출하여 비교하는 등의 방법으로(1540), 다의어에 대한 개체명 연결을 수행하게 된다(1550).Subsequently, the
이에 따라, 본 발명의 일 실시예에 따른 개체명 연결 시스템(100)에서는 "CPU" 기반으로도 1코어당 수백TPS의 성능을 낼 수 있고, 수천만개 수준의 개체(entity)에 대한 태깅도 가능하며, 이때 F1 결과치도 88% 이상의 성능을 가질 수 있다.Accordingly, in the entity
또한, 본 발명의 또 다른 측면에 따른 컴퓨터 프로그램은 앞서 살핀 개체명 연결 방법의 각 단계를 컴퓨터에서 실행시키기 위하여 컴퓨터로 판독 가능한 매체에 저장된 컴퓨터 프로그램인 것을 특징으로 한다. 상기 컴퓨터 프로그램은 컴파일러에 의해 만들어지는 기계어 코드를 포함하는 컴퓨터 프로그램뿐만 아니라, 인터프리터 등을 사용해서 컴퓨터에서 실행될 수 있는 고급 언어 코드를 포함하는 컴퓨터 프로그램일 수도 있다. 이때, 상기 컴퓨터로서는 퍼스널 컴퓨터(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
도 16에서 볼 수 있는 바와 같이 본 발명의 일 실시예에 따른 개체명 연결 시스템(100)은 단어-벡터 변환부(110), 신경망 입력부(120) 및 개체명 연결부(130)를 포함하여 구성될 수 있다.As can be seen in FIG. 16, the entity
아래에서는 본 발명의 일 실시예에 따른 개체명 연결 시스템(100)을 각 구성요소 별로 나누어 살핀다. 본 발명의 일 실시예에 따른 개체명 연결 시스템(100)에 대한 보다 자세한 내용은 앞서 설명한 본 발명의 일 실시예에 따른 개체명 연결 방법에 대한 설명으로부터 유추될 수 있는 바, 아래에서 보다 자세한 설명은 생략한다.In the following, the entity
먼저, 단어-벡터 변환부(110)에서는 텍스트에서 다의어를 포함하는 복수의 단어를 각 대응하는 복수의 벡터로 변환하게 된다.First, the word-
이어서, 신경망 입력부(120)에서는 상기 복수의 벡터를 은닉층을 구비하는 심층신경망에 입력하게 된다.Next, the neural
마지막으로, 개체명 연결부(130)에서는 심층신경망의 출력값을 이용하여 상기 다의어에 대한 개체명 연결을 수행하게 된다.Finally, the entity
이때, 심층신경망은 상기 다의어가 서로 다른 의미로 사용된 복수의 텍스트군을 이용하여 학습된 신경망일 수 있다. 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
이상의 설명은 본 발명의 기술 사상을 예시적으로 설명한 것에 불과한 것으로서, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 다양한 수정 및 변형이 가능할 것이다. 따라서 본 발명에 기재된 실시예들은 본 발명의 기술 사상을 한정하기 위한 것이 아니라 설명하기 위한 것이고, 이러한 실시예에 한정되는 것은 아니다. 본 발명의 보호 범위는 아래의 청구범위에 의해서 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술 사상은 본 발명의 권리범위에 포함되는 것으로 해석되어야 할 것이다.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.
개체명 연결 시스템이, 상기 텍스트에서 상기 다의어를 포함하는 복수의 단어를 각 대응하는 복수의 벡터로 변환하는 단어-벡터 변환 단계;
상기 복수의 벡터를 은닉층을 구비하는 심층신경망에 입력하는 신경망 입력 단계; 및
상기 심층신경망의 출력값을 이용하여 상기 다의어에 대한 개체명 연결을 수행하는 개체명 연결 단계;를 포함하며,
상기 변환된 벡터 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.
상기 심층신경망 학습 단계는,
기구축된 데이터베이스를 이용하여 상기 다의어의 복수의 의미에 대응하는 각 키워드를 산출하는 단계;
상기 키워드를 이용하여 상기 다의어가 상기 각 복수의 의미로 사용된 텍스트들을 검출하는 단계; 및
상기 검출된 텍스트들을 이용하여 상기 심층신경망을 학습하는 단계;를 포함하는 것을 특징으로 하는 개체명 연결 방법.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.
상기 복수의 텍스트군에서 상기 심층신경망을 학습시킬 텍스트를 선택함에 있어서,
상기 각 텍스트군에서의 개체명 연결 결과를 고려하여 상기 각 텍스트군에서 학습시킬 텍스트로 선택되는 비율을 조절하는 것을 특징으로 하는 개체명 연결 방법.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.
상기 심층신경망을 학습시킴에 있어서,
상기 다의어의 서로 다른 의미에 대응되는 출력층의 복수의 노드 간의 출력치를 비교하여 손실 전파(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.
상기 심층신경망 학습 단계는,
상기 다의어 중 일반 명사, 동사 또는 형용사에 해당하는 일반 개체(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.
텍스트에 포함되는 다의어에 대하여 개체명 연결을 수행하는 방법에 있어서,
개체명 연결 시스템이, 상기 텍스트에서 상기 다의어를 포함하는 복수의 단어를 각 대응하는 복수의 벡터로 변환하는 단어-벡터 변환 단계;
상기 복수의 벡터를 은닉층을 구비하는 심층신경망에 입력하는 신경망 입력 단계; 및
상기 심층신경망의 출력값을 이용하여 상기 다의어에 대한 개체명 연결을 수행하는 개체명 연결 단계;를 포함하며,
상기 심층신경망의 출력층은,
서로 다른 의미로 사용된 각 다의어 별로 구별되는 복수의 노드를 포함하는 구조를 가지는 것을 특징으로 하는 개체명 연결 방법.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.
상기 텍스트에서 상기 다의어를 포함하는 복수의 단어를 각 대응하는 복수의 벡터로 변환하는 단어-벡터 변환부;
상기 복수의 벡터를 은닉층을 구비하는 심층신경망에 입력하는 신경망 입력부; 및
상기 심층신경망의 출력값을 이용하여 상기 다의어에 대한 개체명 연결을 수행하는 개체명 연결부;를 포함하며,
상기 심층신경망의 출력층은,
서로 다른 의미로 사용된 각 다의어 별로 구별되는 복수의 노드를 포함하는 구조를 가지는 것을 특징으로 하는 개체명 연결 시스템.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.
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 |
---|---|---|---|
KR1020170045002 | 2017-04-06 | ||
KR20170045002 | 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)
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)
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)
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 |
-
2017
- 2017-11-06 KR KR1020170146715A patent/KR102053419B1/en active IP Right Grant
-
2019
- 2019-12-02 KR KR1020190158194A patent/KR102315181B1/en active IP Right Grant
Patent Citations (2)
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 |
---|---|
KR20180113444A (en) | 2018-10-16 |
KR20190138623A (en) | 2019-12-13 |
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 | |
US10282419B2 (en) | Multi-domain natural language processing architecture | |
US9336298B2 (en) | Dialog-enhanced contextual search query analysis | |
CA2774278C (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 | |
JP2010250814A (en) | Part-of-speech tagging system, training device and method of part-of-speech tagging model | |
CN107885717B (en) | Keyword extraction method and device | |
KR102315181B1 (en) | Method, apparauts and system for named entity linking and computer program thereof | |
US10242033B2 (en) | Extrapolative search techniques | |
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 | |
CN113822072A (en) | Keyword extraction method and device and electronic equipment | |
Vij et al. | Fuzzy logic for inculcating significance of semantic relations in word sense disambiguation using a WordNet graph | |
Zhang et al. | SKG-Learning: A deep learning model for sentiment knowledge graph construction in social networks | |
CN111813993A (en) | Video content expanding method and device, terminal equipment and storage medium | |
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 | |
KR101602342B1 (en) | Method and system for providing information conforming to the intention of natural language query | |
CN116340502A (en) | Information retrieval method and device based on semantic understanding |
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 |