KR20210018571A - 듀얼 포인터 네트워크를 이용한 복수 개체간 관계를 추출하는 장치 및 방법 - Google Patents

듀얼 포인터 네트워크를 이용한 복수 개체간 관계를 추출하는 장치 및 방법 Download PDF

Info

Publication number
KR20210018571A
KR20210018571A KR1020190094857A KR20190094857A KR20210018571A KR 20210018571 A KR20210018571 A KR 20210018571A KR 1020190094857 A KR1020190094857 A KR 1020190094857A KR 20190094857 A KR20190094857 A KR 20190094857A KR 20210018571 A KR20210018571 A KR 20210018571A
Authority
KR
South Korea
Prior art keywords
entity
relationship
decoder
encoder
sentence
Prior art date
Application number
KR1020190094857A
Other languages
English (en)
Other versions
KR102286999B1 (ko
Inventor
김학수
박성식
Original Assignee
강원대학교산학협력단
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 강원대학교산학협력단 filed Critical 강원대학교산학협력단
Priority to KR1020190094857A priority Critical patent/KR102286999B1/ko
Publication of KR20210018571A publication Critical patent/KR20210018571A/ko
Application granted granted Critical
Publication of KR102286999B1 publication Critical patent/KR102286999B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/205Parsing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/279Recognition of textual entities
    • G06F40/289Phrasal analysis, e.g. finite state techniques or chunking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/30Semantic analysis
    • 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 Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Computational Linguistics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Biomedical Technology (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • Evolutionary Computation (AREA)
  • Data Mining & Analysis (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Biophysics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Machine Translation (AREA)

Abstract

본 발명은 텍스트 문서에 포함된 다문장에 대한 복수 개체간 관계를 추출하는 기술에 관한 것으로, 특히 듀얼 포인터 네트워크를 이용하여 복수 개체간 관계를 추출하는 장치 및 방법을 제공한다. 예를 들어, 순환신경망(RNN)을 이용한 다문장을 포함하는 텍스트로부터 복수의 개체간 관계를 추출하는 관계추출장치는, 텍스트에서 복수의 개체에 대한 개체명 사이의 연관 관계를 학습하도록 구성된 인코더와 관계를 갖는 개체명을 포인팅하고 복수의 개체에 대한 개체명을 결정하도록 구성되는 듀얼 디코더를 포함할 수 있다.

Description

듀얼 포인터 네트워크를 이용한 복수 개체간 관계를 추출하는 장치 및 방법{An apparatus extracting a relation among multiple entities by using a dual pointer network and a method thereof}
본 발명은 텍스트 문서에서 복수 개체간 관계를 추출하는 장치 및 방법에 관련된 것으로서, 특히 듀얼 포인터 네트워크를 이용하여 복수 개체간 관계를 추출하는 장치 및 방법에 관한 것이다.
관계 추출 연구는 텍스트 문서에 존재하는 개체들 사이의 관계를 판단하고 그들 사이의 관계명을 추출하는 연구를 말한다. 관계 추출 연구는 대용량의 텍스트로부터 자동으로 지식 베이스를 구축하는데 필요한 핵심 연구 분야이다. 기존에 연구되어온 관계 추출 연구는 문장 내에 존재하는 개체들 중 2개의 개체명을 입력 받아 그들 사이의 관계명을 찾는 방식을 취하고 있다. 따라서, 하나의 문장 내에 n개의 개체들이 존재하면, 가능한 모든 관계를 추출하기 위한 개체 쌍을 추출하기 위해
Figure pat00001
번의 관계 추출을 반복 수행해야 하는 문제가 있다.
또한, 대부분의 기존 관계 추출 연구들은 한 문장 내에 존재하는 개체 사이의 관계만을 대상으로 하고 있으므로 여러 문장에 걸쳐서 관계를 형성하는 경우에는 개체들간 관계를 제대로 추출하지 못하는 단점이 있다.
1. 대한민국 특허출원번호: 제10-2018-0043441; 구조 정보 선행 학습을 통한 딥러닝 관계 추출 시스템 및 이를 이용한 딥러닝 관계 추출 성능 향상 방법 위 방법은 딥러닝 관계 추출 시스템이 개체간 관계를 추출하는 방법으로서, 입력된 문장에 포함되어 있는 복수의 개체 및 복수의 개체 사이의 관계를 추출하기 위하여 입력된 문장으로부터 문장 임베딩 벡터로 생성한다. 그리고 문장 임베딩 벡터를 토대로, 상기 복수의 개체 사이의 관계를 추출하는 방법에 관한 것이다. 2. 대한민국 특허출원번호: 제10-2008-0106383호; 의존 문법 구문 트리의 탐색을 통한 자동 관계 트리플 추출방법 해당 출원은 문법적으로 올바른 평서문의 문장으로부터 온톨로지를 구축하기 위한 관계 트리플의 정보를 자동으로 추출해 내는 방법 및 시스템에 관한 것이다. 예르 들어, 본 발명에 따른 의존 문법 구문 트리의 탐색을 통한 자동 관계 트리플 추출 방법은, 대상 문장을 구문 분석하여 의존 문법 구문 트리를 생성하는 제1 단계와 제1 단계 후 생성된 의존 문법 구문 트리를 전처리하여 관계 추출을 위한 형태로 변환하는 제2 단계와 제2 단계에서 변환된 의존 문법 구문 트리를 포스트오더(postorder) 방식으로 탐색하여 자동으로 관계 트리플을 추출하는 제3 단계를 포함한다. 그러나, 위 방법은 마찬가지로 문장에 여러 개체가 존재하는 경우에 관계 추출에 대해서는 고려하지 않고 있으며, 한 번에 하나의 개체 쌍 간의 관계 추출을 진행한다. 특히, 듀얼 포인터 네트워크가 적용되는 듀얼 디코더에 대해서는 개시하지 못하고 있다.
1. M.Miwa and M.Bansal, "End-to-End Relation Extraction using LSTMs on Sequences and Tree Structure", arXiv: 1601.00770v3, 2016.08 2. T.H.Nguyen and R.Grishman, "Combining Neural Networks and Long-Linear Models to Improve Relateion Extraction", arXiv: 1511.05926, 2015 3. 김선우, 최성필, "Hybrid Convolutional and Recurrent Neural Networks를 이용한 개체간 관계 추출", 2018sus 한국컴퓨터종합학술대회 논문집, pp.619-621, 2018 상술한 논문들은 문장에 여러 개체가 존재하는 경우에 관계 추출에 대해서는 고려하지 않고 있으며, 한 번에 하나의 개체 쌍 간의 관계 추출을 진행한다.
본 발명의 목적은 다문장을 포함하는 텍스트에서 복수 관계를 추출하는 효율적인 방법을 제공하는 것이다.
본 발명의 다른 목적은 순환신경망(RNN) 모델을 이용하여 텍스트에서 복수의 관계를 한 번에 찾아내기 위해 듀얼 포인터 네트워크 구조가 적용되는 듀얼 디코더를 포함하는 관계추출장치를 제공하는 것이다.
본 발명에서 이루고자 하는 기술적 목적들은 이상에서 언급한 사항들로 제한되지 않으며, 언급하지 않은 또 다른 기술적 과제들은 이하 설명할 본 발명의 실시예들로부터 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에 의해 고려될 수 있다.
이하에서는 본 발명의 실시예들로서 텍스트 문서에 포함된 다문장에 대한 복수 개체간 관계를 추출하는 장치 및 방법을 제공한다. 특히 듀얼 포인터 네트워크를 이용하여 복수 개체간 관계를 추출하는 장치 및 방법을 제공한다.
본 발명의 일 실시예로서 순환신경망(RNN)을 이용한 다문장을 포함하는 텍스트로부터 복수의 개체간 관계를 추출하는 관계추출장치는, 텍스트에서 복수의 개체에 대한 개체명 사이의 연관 관계를 학습하도록 구성된 인코더와 관계를 갖는 개체명을 포인팅하고 복수의 개체에 대한 개체명을 결정하도록 구성되는 듀얼 디코더를 포함할 수 있다.
이때, 듀얼 디코더는 주체를 중심으로 객체를 포인팅하는 전방향 디코더 및 객체를 중심으로 주체를 포인팅하는 역방향 디코더를 포함할 수 있다.
이때, 전방향 디코더는 전방향을 가리키는 전방향 포인터 네트워크로 구성되고, 역방향 디코더는 역방향을 가리키는 역방향 포인터 네트워크로 구성될 수 있다.
상기 인코더는 문장 인코더 및 개체 인코더를 포함할 수 있다. 문장 인코더는 텍스트에 대한 양방향의 문맥 정보를 반영하기 위해서 양방향 LSTM(Long-Short Term Memory)을 사용하여 인코딩하고, 개체 인코더는 텍스트의 개체를 인코딩하기 위해 단방향 LSTM을 사용하여 인코딩할 수 있다. 이때, 인코더는 텍스트의 각 단어와 개체를 표현하기 위해 어휘 정보, 개체타입정보 및 문장경계정보를 사용하여 인코딩을 수행할 수 있다.
상기 관계추출장치는 인코더 및 듀얼 디코더를 제어하여 개체간 관계를 추출하기 위한 문장-개체 주의집중 개체를 더 포함할 수 있다.
본 발명의 다른 실시예로서 순환신경망(RNN)을 이용하여 다문장을 포함하는 텍스트로부터 복수의 개체간 관계를 추출하는 관계추출방법은, 복수의 개체간 관계를 추출하기 위한 관계추출장치에 복수의 문장을 포함하는 텍스트가 입력되는 단계와 관계추출장치의 인코더에서 복수의 개체간 개체명 사이의 연관관계를 학습하는 단계와 관계추출장치의 듀얼 디코더에서, 학습된 복수의 개체간 개체명 사이의 연관관계를 기반으로 각 문장에서 주체를 중심으로 객체를 전방향으로 포인팅하고 객체를 중심으로 주체를 역방향으로 포인팅하는 단계와 듀얼 디코더에서 멀티헤드 어텐션 방식을 사용하여 개체명을 결정 및 출력하는 단계를 포함할 수 있다.
이때, 듀얼 디코더는 정방향 디코더 및 역방향 디코더를 포함하되, 전방향 디코더는 전방향을 가리키는 전방향 포인터 네트워크로 구성되고, 역방향 디코더는 역방향을 가리키는 역방향 포인터 네트워크로 구성될 수 있다.
또한, 인코더는 다문장의 단어와 개체를 표현하기 위해 어휘 정보, 개체 타입 정보 및 문장 경계 정보를 사용하여 복수의 개체간 개체명 사이의 연관 관계를 학습하도록 구성된다.
인코더는 문장 인코더 및 개체 인코더를 포함하며, 문장 인코더는 텍스트에 대한 양방향의 문맥 정보를 반영하기 위해서 양방향 LSTM(Long-Short Term Memory)을 사용하여 인코딩하고, 개체 인코더는 텍스트의 개체를 인코딩하기 위해 단방향 LSTM을 사용하여 인코딩할 수 있다.
상술한 본 발명의 양태들은 본 발명의 바람직한 실시예들 중 일부에 불과하며, 본원 발명의 기술적 특징들이 반영된 다양한 실시예들이 당해 기술분야의 통상적인 지식을 가진 자에 의해 이하 상술할 본 발명의 상세한 설명을 기반으로 도출되고 이해될 수 있다.
본 발명의 실시예들에 따르면 다음과 같은 효과를 얻을 수 있다.
다문장으로 구성된 텍스트 내에 존재하는 모든 개체명들 사이의 관계를 한 번에 찾아낼 수 있다. 이로 인해 관계추출 시간을 획기적으로 줄일 수 있다. 또한, 관계 추출 대상이 단일 문장으로 한정되지 않기 때문에, 다문장에 걸쳐 존재하는 개체명 사이의 관계까지 찾을 수 있어서 관계 추출 성능을 크개 개선할 수 있다.
본 발명의 실시예들에서 얻을 수 있는 효과는 이상에서 언급한 효과들로 제한되지 않으며, 언급하지 않은 또 다른 효과들은 이하의 본 발명의 실시예들에 대한 기재로부터 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 도출되고 이해될 수 있다. 즉, 본 발명을 실시함에 따른 의도하지 않은 효과들 역시 본 발명의 실시예들로부터 당해 기술분야의 통상의 지식을 가진 자에 의해 도출될 수 있다.
본 발명에 관한 이해를 돕기 위해 상세한 설명의 일부로 포함되고, 첨부된 도면들은 본 발명에 대한 다양한 실시예들을 제공한다. 또한, 첨부된 도면들은 상세한 설명과 함께 본 발명의 실시 형태들을 설명하기 위해 사용된다.
도 1은 트리플 구조를 설명하기 위한 도면이다.
도 2는 본 발명의 실시예로서 듀얼 포인터 네트워크를 이용한 복수 개체간 관계를 추출하는 장치를 설명하기 위한 도면이다.
도 3은 본 발명의 실시예들에서 사용되는 인코더(100)를 설명하기 위한 구조도이다.
도 4는 본 발명의 실시예로서 포인터 네트워크가 반영된 듀얼 디코더의 구조도이다.
도 5는 듀얼 디코더의 역할을 설명하기 위한 도면이다.
도 6은 본 발명의 실시예로서 인코더-디코더 통합 모델 구조를 설명하기 위한 도면이다.
도 7은 듀얼 포인터 네트워크를 이용한 복수 개체간 관계를 추출하는 방법을 설명하기 위한 도면이다.
이하에서는 본 발명의 실시예들로서 텍스트 문서에서 복수 개체간 관계를 추출하는 장치 및 방법들에 대해서 설명한다. 특히 듀얼 포인터 네트워크를 이용하여 복수 개체간 관계를 추출하는 장치 및 방법에 대해서 자세히 설명한다.
이하의 실시예들은 본 발명의 구성요소들과 특징들을 소정 형태로 결합한 것들이다. 각 구성요소 또는 특징은 별도의 명시적 언급이 없는 한 선택적인 것으로 고려될 수 있다. 각 구성요소 또는 특징은 다른 구성요소나 특징과 결합되지 않은 형태로 실시될 수 있다. 또한, 일부 구성요소들 및/또는 특징들을 결합하여 본 발명의 실시예를 구성할 수도 있다. 본 발명의 실시예들에서 설명되는 동작들의 순서는 변경될 수 있다. 어느 실시예의 일부 구성이나 특징은 다른 실시예에 포함될 수 있고, 또는 다른 실시예의 대응하는 구성 또는 특징과 교체될 수 있다.
도면에 대한 설명에서, 본 발명의 요지를 흐릴 수 있는 부분, 장치 및/또는 구성 등은 기술하지 않았으며, 당업자의 수준에서 이해할 수 있을 정도의 부분, 장치 및/또는 구성 또한 기술하지 아니하였다. 또한, 도면에서 동일한 도면 부호를 사용하여 지칭하는 부분은 장치 구성 또는 방법에서 동일한 구성 요소 또는 단계를 의미한다.
명세서 전체에서, 어떤 부분이 어떤 구성요소를 "포함(comprising 또는 including)"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다. 또한, 명세서에 기재된 "??부" 또는 "??기" 등의 용어는 적어도 하나의 기능이나 동작을 처리하는 단위를 의미한다. 또한, "일(a 또는 an)", "하나(one)", "그(the)" 및 유사 관련어는 본 발명을 기술하는 문맥에 있어서(특히, 이하의 청구항의 문맥에서) 본 명세서에 달리 지시되거나 문맥에 의해 분명하게 반박되지 않는 한, 단수 및 복수 모두를 포함하는 의미로 사용될 수 있다.
또한, 본 발명의 실시예들에서 사용되는 특정(特定) 용어들 및/또는 기호들은 본 발명의 이해를 돕기 위해서 제공된 것이며, 이러한 특정 용어의 사용은 본 발명의 기술적 사상을 벗어나지 않는 범위에서 다른 형태로 변경될 수 있다.
예를 들어, 텍스트란 복수의 문장을 포함하되, 이는 문서 형태, 음성 형태, 이미지 형태의 문장을 모두 포함할 수 있다. 본 발명의 실시예들에서 사용되는 용어로서 RNN, CNN, LSTM, 포인터 네트워크, 멀티헤드 어텐션, 주의 집중 방법 등의 용어는 머신러닝 분야에서 일반적으로 널리 사용되는 용어로서 본 명세서에서 특별히 정의한 기능 이외에는 일반적으로 사용되는 기술분야에서 통상적으로 사용되는 의미로 해석될 수 있다.
이하, 본 발명에 따른 바람직한 실시 형태를 첨부된 도면을 참조하여 상세하게 설명한다. 첨부된 도면과 함께 이하에 개시될 상세한 설명은 본 발명의 예시적인 실시형태를 설명하고자 하는 것이며, 본 발명이 실시될 수 있는 유일한 실시형태를 나타내고자 하는 것이 아니다.
관계 추출(Relation Extraction)은 문장이나 문서 내에 존재하는 개체들 간의 관계를 밝혀내고 이를 트리플(triple) 구조로 추출하는 작업을 의미한다. 기존의 관계 추출 연구들(상술한 비특허문헌 1-3 및 특허문헌 1-2 참조)은 단일 문장에서 한 번에 하나의 개체 쌍간의 관계를 추출하는 방법들을 개시하고 있다.
도 1은 트리플 구조를 설명하기 위한 도면이다.
관계 추출의 결과물은 두 개체를 엮는 의미적 관계가 표현된 트리플 구조이며, 트리플은 지식 베이스(Knowledge Base)의 단위 지식이다. 도 1은 트리플 구조의 일례를 나타내며, 트리플은 주체(Subject), 관계(Relation) 및 객체(Object)의 튜플(Tuple) 형태로 표현된다.
예를 들어, '강원대학교'와 '춘천시'가 각각 주체(Subject) 및 객체(Object)에 해당하며 둘 사이의 관계(Relation)는 '위치함(located)'으로 정의될 수 있다. 최근 딥 러닝(Deep Learning)이 자연어 처리 분야에 전반적으로 도입되면서 관계 추출에도 딥러닝을 이용하는 방법이 많이 연구되고 있다.
최근에는 문자의 문맥 정보를 효과적으로 취득할 수 있는 기술로서 순환 신경망(RNN: Recurrent Neural Network) 및 부분적인 특징을 추출하는데 효과적인 컨볼루셔널 신경망(CNN: Convolutional Neural Network) 등에 다양한 방법론을 적용하는 연구들이 진행되고 있다.
하지만, 앞서 설명한 바와 같이 대부분의 종래 연구들은 단일 문장에서 한 번에 하나의 개체 쌍(즉, 두 개의 개체) 사이의 관계만을 추출하는 한계가 있다. 이러 방법은 문장에 개체가 다수 존재하는 경우, 같은 문장을 개체의 수 만큼 여러번 입력해야 하는 단점이 있으며, 지정된 개체 쌍 이외의 개체는 무시해야 하므로 실용성이 떨어진다. 예를 들어, 개체가 다수 존재하는 문장 또는 텍스트에서 여러 번에 걸쳐 관계 추출을 반복하여 계산하여야(
Figure pat00002
하므로 실용성이 떨어진다.
본 발명의 실시예들은 이러한 문제점을 해결하기 위한 것으로 포인터 네트워크(Pointer Network)를 관계 추출에 적용하여 개체가 다수 존재하는 문장을 처리할 수 있다. 왜냐하면, 관계 추출 또한 각 개체가 다른 특정 개체의 위치를 가리키는 문제라 판단하여, 포인터 네트워크를 사용하여 종래 기술의 문제점을 해결하려는 것이다. 이를 위해, 둘 이상의 포인터 네트워크를 적용하여, 문장 내 여러 개체들이 존재하는 경우에도 한 번에 다중 개체간의 여러 관계들을 추출할 수 있다. 본 발명의 실시예들에서 포인터 네트워크는 관련 객체를 그래프로 표시 및 포인팅하는 기능을 수행한다.
이하에서는 포인터 네트워크를 이용한 다중 개체 관계 추출 장치 및 방법에 대해서 구체적으로 살펴본다.
도 2는 본 발명의 실시예로서 듀얼 포인터 네트워크를 이용한 복수 개체간 관계를 추출하는 장치를 설명하기 위한 도면이다.
듀얼 포인터 네트워크를 이용한 복수 개체간 관계를 추출하는 관계추출장치(10)는 텍스트 내 복수의 개체간 개체명 사이의 연관 관계를 학습하는 인코더(100) 및 관계를 갖는 개체명을 포인팅하고 개체명을 결정하는 디코더(200)를 포함한다. 또한, 관계추출장치(10)는 인코더(100)와 디코더(200)를 제어하는 프로세서(300)를 더 포함할 수 있다.
본 발명의 다른 일례로 프로세서(300)는 인코더(100) 및 디코더(200)와 별개로 구성되는 것이 아니라 인코더(100) 및 디코더 (200) 내부에 각각로 구성될 수 있다. 또는, 프로세서(300)는 인코더(100)와 디코더(200)가 하나의 하드웨어 개체로 구성되는 경우에는 해당 개체 내에 제어 유닛으로 구성될 수 있다.
도 3은 본 발명의 실시예들에서 사용되는 인코더(100)를 설명하기 위한 구조도이다.
도 3을 참조하면, 문장 및 개체 인코더로서 문장 인코더(110) 및 개체 인코더(130)가 하나의 문장-개체 주의집중 계층과 결합되는 모델을 확인할 수 있다. 문장의 각 단어와 개체를 표현하기 위해 어휘 정보, 개체 타입 정보, 문장 경계 정보가 사용된다.
어휘 정보는 단어 임베딩과 함께 음절 단위 CNN을 통한 임베딩이 사용된다. 또한, 개체의 경우 음절뿐 아니라 단어 임베딩도 CNN을 이용해 하나의 개체를 표현하는 임베딩으로 만든다. 이때, 개체 타입은 임의의 초기화 값을 사용한다. 문장의 경계 정보는 원 핫(One-Hot) 벡터로 표현된다.
도 3에서 [E 1 , ??, E t ]는 문장에 등장하는 순서대로 나열한 개체 임베딩을 의미한다. 개체 임베딩은 각 개체의 등장 순서에 따라 나열되어 있으므로 개체 인코더는 단방향 LTSM(Long-Short Term Memory)을 이용하여 개체를 인코딩한다. [x 1 , ??, x n ]은 문장의 단어들을 임베딩한 값이다. 문장은 양방향의 문맥 정보를 반영하기 위해서 양방향 LSTM(LSTM에 대해서는 S.Hochreiter and J.Schmidhuber, "Long short-term memory", Neural computation, pp.1735-1780, 1997 논문 참조)을 사용하여 인코딩한다.
본 발명의 인코더(100)는 머신 러닝이 적용되는 기계 독해 기술에서 사용되는 주의 집중(Attention) 기술을 이용하여 텍스트의 각 단어와 개체명 사이의 연관성을 학습할 수 있다. 예를 들어, 개체 인코더와 문장 인코더의 출력은 문장-개체 주의 집중(Context2Entity Attention) 계층으로 입력된다. 이때, 주의 집중 기술로 멀티헤드 어텐션(Multi-head Attention) 방식이 사용된다. 멀티헤드 어텐션 방식에 대해서는 관련 논문으로서 "Attention Is All You Need (Ashish Vaswani, Noam Shazeer 외 6명, arXiv: 1706.03762v5, 2017.12.06)"을 참조할 수 있다.
따라서, 인코더(100)는 입력된 임베딩 정보를 분석하여 문맥 정보가 반영된 벡터열[O 1 , ??, O t ]을 출력한다.
도 3에서 문장-개체 주의 집중 계층은 실시예에 따라 도 2에서 설명한 프로세서(300)에 구비되거나, 인코더(100) 자체에 구비될 수 있다.
도 4는 본 발명의 실시예로서 포인터 네트워크가 반영된 듀얼 디코더의 구조도이다.
디코더(200)는 포인터 네트워크를 기반으로 구성된다. 예를 들어, 디코더(200)는 의존 구조 분석에서 사용되는 포인터 네트워크(pointer network) 기술을 활용하여 서로 관계를 맺는 개체들을 연결하고 그들 사이의 개체명을 결정하도록 학습할 수 있다.
포인터 네트워크는 주의 집중 방법을 기반으로 출력 계층에서 입력 계층의 특정 위치를 출력하도록 하는 기술이다. 그러나 디코딩 한 스텝에 하나의 인코더 위치를 계산하는 포인터 네트워크 특성 상, 하나의 주체(Subject)가 여러 객체(Objects)들과 관계를 가질 수 있는 관계 추출에서 구조적 한계를 보일 수 밖에 없다. 따라서, 이러한 한계를 극복하기 위해 본 발명에서는 주체 중심으로 객체를 가리키는 디코더 뿐만 아니라 객체 중심으로 주체를 가리키는 디코더를 함께 사용하는 듀얼 디코더를 제안한다.
도 4를 참조하면, 주체 디코더(210)와 객체 디코더(230)가 듀얼 디코더(200)를 구성하기 위해 문장-개체 주의 집중 계층에 연결되는 것을 확인할 수 있다. 도 4의 문장-개체 주의 집중 계층은 도 3에서 설명한 문장-개체 주의 집중 계층과 동일한 계층일 수 있으며 또는 별개로 구성되는 계층일 수 있다.
도 4에서 문장-개체 주의 집중 계층으로 입력되는 출력에 "기타(Other)'에 해당하는 임의 초기화 벡터를 연결하여, 주체 디코더(210) 및 객체 디코더(230)가 입력받은 문장 내에서 주체 또는 객체와 관계를 갖지 않는 개체를 "기타"로 가리킬 수 있다.
본 발명의 실시예들에서는, 종래 기술과 달리, 포인터 네트워크와 다르게 디코더에서 인코더의 위치를 계산할 때 멀티헤드 어텐션을 사용한다. 이에 대한 수식은 다음 수학식 1과 같다.
Figure pat00003
수학식 1에서 ht는 개체 임베딩 벡터열 Et와 문맥 정보가 반영된 백터열 Ot를 연결(Concatenated)한 벡터를 나타낸다. st는 ht가 입력됐을때의 디코더 출력값이다. 멀티헤드 어텐션의 입력 Q, K, V는 마지막 차원이 멀티헤드 개수 n개로 분할된 후, 각 헤드의 주의 집중 가중치 ai와 출력 headi의 계산에 사용된다. 이후 모든 헤드의 출력을 하나로 합쳐 관계 예측 값인 rt를 계산하고, 각각의 ai를 모두 더해서 인코더의 위치 분포 pi를 출력한다.
도 5는 듀얼 디코더의 역할을 설명하기 위한 도면이다.
도 5는 도 4에서 설명한 듀얼 디코더를 구성하는 주체 디코더(210) 및 객체 디코더(230)를 설명하기 위한 도면으로, 주체 디코더는 문장의 방향에 따라서 전방향 디코더라 불릴 수 있으며, 객체 디코더는 역방향 디코더라고 불릴 수 있다. 즉, 문장을 읽는 방향인 전방향을 가리키는 포인터 네트워크로 구성되는 전방향 디코더와 반대 방향인 역방향을 가리키는 포인터 네트워크로 구성되는 역방행 디코더로 듀얼 디코더를 구성할 수 있다.
도 5(a)를 참조하면, 전방향 디코더로 추출된 해당 문장의 주체는 '철수 및 영희'이며, 관계는 장소를 나타내는 '태어난(born_in)'이 되고, 객체는 '서울'이 된다.
도 5(b)를 참조하면, 역방향 디코더로 추출된 해당 문장의 주체는 '철수'이고, 객체는 '20세' 및 '연구원'이고, 관계는 '나이' 및 '직업'이 된다.
즉, 전방향 포인터 네트워크는 도 5(a)와 같이 객체가 중복되는 경우에 관계의 존재 여부와 관계명을 추출하는 역할을 수행한다. 또한, 역방향 포인터 네트워크는 도 5(b)와 같이 주체가 중복되는 경우에 관계의 존재 여부와 관계명을 추출하는 역할을 수행한다.
따라서, 본 발명의 실시예들은 포인터 네트워크가 적용된 듀얼 디코더를 이용하여, 다문장으로 구성된 텍스트 내에 존재하는 모든 개체명들 사이의 관계를 한 번에 찾아낼 수 있게 됨으로써, 관계 추출 시간을 획기적으로 줄일 수 있다. 또한, 관계 추출의 대상이 단일 문장으로 한정되지 않기 때문에, 다문장에 걸쳐 존재하는 개체명 사이의 관계까지 찾을 수 있다.
도 6은 본 발명의 실시예로서 인코더-디코더 통합 모델 구조를 설명하기 위한 도면이다.
도 6을 참조하면, 도 3 및 도 4에서 설명한 인코더(100) 및 듀얼 디코더(200)가 하나의 문장-개체 주의 집중 계층과 결합하여 통합 구조를 형성하는 경우를 확인할 수 있다. 이때, 문장-개체 주의 집중 계층은 프로세서(300)에 구성될 수 있다. 즉, 문장-개체 주의 집중 계층은 인코더(100)를 제어하여 주의집중 기술을 기반으로 텍스트의 각 단어와 개체명 사이의 연관성을 학습하고, 그 결과로 벡터열 [O 1 , O 2 ,??, O t ]을 출력한다. 문장-개체 주의 집중 계층은 출력된 값들을 듀얼 디코더(200)로 입력한다. 듀얼 디코더(200)를 구성하는 멀티헤드 어텐션 기술이 각각 적용된 전방향 디코더 및 역방향 디코더는 포인터 네트워크를 활용하여 관계를 맺는 개체들을 서로 연결하고 그들 사이의 개체명을 결정하도록 학습한다.
다음 표 1은 포인터 네트워크를 이용한 관계 추출이 효과가 있는지 여부를 확인하기 위한 성능 비교표이다.
리콜 정확성 F1
Baseline 0.5909 0.6145 0.6025
Pointer network (base) 0.8004 0.759 0.7791
Pointer network (multi-head attention) 0.8198 0.7925 0.805
표 1에서 'Baseline' 모델은 단순히 모든 관계 예측을 'Other'로만 고정한 모델이다. 'Pointer network(base)'는 기존 포인터 네트워크를 사용했을 경우의 관계 추출 모델이고, 'Pointer network(multi-head attention)'은 본 발명의 실시예들에서 문장 내 관계의 위치를 계산시 멀티헤더 어텐션을 사용한 모델이다.
표 1을 참조하면, 멀티헤더 포인터 네트워크를 사용한 경우가 베이스라인 모델이나 단순 포인터 네트워크를 사용한 경우보다 정확성이 매우 높은 것을 확인할 수 있다. 특히, 기존 포인터 네트워크보다도 정밀도가 +3.24% 가량 크게 향상된 것으로 보아 하나의 가중치에 의존해 관계를 계산하던 기존 방법에 비해서 멀티헤더 어텐션은 분할된 입력들 간의 주의 집중 가중치를 통해 정확한 관계를 산출할 수 있다.
도 7은 듀얼 포인터 네트워크를 이용한 복수 개체간 관계를 추출하는 방법을 설명하기 위한 도면이다.
이하에서 설명하는 방법들은 도 2 내지 4 및 도 6에서 설명한 장치들, 특히 문장 및 개체 인코더(100) 및 듀얼 포인터 네트워크 디코더로서 듀얼 디코더(200)를 이용하여 수행될 수 있다.
도 7을 참조하면, 복수 개체간 관계를 추출하기 위한 관계추출장치(10)에 복수의 문장을 포함하는 텍스트가 입력된다 (S701).
관계추출장치(10)의 인코더(100)는 텍스트 내 복수의 개체간 개체명 사이의 연관관계를 학습한다. 예를 들어, 인코더는 각 문장의 단어와 개체를 표현하기 위해 어휘 정보, 개체 타입 정보 및 문장 경계 정보를 사용하여 개체명 사이의 연관 관계를 학습할 수 있다 (S703).
S703 단계에서, 인코더(100)는 문장 인코더 및 개체 인코더를 포함할 수 있다. 이때, 문장 인코터는 양방향의 문맥 정보를 반영하기 위해 양방향 LSTM을 사용하여 인코딩할 수 있다. 개체 인코더는 개체 임베딩이 문장 내 개체의 등장 순서에 따라 나열되므로 단방향 LSTM을 이용하여 인코딩할 수 있다.
듀얼 디코더(200)는 포인터 네트워크를 기반으로 구성되되, 하나의 포인터 네트워크가 아닌 듀얼 디코더에 포함되는 디코더의 개수만큼의 포인터 네트워크를 기반으로 구성될 수 있다. 본 발명의 실시예에서는 두 개의 포인터 네트워크를 기반으로 두 개의 디코더가 구성되는 듀얼 디코더에 대해서 설명하지만, 문장의 분석 목적에 따라 세 개 이상의 디코더가 구성될 수 있다.
예를 들어, 듀얼 디코더(200)의 전방향 디코더는 주체 중심으로 객체를 가리키는 디코더로 전방향의 객체를 포인팅한다. 또한, 듀얼 디코더(200)의 역방향 디코더는 객체 중심으로 주체를 가리키는 디코더로 역방향의 객체를 포인팅한다 (S705).
이후 듀얼 디코더(200)는 수학식 1에서 설명한 멀티헤드 어텐션을 사용하여 개체명을 결정하고 이를 출력할 수 있다 (S707).
상술한 본 발명의 실시예들은 본 발명의 필수적 특징을 벗어나지 않는 범위에서 다른 특정한 형태로 구체화될 수 있다. 따라서, 상술한 상세한 설명은 모든 면에서 제한적으로 해석되어서는 아니되고 예시적인 것으로 고려되어야 한다. 본 발명의 범위는 첨부된 청구항의 합리적 해석에 의해 결정되어야 하고, 본 발명의 등가적 범위 내에서의 모든 변경은 본 발명의 범위에 포함된다. 또한, 특허청구범위에서 명시적인 인용 관계가 있지 않은 청구항들을 결합하여 실시예를 구성하거나 출원 후의 보정에 의해 새로운 청구항으로 포함할 수 있다.

Claims (9)

  1. 순환신경망(RNN)을 이용한 다문장을 포함하는 텍스트로부터 복수의 개체간 관계를 추출하는 관계추출장치는,
    상기 텍스트에서 상기 복수의 개체에 대한 개체명 사이의 연관 관계를 학습하도록 구성된 인코더; 및
    관계를 갖는 개체명을 포인팅하고 상기 복수의 개체에 대한 개체명을 결정하도록 구성되는 듀얼 디코더를 포함하되,
    상기 듀얼 디코더는 주체를 중심으로 객체를 포인팅하는 전방향 디코더 및 객체를 중심으로 주체를 포인팅하는 역방향 디코더를 포함하는, 관계추출장치.
  2. 제1항에 있어서,
    상기 전방향 디코더는 전방향을 가리키는 전방향 포인터 네트워크로 구성되고,
    상기 역방향 디코더는 역방향을 가리키는 역방향 포인터 네트워크로 구성되는, 관계추출장치.
  3. 제1항에 있어서,
    상기 인코더는 문장 인코더 및 개체 인코더를 포함하고,
    상기 문장 인코더는 상기 텍스트에 대한 양방향의 문맥 정보를 반영하기 위해서 양방향 LSTM(Long-Short Term Memory)을 사용하여 인코딩하고,
    상기 개체 인코더는 상기 텍스트의 개체를 인코딩하기 위해 단방향 LSTM을 사용하여 인코딩하는, 관계추출장치.
  4. 제3항에 있어서,
    상기 인코더는 상기 텍스트의 각 단어와 개체를 표현하기 위해 어휘 정보, 개체타입정보 및 문장경계정보를 사용하여 인코딩을 수행하는, 관계추출장치.
  5. 제1항에 있어서,
    상기 관계추출장치는 상기 인코더 및 상기 듀얼 디코더를 제어하여 상기 개체간 관계를 추출하기 위한 문장-개체 주의집중 개체를 더 포함하는, 관계추출장치.
  6. 순환신경망(RNN)을 이용하여 다문장을 포함하는 텍스트로부터 복수의 개체간 관계를 추출하는 관계추출방법은,
    상기 복수의 개체간 관계를 추출하기 위한 관계추출장치에 복수의 문장을 포함하는 텍스트가 입력되는 단계;
    상기 관계추출장치의 인코더에서 상기 복수의 개체간 개체명 사이의 연관관계를 학습하는 단계;
    상기 학습된 상기 복수의 개체간 개체명 사이의 연관관계를 기반으로 상기 관계추출장치의 듀얼 디코더에서, 각 문장에서 주체를 중심으로 객체를 전방향으로 포인팅하고 객체를 중심으로 주체를 역방향으로 포인팅하는 단계; 및
    상기 듀얼 디코더에서 멀티헤드 어텐션 방식을 사용하여 개체명을 결정 및 출력하는 단계를 포함하는, 관계추출방법.
  7. 제6항에 있어서,
    상기 듀얼 디코더는 정방향 디코더 및 역방향 디코더를 포함하되,
    상기 전방향 디코더는 전방향을 가리키는 전방향 포인터 네트워크로 구성되고,
    상기 역방향 디코더는 역방향을 가리키는 역방향 포인터 네트워크로 구성되는, 관계추출방법.
  8. 제6항에 있어서,
    상기 인코더는 상기 다문장의 단어와 개체를 표현하기 위해 어휘 정보, 개체 타입 정보 및 문장 경계 정보를 사용하여 상기 복수의 개체간 개체명 사이의 연관 관계를 학습하는 것을 특징으로 하는, 관계추출방법.
  9. 제8항에 있어서,
    상기 인코더는 문장 인코더 및 개체 인코더를 포함하며,
    상기 문장 인코더는 상기 텍스트에 대한 양방향의 문맥 정보를 반영하기 위해서 양방향 LSTM(Long-Short Term Memory)을 사용하여 인코딩하고,
    상기 개체 인코더는 상기 텍스트의 개체를 인코딩하기 위해 단방향 LSTM을 사용하여 인코딩하는, 관계추출방법.
KR1020190094857A 2019-08-05 2019-08-05 듀얼 포인터 네트워크를 이용한 복수 개체간 관계를 추출하는 장치 및 방법 KR102286999B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020190094857A KR102286999B1 (ko) 2019-08-05 2019-08-05 듀얼 포인터 네트워크를 이용한 복수 개체간 관계를 추출하는 장치 및 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190094857A KR102286999B1 (ko) 2019-08-05 2019-08-05 듀얼 포인터 네트워크를 이용한 복수 개체간 관계를 추출하는 장치 및 방법

Publications (2)

Publication Number Publication Date
KR20210018571A true KR20210018571A (ko) 2021-02-18
KR102286999B1 KR102286999B1 (ko) 2021-08-09

Family

ID=74688681

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190094857A KR102286999B1 (ko) 2019-08-05 2019-08-05 듀얼 포인터 네트워크를 이용한 복수 개체간 관계를 추출하는 장치 및 방법

Country Status (1)

Country Link
KR (1) KR102286999B1 (ko)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20230055021A (ko) * 2021-10-18 2023-04-25 한양대학교 산학협력단 Nested 와 Overlapped Named Entity 인식을 위한 피라미드 Layered 어텐션 모델
CN116245178A (zh) * 2023-05-08 2023-06-09 中国人民解放军国防科技大学 基于指针网络的解码器的生物医药知识抽取方法和装置
CN116629387A (zh) * 2023-07-24 2023-08-22 湖南视觉伟业智能科技有限公司 一种用于训练缺失条件下的文本处理方法及处理系统
CN117408247A (zh) * 2023-12-15 2024-01-16 南京邮电大学 一种基于关系指针网络的智能制造三元组抽取方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20080106383A (ko) 2007-06-02 2008-12-05 백운 풍선을 이용한 관 청소방법
KR20180043441A (ko) 2016-10-19 2018-04-30 삼성디스플레이 주식회사 플렉서블 표시 장치
KR20190038258A (ko) * 2017-09-28 2019-04-08 한국과학기술원 구조 정보 선행 학습을 통한 딥러닝 관계 추출 시스템 및 이를 이용한 딥러닝 관계 추출 성능 향상 방법
KR20190039817A (ko) * 2016-09-26 2019-04-15 구글 엘엘씨 신경 기계 번역 시스템
KR20190045650A (ko) * 2017-10-24 2019-05-03 강원대학교산학협력단 계층적 포인터 네트워크를 이용한 상호참조해결 시스템 및 방법

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20080106383A (ko) 2007-06-02 2008-12-05 백운 풍선을 이용한 관 청소방법
KR20190039817A (ko) * 2016-09-26 2019-04-15 구글 엘엘씨 신경 기계 번역 시스템
KR20180043441A (ko) 2016-10-19 2018-04-30 삼성디스플레이 주식회사 플렉서블 표시 장치
KR20190038258A (ko) * 2017-09-28 2019-04-08 한국과학기술원 구조 정보 선행 학습을 통한 딥러닝 관계 추출 시스템 및 이를 이용한 딥러닝 관계 추출 성능 향상 방법
KR20190045650A (ko) * 2017-10-24 2019-05-03 강원대학교산학협력단 계층적 포인터 네트워크를 이용한 상호참조해결 시스템 및 방법

Non-Patent Citations (8)

* Cited by examiner, † Cited by third party
Title
1. M.Miwa and M.Bansal, "End-to-End Relation Extraction using LSTMs on Sequences and Tree Structure", arXiv: 1601.00770v3, 2016.08
2. T.H.Nguyen and R.Grishman, "Combining Neural Networks and Long-Linear Models to Improve Relateion Extraction", arXiv: 1511.05926, 2015
3. 김선우, 최성필, "Hybrid Convolutional and Recurrent Neural Networks를 이용한 개체간 관계 추출", 2018sus 한국컴퓨터종합학술대회 논문집, pp.619-621, 2018
그러나, 위 방법은 마찬가지로 문장에 여러 개체가 존재하는 경우에 관계 추출에 대해서는 고려하지 않고 있으며, 한 번에 하나의 개체 쌍 간의 관계 추출을 진행한다. 특히, 듀얼 포인터 네트워크가 적용되는 듀얼 디코더에 대해서는 개시하지 못하고 있다.
상술한 논문들은 문장에 여러 개체가 존재하는 경우에 관계 추출에 대해서는 고려하지 않고 있으며, 한 번에 하나의 개체 쌍 간의 관계 추출을 진행한다.
예르 들어, 본 발명에 따른 의존 문법 구문 트리의 탐색을 통한 자동 관계 트리플 추출 방법은, 대상 문장을 구문 분석하여 의존 문법 구문 트리를 생성하는 제1 단계와 제1 단계 후 생성된 의존 문법 구문 트리를 전처리하여 관계 추출을 위한 형태로 변환하는 제2 단계와 제2 단계에서 변환된 의존 문법 구문 트리를 포스트오더(postorder) 방식으로 탐색하여 자동으로 관계 트리플을 추출하는 제3 단계를 포함한다.
위 방법은 딥러닝 관계 추출 시스템이 개체간 관계를 추출하는 방법으로서, 입력된 문장에 포함되어 있는 복수의 개체 및 복수의 개체 사이의 관계를 추출하기 위하여 입력된 문장으로부터 문장 임베딩 벡터로 생성한다. 그리고 문장 임베딩 벡터를 토대로, 상기 복수의 개체 사이의 관계를 추출하는 방법에 관한 것이다.
해당 출원은 문법적으로 올바른 평서문의 문장으로부터 온톨로지를 구축하기 위한 관계 트리플의 정보를 자동으로 추출해 내는 방법 및 시스템에 관한 것이다.

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20230055021A (ko) * 2021-10-18 2023-04-25 한양대학교 산학협력단 Nested 와 Overlapped Named Entity 인식을 위한 피라미드 Layered 어텐션 모델
CN116245178A (zh) * 2023-05-08 2023-06-09 中国人民解放军国防科技大学 基于指针网络的解码器的生物医药知识抽取方法和装置
CN116629387A (zh) * 2023-07-24 2023-08-22 湖南视觉伟业智能科技有限公司 一种用于训练缺失条件下的文本处理方法及处理系统
CN116629387B (zh) * 2023-07-24 2023-10-27 湖南视觉伟业智能科技有限公司 一种用于训练缺失条件下的文本处理方法及处理系统
CN117408247A (zh) * 2023-12-15 2024-01-16 南京邮电大学 一种基于关系指针网络的智能制造三元组抽取方法
CN117408247B (zh) * 2023-12-15 2024-03-29 南京邮电大学 一种基于关系指针网络的智能制造三元组抽取方法

Also Published As

Publication number Publication date
KR102286999B1 (ko) 2021-08-09

Similar Documents

Publication Publication Date Title
CN110914827B (zh) 生成多语言语义解析器的系统和计算机实现方法
KR102286999B1 (ko) 듀얼 포인터 네트워크를 이용한 복수 개체간 관계를 추출하는 장치 및 방법
CN110795552B (zh) 一种训练样本生成方法、装置、电子设备及存储介质
Quan et al. Gecor: An end-to-end generative ellipsis and co-reference resolution model for task-oriented dialogue
WO2019226474A1 (en) Improving abstraction of text summarizaton
CN109829172B (zh) 一种基于神经翻译的双向解码自动语法改错模型
Wang et al. A neural attention model for disfluency detection
Khan et al. RNN-LSTM-GRU based language transformation
Zhu et al. Robust spoken language understanding with unsupervised asr-error adaptation
Zhu et al. Catslu: The 1st chinese audio-textual spoken language understanding challenge
US11322133B2 (en) Expressive text-to-speech utilizing contextual word-level style tokens
Abdelhamid et al. End-to-end arabic speech recognition: A review
Gale et al. Experiments in Character-Level Neural Network Models for Punctuation.
CN114981885A (zh) 用于自动语音识别的字母数字序列偏置
CN113761883A (zh) 一种文本信息识别方法、装置、电子设备及存储介质
Lu et al. A syllable-structured, contextually-based conditionally generation of chinese lyrics
Lone et al. Machine intelligence for language translation from Kashmiri to English
Sunitha et al. A phoneme based model for english to malayalam transliteration
Lekshmy et al. English-malayalam vision aid with multi modal machine learning technologies
CN116343747A (zh) 语音合成方法、语音合成装置、电子设备及存储介质
Jamtsho et al. Dzongkha word segmentation using deep learning
Zhang et al. Word-level bert-cnn-rnn model for chinese punctuation restoration
Arisoy et al. Compositional Neural Network Language Models for Agglutinative Languages.
Kang et al. Lattice based transcription loss for end-to-end speech recognition
Huang et al. DuIVRS: A Telephonic Interactive Voice Response System for Large-Scale POI Attribute Acquisition at Baidu Maps

Legal Events

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