EMNLP2019 | Knowledge-Aware Graph Networks

2024-05-07 13:58

本文主要是介绍EMNLP2019 | Knowledge-Aware Graph Networks,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

论文标题:KagNet: Knowledge-Aware Graph Networks for Commonsense Reasoning

KagNet: Knowledge-Aware Graph Networks for Commonsense Reasoning​arxiv.org

 

Authors: Bill Yuchen Lin, Xinyue Chen, Jamin Chen, Xiang Ren
Org.: University of Southern California, Shanghai Jiao Tong University
Code:  https://github.com/INK-USC/KagNet

1.Motivation

本文针对的数据集是:CommonsenseQA

目标:

  • 使机器具备进行常识推理的能力,减小人机之间的差距
    • 关于推理的定义:
      • reasoning is the process of combining facts and beliefs to make new decisions[1].
      • reasoning is the ability to manipulate knowledge to draw inferences [2].
    • 关于常识推理的定义:
      • commonsense reasoning utilizes the basic knowledge that reflects our natural understanding of the world and human behaviors, which is common to all humans.
      • 从物理的角度:Humans' natural understanding of the physical world.
      • 从大众心理的角度:Humans' innate ability to reason about people's behavior and intentions.
  • machines 缺乏可解释性:
    • how the machines manage to answer commonsense questions and make their inferences.
  • 为什么要引入 常识知识库 以及其带来的挑战:
    • knowledge-aware models can explicitly incorporate external knowledge as relational inductive biases.
      • enhance reasoning capacity;
      • increase the transparency of model behaviors for more interpretable results;
    • 挑战
      • noisy: How can we find the most relevant paths in KG?
      • incomplete: What if the best path is not existent in the KG?

1.1This work

提出了一个Knowledge-aware reasoning 框架,主要有以下两个步骤:

  • schema graph grounding (见下图)
  • graph modeling for inference

 

提出了一个Knowledge-aware graph network 模块: KAGNET

  • 核心是 GCN-LSTM-HPA 结构:
    • 由GCN, LSTM, 和 hierarchical path-based attentionmechanism组成
    • 用于 path-based relational graph representation

KAGNET 模块总体的工作流:

  • 首先,分别识别出 [公式] 和 [公式] 中提及的 concept ,根据这些 concept ,找到他们之间的路径,构建出 (ground) schema graph;
  • 使用 LM encoder 编码 QA 对,产生 statement vector [公式] ,作为 GCN-LSTM-HPA 的输入,来计算 graph vector [公式] ;
  • 最后使用 graph vector 计算最终的QA对的打分

2.Model

问题 [公式] 和一个包含 [公式] 选项的候选答案集 [公式]

schema graph [公式]

2.1 Schema Graph Grounding

2.1.1 Concept Recognition

  • n-gram 匹配:句子中的 token 和 ConceptNet 的顶点集合进行 n-gram 匹配
  • Note:从有噪声的知识源中有效地提取上下文相关的知识仍是一个开放问题

2.1.2 Schema Graph Construction

sub-graph matching via path finding

  • 采取一种直接有效的方法:直接在Q和A中提及的Concept ( [公式] ) 之间查找路径
  • 对于问题中的一个 Concept [公式] 和候选项中的一个 Concept [公式] ,查找他们之间路径长度小于 [公式] 的path,添加到图中
    • 本文中,设置 [公式] ,即3-hop paths

2.1.3 Path Pruning via KG Embedding

为了从潜在噪声的schema graph中删除无关的path

  • 使用KGE方法(如TransE等)预训练Concept Embedding和Relation Type Embedding(同时可用于KAGNET的初始化)
  • 评价路径的质量
  • 将路径分解为三元组集合,一条路径的打分为每一组三元组的乘积,通过设置一个阈值进行过滤。
  • 三元组的打分通过KGE中的打分函数进行计算(例如,the confidence of triple classification)

2.2 Knowledge-Aware Graph Network

整体的模型结构:

  1. 使用GCN对图进行编码
  2. 使用LSTM对 [公式] 和 [公式] 之间的路径进行编码,捕捉 multi-hop relational Information
  3. 使用 hierarchical path-based attention 计算 relational schema graph 和 QA对 之间路径的关系

2.2.1 Graph Convolution Networks

使用GCN的目的:

1、contextually refine the concept vector

    • 这里的 context 指节点在图中的上下文,即邻接关系
    • 使用邻居来对预训练的Concept Embedding进行消歧

2、capture structural patterns of schema graphs for generalization

3、schema graph 的模式为推理提供了潜在的有价值的信息

    • QA对Concept之间的 更短、更稠密的连接 可能意味着更大的可能性,在特定的上下中。
    • 评价 候选答案 的可能性

GCN在schema graph上的计算:

  • 使用预训练得到的 concept embedding 作为 GCN 计算图节点的初始化表示,即 [公式]
  • [公式]

2.2.2 Relational Path Encoding

定义问题中的第 [公式] 个 concept [公式] 和候选答案中的第 [公式] 个 concept [公式] 之间的第 [公式] 条路径为 [公式] :

  • 路径是三元组序列:[公式]
    • relation vector 由 KGE 预训练得到;
    • concept vector 是 上一环节 GCN 的顶层输出;
  • 每个三元组表示为: 头实体、尾实体、关系三个向量的串联,得到 triple vector;
  • 使用LSTM编码三元组向量序列,得到 path vector:
    • [公式]

[公式] 可以视为问题中的 concept 和 候选项中的 concept 之间的潜在的关系。

聚集所有路径的表示,得到最终的 graph vector [公式] ;

1、这里使用了 Relation Network 的方法:

    • [公式]
    • statement vector [公式] 为 LM encoder [CLS] 的表示
    • 关于 RN 的介绍可以参考这篇文章:

徐阿衡:论文笔记 - A simple neural network module for relational reasoning(2017)​zhuanlan.zhihu.com图标

2、通过mean-pooling计算graph vector:这种计算方式称为 GCN-LSTM-mean

    • [公式]

通过这种简单的方式将分别从 symbolic space 和 semantic space 中计算的relational representation 进行融合。

3、最终候选项的 plausibility 打分:[公式]

 

2.2.3 Hierarchical Attention Mechanism

考虑到不同的路径对推理的重要程度不同,采用 mean-pooling 不是一种比较可取的方式。

基于此,本文提出了 hierarchical path-based attention 机制,有选择地聚集重要的path vector 以及更重要的QA concept 对。

分别从 path-level 和 concept-pair-level attention 来学习 根据上下文建模图表示:

1、path-level:

  • [公式]
  • [公式]
  • [公式]

2、concept-pair level:

  • [公式]
  • [公式]

3、最终的graph vector: [公式]

Experiments

Transferability

Case Study on Interpretibility

Error Analysis

negative reasoning

  • graph grounding 对否定词不敏感

comparative reasoning strategy

  • 没有进行答案之间的比较

subjective reasoning

  • 有些答案是根据带有主观性的推理得到的

Analysis & Summary

  • KAGNET 可以看做是 knowledge-augmented Relation Network (RN) module

参考

  1. ^Philip N Johnson-Laird. 1980. Mental models in cognitive science. Cognitive science, 4(1):71–115.
  2. ^Drew A. Hudson and Christopher D. Manning. 2018. Compositional attention networks for machine reasoning. In Proc. of ICLR.

这篇关于EMNLP2019 | Knowledge-Aware Graph Networks的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/967549

相关文章

图神经网络框架DGL实现Graph Attention Network (GAT)笔记

参考列表: [1]深入理解图注意力机制 [2]DGL官方学习教程一 ——基础操作&消息传递 [3]Cora数据集介绍+python读取 一、DGL实现GAT分类机器学习论文 程序摘自[1],该程序实现了利用图神经网络框架——DGL,实现图注意网络(GAT)。应用demo为对机器学习论文数据集——Cora,对论文所属类别进行分类。(下图摘自[3]) 1. 程序 Ubuntu:18.04

SIGMOD-24概览Part7: Industry Session (Graph Data Management)

👇BG3: A Cost Effective and I/O Efficient Graph Database in ByteDance 🏛机构:字节 ➡️领域: Information systems → Data management systemsStorage management 📚摘要:介绍了字节新提出的ByteGraph 3.0(BG3)模型,用来处理大规模图结构数据 背景

A Comprehensive Survey on Graph Neural Networks笔记

一、摘要-Abstract 1、传统的深度学习模型主要处理欧几里得数据(如图像、文本),而图神经网络的出现和发展是为了有效处理和学习非欧几里得域(即图结构数据)的信息。 2、将GNN划分为四类:recurrent GNNs(RecGNN), convolutional GNNs,(GCN), graph autoencoders(GAE), and spatial–temporal GNNs(S

Neighborhood Homophily-based Graph Convolutional Network

#paper/ccfB 推荐指数: #paper/⭐ #pp/图结构学习 流程 重定义同配性指标: N H i k = ∣ N ( i , k , c m a x ) ∣ ∣ N ( i , k ) ∣ with c m a x = arg ⁡ max ⁡ c ∈ [ 1 , C ] ∣ N ( i , k , c ) ∣ NH_i^k=\frac{|\mathcal{N}(i,k,c_{

Spring源码学习--Aware相关接口(beanNameAware接口/BeanFactoryAware接口/ApplicationContextAware接口)

可以先这样理解在Spring中以Aware结尾的接口的功能 看到Spring源码中接口以Aware结尾的接口(XXXAware)在Spring中表示对XXX可以感知,通俗点解释就是:如果在某个类里面想要使用spring的一些东西,就可以通过实现XXXAware接口告诉Spring,Spring看到后就会给你送过来,而接收的方式是通过实现接口唯一方法set-XXX.比如:有一个类想要使用当前

Complex Networks Package for MatLab

http://www.levmuchnik.net/Content/Networks/ComplexNetworksPackage.html 翻译: 复杂网络的MATLAB工具包提供了一个高效、可扩展的框架,用于在MATLAB上的网络研究。 可以帮助描述经验网络的成千上万的节点,生成人工网络,运行鲁棒性实验,测试网络在不同的攻击下的可靠性,模拟任意复杂的传染病的传

Convolutional Neural Networks for Sentence Classification论文解读

基本信息 作者Yoon Kimdoi发表时间2014期刊EMNLP网址https://doi.org/10.48550/arXiv.1408.5882 研究背景 1. What’s known 既往研究已证实 CV领域著名的CNN。 2. What’s new 创新点 将CNN应用于NLP,打破了传统NLP任务主要依赖循环神经网络(RNN)及其变体的局面。 用预训练的词向量(如word2v

【机器学习】生成对抗网络(Generative Adversarial Networks, GANs)详解

🌈个人主页: 鑫宝Code 🔥热门专栏: 闲话杂谈| 炫酷HTML | JavaScript基础 ​💫个人格言: "如无必要,勿增实体" 文章目录 生成对抗网络(Generative Adversarial Networks, GANs)详解GANs的基本原理GANs的训练过程GANs的发展历程GANs在实际任务中的应用小结 生成对

boost.graph之属性

相关宏 BOOST_INSTALL_PROPERTY #define BOOST_INSTALL_PROPERTY(KIND, NAME) \template <> struct property_kind<KIND##_##NAME##_t> { \typedef KIND##_property_tag type; \} 最终形式为 template <> struct proper

Image Transformation can make Neural Networks more robust against Adversarial Examples

Image Transformation can make Neural Networks more robust against Adversarial Examples 创新点 1.旋转解决误分类 总结 可以说简单粗暴有效