KR20220019461A - 그래프 신경망을 이용한 지식 그래프 기반 질문 응답 시스템 - Google Patents

그래프 신경망을 이용한 지식 그래프 기반 질문 응답 시스템 Download PDF

Info

Publication number
KR20220019461A
KR20220019461A KR1020200099896A KR20200099896A KR20220019461A KR 20220019461 A KR20220019461 A KR 20220019461A KR 1020200099896 A KR1020200099896 A KR 1020200099896A KR 20200099896 A KR20200099896 A KR 20200099896A KR 20220019461 A KR20220019461 A KR 20220019461A
Authority
KR
South Korea
Prior art keywords
question
knowledge graph
graph
neural network
node
Prior art date
Application number
KR1020200099896A
Other languages
English (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 경기대학교 산학협력단
Priority to KR1020200099896A priority Critical patent/KR20220019461A/ko
Publication of KR20220019461A publication Critical patent/KR20220019461A/ko

Links

Images

Classifications

    • 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/332Query formulation
    • G06F16/3329Natural language query formulation or dialogue systems
    • 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/3332Query translation
    • G06F16/3338Query expansion
    • 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/3344Query execution using natural language analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/901Indexing; Data structures therefor; Storage structures
    • G06F16/9024Graphs; Linked lists
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/02Knowledge representation; Symbolic representation
    • G06N5/022Knowledge engineering; Knowledge acquisition
    • G06N5/025Extracting rules from data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/04Inference or reasoning models

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)
  • Artificial Intelligence (AREA)
  • Databases & Information Systems (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Computing Systems (AREA)
  • Evolutionary Computation (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Molecular Biology (AREA)
  • Human Computer Interaction (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

그래프 신경망을 이용한 지식 그래프 기반 질문 응답 시스템이 개시된다. 이 질문 응답 시스템은 자연어 질문을 인코딩하여 특징을 추출하는 질문 인코딩부, 질문과 연관된 지식 그래프에 대해 그래프 신경망을 이용하여 다중 홉 추론을 수행하되, 선형 응집(linear aggregation) 연산 외에 쌍 선형 응집(bilinear aggregation) 연산이 추가된 쌍 선형 그래프 신경망(bilinear graph neural network)을 이용하여 다중 홉 추론을 수행하는 지식 그래프 추론부, 및 다중 홉 추론 결과에 따라 지식 그래프의 개체 노드들 중에서 어느 하나의 개체 노드를 답변으로 예측하는 답변 예측부를 포함한다.

Description

그래프 신경망을 이용한 지식 그래프 기반 질문 응답 시스템{System for question answering knowledge graphs using graph neural network}
본 발명은 질문 응답 시스템에 관한 것으로, 특히 지식 그래프에 기반한 질문 응답 시스템에 관한 것이다.
대규모 지식 베이스를 토대로 인간을 대신해 자연어 질문에 스스로 답할 수 있는 지능형 에이전트는 실세계 다양한 분야들에서 폭넓게 활용될 수 있다. 특히 최근 들어 심층 신경망(deep neural network)을 이용한 자연어 처리 기술들이 획기적으로 발전함에 따라, 지식 베이스 기반 질문 응답(Knowledge Base Question Anwsering, KBQA) 문제와 이를 해결하기 위한 다양한 모델들에 관한 관심도 함께 증가하고 있다. 일반적으로 비정형 문서 집합(corpus)에 비해, 지식 베이스(knowledge base)는 대부분 트리플(triplet)과 같은 구조화된 형태로 지식을 저장하고 있으므로 질문 응답(QA)에 활용하기가 상대적으로 용이하다. 하나의 지식 트리플은 주어 개체(subject entity), 관계 서술자(relational predicate), 목적어 개체(object entity)로 구성되는데, 이것은 두 개체 간의 관계를 나타내는 하나의 사실(fact)로 간주할 수 있다. 따라서, 다수의 트리플들로 이루어진 지식 베이스는 개체 노드(node)들과 그들 간의 관계를 표현하는 간선(edge)들로 구성되는 하나의 큰 지식 그래프(knowledge graph)로 볼 수 있다. 이러한 지식 그래프를 토대로 자연어 질문에 대한 답변을 찾기 위해서는 지식 그래프 위에서 전개되는 효율적인 추론(reasioning) 혹은 탐색(search) 과정이 요구된다.
한편, 지식 그래프 기반 질문 응답은 자연어 질문이 주어지면 질문 속에서 개체를 찾고, 지식 그래프 상에서 질문에 언급된 개체들에 대응되는 노드들을 찾는 개체 연결을 수행한 다음에, 해당 노드들을 중심으로 질문에 대한 답변을 추론하는 것을 말한다. 이 같은 지식 그래프 기반 질문 응답 문제는 추론의 복잡도에 따라 단순 질문(simple question)과 복잡 질문(complex question)으로 나뉜다. 일반적으로 질문에 대한 답변을 위해 지식 그래프 위에서 단일 홉(single hop) 추론이 필요하냐 아니면 다중 홉(multi-hop) 추론이 필요하냐에 따라 단순 질문과 복잡 질문을 구분한다. 이 중에서 복잡 질문에 대한 답변을 찾아내기 위한 다중 홉 추론과 관련된 기술로는 KVMN(Key-Value Memory Networks) 모델이 알려져 있다. 이 KVMN 모델은 (키(key), 값(value)) 쌍의 메모리 슬롯에 트리플들을 저장하고, 자연어 질문과 키(key)의 연관성에 따른 값(value)들의 가중치 합(weighted sum)을 이용해 메모리 슬롯을 반복적으로 참조하여 답변 개체를 예측한다.
국내등록특허공보 제10-1950985호 (2019년 2월 22일 공고)
본 발명은 대규모 지식 그래프 위에서 다중 홉 추론을 요구하는 다양한 복잡 질문들에 대한 올바른 답변을 찾아낼 수 있는 기술적 방안을 제공함을 목적으로 한다.
일 양상에 따른 그래프 신경망을 이용한 지식 그래프 기반 질문 응답 시스템은 자연어 질문을 인코딩하여 특징을 추출하는 질문 인코딩부, 질문과 연관된 지식 그래프에 대해 그래프 신경망을 이용하여 다중 홉 추론을 수행하되, 선형 응집(linear aggregation) 연산 외에 쌍 선형 응집(bilinear aggregation) 연산이 추가된 쌍 선형 그래프 신경망(bilinear graph neural network)을 이용하여 다중 홉 추론을 수행하는 지식 그래프 추론부, 및 다중 홉 추론 결과에 따라 지식 그래프의 개체 노드들 중에서 어느 하나의 개체 노드를 답변으로 예측하는 답변 예측부를 포함할 수 있다.
질문 인코딩부는 순환 신경망(Recurrent Neural Network) 중 하나인 LSTM(Long Short-Term Memory)으로 자연어 질문을 인코딩하여 특징을 추출할 수 있다.
지식 그래프 추론부는 개체 노드별 개체 노드와 이웃 노드들 간의 맥락 정보 외에 개체 노드에 대한 이웃 노드들 간의 맥락 정보도 추출하며, 질문 특징과 맥락 정보로 개체 노드의 특징을 갱신할 수 있다.
지식 그래프 추론부는 개체 노드와 이웃 노드 간의 맥락 정보 추출시 개체 노드로 들어오는 간선과 연결된 이웃 노드에 대해서는 선형 응집과 쌍 선형 응집을 통해 맥락 정보를 추출하며, 개체 노드로부터 나가는 간선과 연결된 이웃 노드에 대해서는 선형 응집만을 통해 맥락 정보를 추출할 수 있다.
지식 그래프 추론부는 개체 노드에 대한 이웃 노드들 간의 맥락 정보 추출시 쌍 선형 응집을 통해 맥락 정보를 추출할 수 있다.
지식 그래프 추론부는 쌍 선형 응집 연산시 개체 노드별 개체 노드와 이웃 노드 간에만 요소별 곱을 수행하여 맥락 정보를 추출하는 계산 방식을 사용할 수 있다.
질문 인코딩부는 그래프 신경망에서 각 레이어를 거칠 때마다 질문에 언급된 개체 노드들의 맥락 정보로 질문 특징을 갱신하는 그래프 신경망을 이용할 수 있다.
답변 예측부는 개체 노드들에 대해 시그모이드(sigmoid) 함수를 적용하여 개체 노드마다 점수를 부여하며, 가장 높은 점수를 부여받은 개체 노드를 답변으로 선택할 수 있다.
한편, 일 양상에 따른 그래프 신경망을 이용한 지식 그래프 기반 질문 응답 방법은 자연어 질문을 인코딩하여 특징을 추출하는 질문 인코딩 단계, 질문과 연관된 지식 그래프에 대해 그래프 신경망을 이용하여 다중 홉 추론을 수행하되, 선형 응집(linear aggregation) 연산 외에 쌍 선형 응집(bilinear aggregation) 연산이 추가된 쌍 선형 그래프 신경망(bilinear graph neural network)을 이용하여 다중 홉 추론을 수행하는 지식 그래프 추론 단계, 및 다중 홉 추론 결과에 따라 지식 그래프의 개체 노드들 중에서 어느 하나의 개체 노드를 답변으로 예측하는 답변 예측 단계를 포함할 수 있다.
지식 그래프 기반 질문 응답에서 복잡 질문은 개체와 개체 사이의 관계를 이용하는 다중 홉 추론을 요구하는 경우가 많다. 따라서, 지식 그래프 상에서 다중 홉 추론을 수행할 때 질문에 언급된 개체들을 중심으로 질문과 연관된 이웃 노드들의 맥락 정보를 활용하는 것이 중요하다. 이에 본 발명은 각 노드와 이웃 노드 간의 맥락 정보뿐만 아니라 이웃 노드와 이웃 노드 간의 맥락 정보까지도 활용할 수 있는 그래프 신경망 기반의 지식 그래프 추론 모델을 제시함으로써, 다양한 복잡 질문(complex question)들에 대한 올바른 답변을 찾아내는 것을 가능하게 하는 효과를 창출한다.
도 1은 일 실시예에 따른 그래프 신경망을 이용한 지식 그래프 기반 질문 응답 시스템 블록도이다.
도 2는 일 실시예에 따른 그래프 신경망을 이용한 지식 그래프 기반 질문 응답 방법 흐름도이다.
도 3은 지식 그래프를 이용한 다중 홉 추론의 예를 나타낸다.
도 4는 일 실시예에 따른 그래프 신경망을 이용한 지식 그래프 기반 질문 응답 모델 구조도이다.
도 5는 BA-A와 BA-T의 구조 예시도이다.
도 6은 개체 노드 갱신 구조 예시도이다.
전술한, 그리고 추가적인 본 발명의 양상들은 첨부된 도면을 참조하여 설명되는 바람직한 실시예들을 통하여 더욱 명백해질 것이다. 이하에서는 본 발명을 이러한 실시예를 통해 통상의 기술자가 용이하게 이해하고 재현할 수 있도록 상세히 설명하기로 한다.
도 1은 일 실시예에 따른 그래프 신경망을 이용한 지식 그래프 기반 질문 응답 시스템 블록도이며, 도 2는 일 실시예에 따른 그래프 신경망을 이용한 지식 그래프 기반 질문 응답 방법 흐름도이다. 지식 그래프 기반 질문 응답 시스템은 질문 인코딩부(100)와 지식 그래프 추출부(200)와 지식 그래프 추론부(300) 및 답변 예측부(400) 중에서 적어도 일부를 포함한다. 이들은 모두 소프트웨어적으로 구현 가능하며, 하나 이상의 컴퓨팅 디바이스로 구성되는 컴퓨터 시스템에 마련된 하나 이상의 프로세서에 의해 실행될 수 있다. 질문 인코딩부(100)는 자연어 질문이 입력되면 그 자연어 질문을 인코딩하여 특징을 추출한다(S100). 일 실시예에 있어서, 질문 인코딩부(100)는 순환 신경망(Recurrent Neural Network, RNN) 중 하나인 LSTM(Long Short-Term Memory)으로 자연어 질문을 인코딩하여 특징을 추출한다.
지식 그래프 추론부(300)는 질문과 연관된 지식 그래프에 대해 그래프 신경망을 이용하여 다중 홉(Multi-hop Reasoning) 추론을 수행한다(S200). 이를 위해, 지식 그래프 추출부(200)는 자연어 질문에 언급된 개체를 중심으로 지식 베이스(500)로부터 질문과 연관된 지식 그래프(이를 ‘지식 서브그래프’라 할 수 있다)만을 추출하여 지식 그래프 추론부(300)로 제공하는 과정이 선행된다. 이때, 추출된 지식 그래프는 그래프 임베딩(graph embedding) 과정을 통해 벡터값으로 변환되어 지식 그래프 추론부(300)로 입력된다.
일 양상에 따른 지식 그래프 추론부(300)는 선형 응집(Linear Aggregation, LA) 연산 외에 쌍 선형 응집(Bilinear Aggregation, BA) 연산이 추가된 쌍 선형 그래프 신경망(Bilinear Graph Neural Network, BGNN)을 이용하여 다중 홉 추론을 수행한다(S200). 일 실시예에 있어서, 지식 그래프 추론부(300)는 쌍 선형 그래프 신경망을 이용하여 개체 노드별로 개체 노드와 이웃 노드들 간의 맥락 정보와 개체 노드에 대한 이웃 노드들 간의 맥락 정보를 추출한다. 여기서, 지식 그래프 추론부(300)는 개체 노드와 이웃 노드 간의 맥락 정보 추출시 개체 노드로 들어오는 간선과 연결된 이웃 노드에 대해 선형 응집과 쌍 선형 응집을 통해 맥락 정보를 추출하며, 개체 노드로부터 나가는 간선과 연결된 이웃 노드에 대해서는 선형 응집만을 통해 맥락 정보를 추출할 수 있다. 그리고 지식 그래프 추론부(300)는 개체 노드에 대한 이웃 노드들 간의 맥락 정보 추출시에는 쌍 선형 응집을 통해 맥락 정보를 추출할 수 있다. 일 실시예에 있어서, 지식 그래프 추론부(300)는 쌍 선형 응집 연산시에는 후술할 BA-A 계산 방식이나 BA-T 계산 방식을 이용한다.
지식 그래프 추론부(300)는 질문 인코딩부(100)에 의해 추출된 질문 특징과 쌍 선형 그래프 신경망을 이용하여 추출한 맥락 정보를 가지고 해당 개체 노드마다 특징을 갱신한다. 그리고 질문 인코딩부(100)는 그래프 신경망에서 각 레이어(Layer, L)를 거칠 때마다 개체 노드들의 맥락 정보로 질문 특징을 갱신할 수 있다. 갱신된 질문 특징은 다음 레이어에서 지식 그래프 추론부(300)의 입력으로 주어진다. 따라서 개체 노드 갱신은 L번 반복하여 이루어지게 된다. 부연하면, entity node update를 1번이 아닌 L번 반복함으로써 얻을 수 있는 이점은 목표 노드의 특징을 갱신할 때 Hop L에 해당하는 이웃 노드들의 맥락 정보까지 이용할 수 있기 때문에 답변 추론할 때 더 다양한 정보를 이용할 수 있다는 것이다. 즉, 다중 홉 추론을 위해 지식 그래프상에서의 질문과 연관된 여러 triple을 찾는 과정을 수행하는 것으로 볼 수 있다.
답변 예측부(400)는 지식 그래프 추론부(300)에 의해 갱신 완료된 개체 노드들 중에서 어느 하나의 개체 노드를 질문에 대한 답변으로 예측한다(S300). 일 실시예에 있어서, 답변 예측부(400)는 개체 노드들에 대해 시그모이드(sigmoid) 함수를 적용하여 개체 노드마다 점수를 부여하며, 가장 높은 점수를 부여받은 개체 노드를 답변으로 선택한다. 한편, 도 2에서 S200은 그래프 신경망의 레이어 수에 맞춰 반복 수행되며, 매번 이전 레이어를 거쳐 갱신된 질문 특징을 입력으로 받아 개체 노드들을 갱신 처리할 수 있다.
이하에서는 상술한 바에 따른 그래프 신경망을 이용한 지식 그래프 기반 질문 응답 모델에 대해 보다 구체적으로 설명한다. 먼저, 도 3은 지식 그래프를 이용한 다중 홉 추론의 예를 나타낸다. 도 3에서와 같이 자연어 질문이 주어지면 지식 베이스로부터 질문과 연관된 지식 그래프를 추출해야 한다. 지식 그래프를 추출할 때 질문에 언급된 개체를 중심으로 추출하며, 추출한 지식 그래프로부터 답을 추론할 수 있어야 한다. 다중 홉 추론을 요구하는 복잡 질문인 “Who played Obi-Wan in Episode 2?”에 대해 답변인 Ewan McGregor를 찾으려면 먼저 질문과 연관 있는 트리플 <Star Wars Episode Ⅱ: Attack of the Clones, characters, Obi-Wan Kenobi>을 찾아야 한다. 이 트리플로부터 질문의 답변인, Obi-Wan Kenobi를 연기한 Ewan McGregor를 포함하는 트리플 <Obi-Wan Kenobi, performer, Ewan McGregor>을 찾을 수 있어야 한다.
한편, 지식 베이스는
Figure pat00001
로 정의할 수 있다. 여기서,
Figure pat00002
는 지식 베이스,
Figure pat00003
는 개체들의 집합이고,
Figure pat00004
는 트리플
Figure pat00005
들의 집합이며,
Figure pat00006
은 개체들 사이의 관계 서술자들의 집합이다.
Figure pat00007
는 자연어 질문들의 집합으로 정의할 수 있으며, 질문은 단어들의 집합으로 정의할 수 있다.
Figure pat00008
에 대해
Figure pat00009
에서의
Figure pat00010
와 연관된 지식 그래프
Figure pat00011
Figure pat00012
로 정의할 수 있다. 그리고 질문 응답(QA) 작업은
Figure pat00013
에서
Figure pat00014
에 대한 답
Figure pat00015
찾기로 정의할 수 있다. 다중 홉 추론은
Figure pat00016
를 찾기 위해
Figure pat00017
에서
Figure pat00018
에 언급된 개체
Figure pat00019
로부터
Figure pat00020
까지의 경로
Figure pat00021
찾기로 정의할 수 있다.
Figure pat00022
를 구성하는
Figure pat00023
Figure pat00024
Figure pat00025
Figure pat00026
와 같은 개체이다.
도 4는 일 실시예에 따른 그래프 신경망을 이용한 지식 그래프 기반 질문 응답 모델 구조도이다. 입력으로 질문과 지식 그래프를 갖고, 출력으로 질문에 대한 답변인 개체를 갖는다. 여기서, 지식 그래프는 전처리(preprocessing)를 이용하여 지식 베이스인 FreeBase로부터 추출한, 질문과 연관된 지식 그래프를 이용한다. 본 모델은 질문 인코딩(Question Encoding)과 지식 그래프 추론(Konwledge Graph Reasoning) 및 답변 예측(Answer Prediction)으로 이루어진다. 질문 인코딩은 LSTM(Long Short-Term Memory)으로 자연어 질문을 인코딩하여 특징을 추출한다. 추출된 특징은 지식 그래프 추론에서 초기에 사용된 후 매 레이어(layer)마다 질문에 언급된 개체들의 노드 특징들 간의 맥락 정보로 다시 인코딩된다.
지식 그래프 추론은 지식 그래프 상에서 질문에 대한 답변을 찾는 다중 홉 추론을 수행한다. 지식 그래프가 입력으로 들어오면, 각 노드에 대해 쌍 선형 그래프 신경망을 이용하여 이웃 노드들 간의 맥락 정보를 얻는다. 이렇게 얻은 맥락 정보와 질문 인코딩에서 얻은 질문의 특징을 활용하여 노드의 특징을 갱신하는 개체 노드 갱신(Entity node update)을 수행한다. 마지막으로, 답변 예측은 지식 그래프 추론을 거쳐 나온 개체 노드들에 대해 시그모이드(sigmoid) 함수를 적용한다. 그 결과로 가장 높은 점수를 받은 개체 노드가 질문에 대한 답변으로 선택된다.
지식 그래프 추론 실시예에 대해 구체적으로 설명한다. 먼저, 지식 그래프 추론에 앞서 신경망을 학습하기 위해 질문, 개체와 관계 서술자를 임베딩한다. 질문과 관계 서술자는 GloVe 임베딩 값을 이용한다. 개체 노드의 초기 특징값은 GloVe 임베딩 값과 지식 그래프를 미리 학습한 임베딩 값을 이용한다. 지식 그래프 추론 과정에서 다중 홉 추론을 수행하기 위해 쌍 선형 그래프 신경망의 구조를 채용한다. 갱신되는 노드를 목표 노드(target node)라고 할 때, 쌍 선형 응집을 사용하면 목표 노드와 이웃 노드(neighbor node) 간의 맥락 정보뿐만 아니라 목표 노드의 이웃 노드들 간의 맥락 정보도 활용할 수 있다. 쌍 선형 응집으로 얻은 맥락 정보는 노드들 간의 요소별 곱(element-wise product)으로 인해 서로 유사한 특징 정보가 강조된 정보를 갖는다. 선형 응집과 쌍 선형 응집을 같이 사용함으로써, 노드에 대한 다양한 맥락 정보를 토대로 효과적인 다중 홉 추론을 기대할 수 있다.
쌍 선형 응집은 계산 방식에 따라 BA-A와 BA-T로 나눌 수 있고, 그에 따라 쌍 선형 그래프 신경망의 형태가 BA-A를 사용한 BGNN-A와 BA-T를 사용한 BGNN-T로 나뉠 수 있다. 도 5는 BA-A와 BA-T를 나타낸 도면이다. BA-A는 목표 노드와 이웃 노드, 이웃 노드와 이웃 노드끼리 요소별 곱을 수행하여 맥락 정보를 구하는 방식으로 수학식 1과 같다.
Figure pat00027
Figure pat00028
은 목표 노드의 이웃 노드들의 집합을 뜻한다. 수학식 1에서 이웃 노드끼리 요소별 곱을 수행하면 같은 계산을 두 번 하게 되므로 2로 나눈다.
BA-T는 목표 노드와 이웃 노드만 요소별 곱을 수행하여 맥락 정보를 구하는 방식으로 수학식 2와 같다.
Figure pat00029
개체 노드 갱신은 도 6과 같은 구조를 갖는다. 이는 수학식 3과 같이 나타낼 수 있다.
Figure pat00030
수학식 3에서
Figure pat00031
는 하이퍼파라미터에 해당한다.
Figure pat00032
의 값에 따라 선형 응집(LA)과 쌍 선형 응집(BA)의 적용 비율이 달라진다. LA에 대한 계산은 수학식 4에서처럼 차례대로 목표 노드의 특징
Figure pat00033
, 자연어 질문의 특징
Figure pat00034
, 선형 응집에 의한 이웃 노드들의 맥락 정보
Figure pat00035
을 이용한다. 수학식 4의
Figure pat00036
기호는 연결(concatenation)을 뜻한다.
Figure pat00037
선형 응집에 의한 이웃 노드들의 맥락 정보
Figure pat00038
을 계산할 때는 목표 노드에 연결된 간선의 방향을 고려한다. 다중 홉 추론에서 목표 노드로 들어오는 간선과 연결된 이웃 노드들의 특징들은 목표 노드에 대한 추론 경로에 해당하는 정보로 볼 수 있다. 반대로, 목표 노드로부터 나가는 간선과 연결된 이웃 노드들의 특징들은 목표 노드에 대한 추론 경로에 해당하지 않은 정보로 볼 수 있다. 따라서, 수학식 5와 같이 선형 응집에 의한 이웃 노드들의 맥락 정보
Figure pat00039
을 계산할 때 목표 노드로 들어오는 간선과 연결된 이웃 노드들의 특징들은 더하고, 목표 노드로부터 나가는 간선과 연결된 이웃 노드들의 특징들은 빼도록 계산한다. 또한, 목표 노드가 이웃 노드들과 맺는 관계와 질문의 연관성에 따라 다른 주의집중(attention)을 주면서 가중치 합을 계산한다. 이렇게 함으로써 질문과 연관성이 높은 관계를 맺는 이웃 노드의 특징에 더 큰 가중치를 줄 수 있다.
Figure pat00040
수학식 5에서
Figure pat00041
에 대해
Figure pat00042
는 노드로 들어오는 간선과 연결된 이웃 노드들의 집합,
Figure pat00043
는 노드로부터 나가는 간선과 연결된 이웃 노드들의 집합을 뜻한다.
질문 응답을 수행하기 위해서 신경망을 학습할 때 질문의 정보를 이용해야 한다. 따라서, 도 6처럼 개체 노드의 특징
Figure pat00044
을 갱신할 때 자연어 질문의 특징
Figure pat00045
을 이용한다. 또한, 선형 응집에 의한 이웃 노드들의 맥락 정보
Figure pat00046
을 계산할 때도 질문을 이용한 주의집중
Figure pat00047
을 준다. 자연어 질문의 특징
Figure pat00048
은 초기값으로 수학식 5처럼 LSTM의 직전 은닉 상태(hidden state)를 이용한다. 이후 그래프 신경망에서 각 레이어를 거칠 때마다 자연어 질문에 언급된 개체들의 노드들의 맥락 정보로 갱신한다. 자연어 질문과 지식 그래프 상의 개체 노드는 서로 다른 멀티모달(multimodal)이므로 처름에만 자연어 질문의 특징을 LSTM으로 인코딩하고 이후에는 질문에 언급된 개체들의 노드 특징들을 이용한 것이다.
Figure pat00049
수학식 6의
Figure pat00050
는 질문에 언급된 개체의 노드를 뜻한다.
수학식 5에서 자연어 질문과 연관성이 높은 관계에 대해 더 큰 주의집중을 주기 위해 수학식 7과 같이 주의집중
Figure pat00051
을 계산한다.
Figure pat00052
Figure pat00053
은 관계 서술자의 임베딩 벡터다.
Figure pat00054
가 이웃 노드들과 맺는 관계에 대해 소프트맥스(softmax) 정규화가 행해진다.
BA에 대한 계산은 수학식 8에서처럼 쌍 선형 응집 BA-T로 구한, 목표 노드와 이웃 노드 간의 맥락 정보를 이용한다. 목표 노드로 들어노는 간선과 연결된 이웃 노드들에 대해서만 쌍 선형 응집을 하는 것이 모든 이웃 노드에 대해 쌍 선형 응집을 하는 것보다 좋은 성능을 보인다.
Figure pat00055
한편, 답변을 추론할 때는 모든 노드에 대해 답인지 아닌지 분류하는 이진 분류를 수행한다. 손실 함수로 바이너리 크로스 엔트로피 손실(binary cross entropy loss)을 사용한다.
이하에서는 본 모델에 대한 구현 및 실험 결과에 대해 서술한다. 먼저, 본 제안 모델을 Ubuntu 16.04 LTS에서 Python 딥러닝 라이브러리인 PyTorch를 이용하여 구현하였다. 모델의 학습 및 평가를 위한 질문 응답 데이터 집합으로는 WebQuestionsSP를 사용하였다. WebQuestonSP는 지식 베이스인 FreeBase를 토대로 생성한 오픈 도메인 질문 응답 데이터 집합이다. 이 데이터 집합은 총 4737개의 자연어 질문과 답변들 중 3098개는 훈련용(training set), 1639개는 검증용(validation set)으로 구성되어 있다. 그리고 전체 질문의 약 70%는 단일 홉 추론을 요구하는 단순 질문들(single-hop simple questions), 약 30%는 2-홉 질문들(double-hop complex questions)이다. 모델 학습을 위해 쌍 선형 그래프 신경망(BGNN)의 레이어 수(number of layers)는 3, 반복 학습주기(epoch)는 100, 배치 크기(batch size)는 10, 학습률(learning rate)은 0.001로 설정하였다. 실험은 메인 메모리 64GB와 Geforce RTX 2080 SUPER 1개를 포함한 컴퓨터 환경에서 수행되었다.
본 모델의 성능 평가 척도록 Hits@K와 F1 score을 채택하였다. Hits@K는 답변이라고 예측한 것들 중 가장 점수가 높은 K개를 선택했을 때 실제 답변이 포함되어 맞춘 비율을 나타낸 것이다. 첫 번째 실험은 본 모델의 지식 그래프 추론에서 쌍 선형 응집의 효과를 보이는 실험이다. 선형 응집만 썼을 때(LA), 쌍 선형 응집만 썼을 때(BA-A와 BA-T) 그리고 둘 다 사용했을 때(BGNN-A와 BGNN-T) 나타난 성능을 비교하였다. 표 1은 첫 번째 실험을 수행하여 측정한 표이다. 이 실험에서는 BGNN의
Figure pat00056
값을 BGNN-A에서는 0.1, BGNN-T에서는 0.3으로 설정하였다.
method Hits
@1
Hits
@5
Hits
@10
Hits
@20
F1
score
LA 66.9 79.7 83.3 86.0 58.2
BA-A 19.6 19.9 29.4 39.6 0.6
BA-T 44.7 68.9 76.5 82.2 35.4
BGNN-A 67.2 80.5 83.3 86.1 59.1
BGNN-T 68.4 80.9 83.9 86.0 61.0
표 1에서 보듯이 선형 응집(LA)과 쌍 선형 응집(BA)을 모두 사용하는 BGNN-T가 모든 척도에서 가장 우수한 성능을 보였다. 또한, 선형 응집(LA)과 쌍 선형 응집(BA)만 비교했을 때는 선형 응집(LA)의 성능이 쌍 선형 응집(BA)보다 우수한 성능을 나타내었다. 또한, Hits@1을 기준으로 보면, 선형 응집과 쌍 선형 응집을 모두 사용하는 BGNN-T와 BGNN-A가 선형 응집(LA)만을 사용했을 때보다 각각 약 1.5%와 약 0.3% 더 높은 성능을 보여주었다. 또한, BGNN-T를 사용했을 때가 BGNN-A를 사용했을 때보다 약 1.2% 더 높은 성능을 보였다. 이러한 실험 결과로 볼 때, WebQuestionsSP 질문 응답에서는 선형 응집(LA)이 쌍 선형 응집(BA)에 비해 상대적으로 성능 향상에 좀 더 도움을 주었으나, 본 모델과 같이 선형 응집(LA)과 쌍 선형 응집(BA)을 함께 채용한 쌍 선형 그래프 신경망(BGNN)이 가장 높은 성능 개선 효과를 보인 것을 확인할 수 있다.
이제까지 본 발명에 대하여 그 바람직한 실시예들을 중심으로 살펴보았다. 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자는 본 발명이 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 변형된 형태로 구현될 수 있음을 이해할 수 있을 것이다. 그러므로 개시된 실시예들은 한정적인 관점이 아니라 설명적인 관점에서 고려되어야 한다. 본 발명의 범위는 전술한 설명이 아니라 특허청구범위에 나타나 있으며, 그와 동등한 범위 내에 있는 모든 차이점은 본 발명에 포함된 것으로 해석되어야 할 것이다.
100 : 질문 인코딩부 200 : 지식 그래프 추출부
300 : 지식 그래프 추론부 400 : 답변 예측부
500 : 지식 베이스

Claims (14)

  1. 자연어 질문을 인코딩하여 특징을 추출하는 질문 인코딩부;
    질문과 연관된 지식 그래프에 대해 그래프 신경망을 이용하여 다중 홉 추론을 수행하되, 선형 응집(linear aggregation) 연산 외에 쌍 선형 응집(bilinear aggregation) 연산이 추가된 쌍 선형 그래프 신경망(bilinear graph neural network)을 이용하여 다중 홉 추론을 수행하는 지식 그래프 추론부; 및
    다중 홉 추론 결과에 따라 지식 그래프의 개체 노드들 중에서 어느 하나의 개체 노드를 답변으로 예측하는 답변 예측부;
    를 포함하는 그래프 신경망을 이용한 지식 그래프 기반 질문 응답 시스템.
  2. 제 1 항에 있어서,
    질문 인코딩부는 순환 신경망(Recurrent Neural Network) 중 하나인 LSTM(Long Short-Term Memory)으로 자연어 질문을 인코딩하여 특징을 추출하는 그래프 신경망을 이용한 지식 그래프 기반 질문 응답 시스템.
  3. 제 1 항에 있어서,
    지식 그래프 추론부는 개체 노드별 개체 노드와 이웃 노드들 간의 맥락 정보 외에 개체 노드에 대한 이웃 노드들 간의 맥락 정보도 추출하며, 질문 특징과 맥락 정보로 개체 노드의 특징을 갱신하는 그래프 신경망을 이용한 지식 그래프 기반 질문 응답 시스템.
  4. 제 3 항에 있어서,
    지식 그래프 추론부는 개체 노드와 이웃 노드 간의 맥락 정보 추출시 개체 노드로 들어오는 간선과 연결된 이웃 노드에 대해서는 선형 응집과 쌍 선형 응집을 통해 맥락 정보를 추출하며, 개체 노드로부터 나가는 간선과 연결된 이웃 노드에 대해서는 선형 응집만을 통해 맥락 정보를 추출하는 그래프 신경망을 이용한 지식 그래프 기반 질문 응답 시스템.
  5. 제 3 항에 있어서,
    지식 그래프 추론부는 개체 노드에 대한 이웃 노드들 간의 맥락 정보 추출시 쌍 선형 응집을 통해 맥락 정보를 추출하는 그래프 신경망을 이용한 지식 그래프 기반 질문 응답 시스템.
  6. 제 3 항에 있어서,
    지식 그래프 추론부는 쌍 선형 응집 연산시 개체 노드별 개체 노드와 이웃 노드 간에만 요소별 곱을 수행하여 맥락 정보를 추출하는 계산 방식을 사용하는 그래프 신경망을 이용한 지식 그래프 기반 질문 응답 시스템.
  7. 제 3 항에 있어서,
    질문 인코딩부는 그래프 신경망에서 각 레이어를 거칠 때마다 질문에 언급된 개체 노드들의 맥락 정보로 질문 특징을 갱신하는 그래프 신경망을 이용한 지식 그래프 기반 질문 응답 시스템.
  8. 제 3 항 내지 제 7 항 중 어느 한 항에 있어서,
    답변 예측부는 개체 노드들에 대해 시그모이드(sigmoid) 함수를 적용하여 개체 노드마다 점수를 부여하며, 가장 높은 점수를 부여받은 개체 노드를 답변으로 선택하는 그래프 신경망을 이용한 지식 그래프 기반 질문 응답 시스템.
  9. 자연어 질문을 인코딩하여 특징을 추출하는 질문 인코딩 단계;
    질문과 연관된 지식 그래프에 대해 그래프 신경망을 이용하여 다중 홉 추론을 수행하되, 선형 응집(linear aggregation) 연산 외에 쌍 선형 응집(bilinear aggregation) 연산이 추가된 쌍 선형 그래프 신경망(bilinear graph neural network)을 이용하여 다중 홉 추론을 수행하는 지식 그래프 추론 단계; 및
    다중 홉 추론 결과에 따라 지식 그래프의 개체 노드들 중에서 어느 하나의 개체 노드를 답변으로 예측하는 답변 예측 단계;
    를 포함하는 그래프 신경망을 이용한 지식 그래프 기반 질문 응답 방법.
  10. 제 9 항에 있어서,
    지식 그래프 추론 단계는 개체 노드별 개체 노드와 이웃 노드들 간의 맥락 정보 외에 개체 노드에 대한 이웃 노드들 간의 맥락 정보도 추출하며, 질문 특징과 맥락 정보로 개체 노드의 특징을 갱신하는 그래프 신경망을 이용한 지식 그래프 기반 질문 응답 방법.
  11. 제 10 항에 있어서,
    지식 그래프 추론 단계는 개체 노드와 이웃 노드 간의 맥락 정보 추출시 개체 노드로 들어오는 간선과 연결된 이웃 노드에 대해서는 선형 응집과 쌍 선형 응집을 통해 맥락 정보를 추출하며, 개체 노드로부터 나가는 간선과 연결된 이웃 노드에 대해서는 선형 응집만을 통해 맥락 정보를 추출하는 그래프 신경망을 이용한 지식 그래프 기반 질문 응답 방법.
  12. 제 10 항에 있어서,
    지식 그래프 추론 단계는 개체 노드에 대한 이웃 노드들 간의 맥락 정보 추출시 쌍 선형 응집을 통해 맥락 정보를 추출하는 그래프 신경망을 이용한 지식 그래프 기반 질문 응답 방법.
  13. 제 10 항에 있어서,
    지식 그래프 추론 단계는 쌍 선형 응집 연산시 개체 노드별 개체 노드와 이웃 노드 간에만 요소별 곱을 수행하여 맥락 정보를 추출하는 계산 방식을 사용하는 그래프 신경망을 이용한 지식 그래프 기반 질문 응답 방법.
  14. 제 10 항에 있어서,
    질문 인코딩 단계는 그래프 신경망에서 각 레이어를 거칠 때마다 질문에 언급된 개체 노드들의 맥락 정보로 질문 특징을 갱신하는 그래프 신경망을 이용한 지식 그래프 기반 질문 응답 방법.
KR1020200099896A 2020-08-10 2020-08-10 그래프 신경망을 이용한 지식 그래프 기반 질문 응답 시스템 KR20220019461A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020200099896A KR20220019461A (ko) 2020-08-10 2020-08-10 그래프 신경망을 이용한 지식 그래프 기반 질문 응답 시스템

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020200099896A KR20220019461A (ko) 2020-08-10 2020-08-10 그래프 신경망을 이용한 지식 그래프 기반 질문 응답 시스템

Publications (1)

Publication Number Publication Date
KR20220019461A true KR20220019461A (ko) 2022-02-17

Family

ID=80493340

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200099896A KR20220019461A (ko) 2020-08-10 2020-08-10 그래프 신경망을 이용한 지식 그래프 기반 질문 응답 시스템

Country Status (1)

Country Link
KR (1) KR20220019461A (ko)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117291265A (zh) * 2023-11-24 2023-12-26 江苏风云科技服务有限公司 一种基于文本大数据的知识图谱构建方法
CN117634617A (zh) * 2024-01-25 2024-03-01 清华大学 知识密集型推理问答方法、装置、电子设备和存储介质
WO2024048854A1 (ko) * 2022-08-31 2024-03-07 서울대학교 산학협력단 지식 기반 질의 응답을 위한 구조적 주의 집중 기제 기반의 추론 방법 및 이를 수행하기 위한 컴퓨팅 장치

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101950985B1 (ko) 2015-10-16 2019-02-22 바이두 유에스에이 엘엘씨 휴먼 인스파이어드된 간단한 질문 응답(hisqa)을 위한 시스템 및 방법

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101950985B1 (ko) 2015-10-16 2019-02-22 바이두 유에스에이 엘엘씨 휴먼 인스파이어드된 간단한 질문 응답(hisqa)을 위한 시스템 및 방법

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024048854A1 (ko) * 2022-08-31 2024-03-07 서울대학교 산학협력단 지식 기반 질의 응답을 위한 구조적 주의 집중 기제 기반의 추론 방법 및 이를 수행하기 위한 컴퓨팅 장치
CN117291265A (zh) * 2023-11-24 2023-12-26 江苏风云科技服务有限公司 一种基于文本大数据的知识图谱构建方法
CN117291265B (zh) * 2023-11-24 2024-02-09 江苏风云科技服务有限公司 一种基于文本大数据的知识图谱构建方法
CN117634617A (zh) * 2024-01-25 2024-03-01 清华大学 知识密集型推理问答方法、装置、电子设备和存储介质
CN117634617B (zh) * 2024-01-25 2024-05-17 清华大学 知识密集型推理问答方法、装置、电子设备和存储介质

Similar Documents

Publication Publication Date Title
Qiu et al. Dynamically fused graph network for multi-hop reasoning
Liu et al. Graph normalizing flows
KR20220019461A (ko) 그래프 신경망을 이용한 지식 그래프 기반 질문 응답 시스템
WO2020174826A1 (ja) 回答生成装置、回答学習装置、回答生成方法、及び回答生成プログラム
Sun et al. Atp: Directed graph embedding with asymmetric transitivity preservation
Snijders et al. Maximum likelihood estimation for social network dynamics
Xiao et al. Dynamically fused graph network for multi-hop reasoning
KR102203065B1 (ko) 트리플 검증 장치 및 방법
CN111695415A (zh) 图像识别模型的构建方法、识别方法及相关设备
KR102223382B1 (ko) 다중타입 엔티티에 기반한 지식 보완 방법 및 장치
CN109614473B (zh) 应用于智能交互的知识推理方法及装置
JP2020061173A (ja) 回答学習装置、回答学習方法、回答生成装置、回答生成方法、及びプログラム
US11288318B2 (en) Obtaining dynamic embedding vectors of nodes in relationship graphs
Vinhas et al. Fitness and novelty in evolutionary art
CN113628059A (zh) 一种基于多层图注意力网络的关联用户识别方法及装置
KR20210070904A (ko) 다중 문서 질의 응답을 위한 방법 및 장치
Farazi et al. Accuracy vs. complexity: a trade-off in visual question answering models
Jensen Bayesian networks
Park et al. On the power of gradual network alignment using dual-perception similarities
CN114218457A (zh) 一种基于转发社交媒体用户表征的假新闻检测方法
CN114077659A (zh) 一种基于邻居交互网络的知识图谱问答方法及系统
KR101922326B1 (ko) 링크 예측 장치 및 방법
Du et al. Structure tuning method on deep convolutional generative adversarial network with nondominated sorting genetic algorithm II
CN117391816A (zh) 一种异质图神经网络推荐方法、装置及设备
Ma et al. Fuzzy nodes recognition based on spectral clustering in complex networks

Legal Events

Date Code Title Description
E601 Decision to refuse application