小白首次发笔记,仅供学习参考

1 DILR简介

论文:https://aclanthology.org/2022.acl-long.343.pdf

DILR(Deep Inductive Logic Reasoning)深度感应逻辑推理模型提出了一种基于深度学习的归纳逻辑推理方法,该方法首先提取查询相关(候选相关)信息,然后通过诱导包含目标关系的可行规则对过滤后的信息进行逻辑推理。推理过程是通过具有新的可微逻辑运算符的注意记忆来完成的。

DILR由两个部分组成:1)一个分层的注意阅读器,从给定的文档中过滤与查询相关和候选相关的信息;2)一个多跳推理器,通过仔细选择适当的谓词来形成候选规则,并根据给定的例子进行归纳逻辑推理。

2 DILR推理规则

DILR模拟了一个考虑不同推理步骤数量的多跳推理过程。它是一个端到端由两个组件组成的端到端框架:一个层次注意阅读器和一个多跳推理器。阅读器学会从给定的文档中选择相关信息,以产生查询感知、候选感知和桥接实体表示。这些表示被传递给多跳推理器来实例化逻辑原子,以便生成和计算与查询关系相关的子句。多跳推理器通过attentive memories进行规则归纳,attentive memories选择原子形成新的子句,而新的可微逻辑算子为生成的子句产生概率值。最终的损失可以顺利地反向传播,以更新阅读器为更准确的选择。

层次分析阅读器

为了避免现成的命名实体提取的NER工具带来的不可避免的错误,建议使用attentive 阅读器来提取相关信息。由于每个问题都涉及到多个文档(上下文),因此设计了一个2级层次的注意网络来逐步过滤令牌级和上下文级的信息。具体来说,令牌级注意的目的是在每个上下文中选择与lhop(l=0,...,L)相关的实体。然后,注意力关注每个情境,考虑不同的推理跳数来产生最终的表征。

令牌层注意力

首先,采用主题到上下文的注意来寻找与每个上下文中的主题相似的标记:

,其中ws是一个可学习的变换向量,[;]表示连接。我们通过对每一行αs的softmax操作,获得了主题中的第i个标记和上下文中的第j个标记之间的标准化相似度得分αs ij。

0跳上下文表示的计算公式

其中,βis通过自注意来衡量主题标记的贡献:βs=softmax(¯ws⊤S+bs)。类似地,我们为第j个上下文标记w.r.t.生成一个注意力分数αa ij第i个候选令牌和一个候选感知的上下文表示。用s=βsS和a=βaA分别表示查询主题和候选实体的特征表示

对于(l+1)-跳推理(l≥0),采用上下文到上下文的注意

给定了l-hop表示hl,在其中h0=hs。在Bl+1的每一行上应用一个软max操作符后,我们使用αl+1ij来表示第i个和第j个上下文标记之间的标准化注意分数。使用¯αj0=¯αjs,(l+1)-跳桥接上下文表示将变成

l+1跳上下文表示的计算公式

内容层注意力

有多个上下文可用,使用上下文层注意力来生成最终的l-hop特性表示。当l=0时,模型关注每个上下文,以产生上下文参与的主题表示。

¯hs包含了原始特征和参与信息。类似的程序也适用于每个候选实体来生产¯ha。当l>0时,上下文层注意力的目的是产生每个上下文被选择为桥接实体的概率。

桥接实体概率的计算公式

多跳推理器

多跳推理器的目的是通过进行复杂的推理,首先生成可能的逻辑子句,然后通过实例化从阅读器那里获得的相关上下文的变量来评估每个子句。子句生成过程由注意记忆参数化,注意记忆计算选择每个原子形成相关子句以包含查询关系的概率。

然后,子句计算过程是实例化每个原子中的变量,如查询主题、候选实体或桥接实体。来自阅读器的输出,即¯hs,¯ha和{hlk}的(l>0),可以作为这些常数的特征表示,以计算子句计算和更新的原子分数。

子句生成与评估

子句生成过程分为两个阶段:1)仅使用存在谓词生成定义发明的谓词的子句;2)仅使用发明的谓词生成定义查询关系q的最终子句。通过计算每个谓词的注意权重来表示其出现在子句主体中的概率来参数化这两个阶段(给谓词分配可学习的嵌入来表示其语义)。

谓词注意力权重的计算公式

谓词嵌入矩阵的计算公式

给定目标关系q的嵌入后,使用多头注意机制来计算每个头h的谓词的概率分布,产生最终子句

子句的评估提出新的神经逻辑算子G

神经逻辑算子的计算公式

神经网络谓词概率分布的计算公式

估价函数的公式

3 DILR推理小结

DILR考虑不同推理步骤数量的多跳推理。由一个层次注意阅读器和一个多跳推理器构成,基于深度学习进行逻辑推理。亮点是引入了深度学习的归纳推理方法来细化阅读器和推理器,缺点是计算量大。阅读器部分进行了分层操作,通过多层来学习过滤与查询信息的操作;推理器并行计算多跳的输出结果,然后输入到评估器中,通过评估器选择答案。在评估器中作者提出了一个新的神经逻辑算子作为评估函数的一部分。这个计算成本我都不敢想。

这个框架就是结合了神经网络和阅读器-检索器的架构

Deep Inductive Logic Reasoning深度感应逻辑推理模型 论文笔记相关推荐

  1. AggPose: Deep Aggregation Vision Transformer for Infant Pose Estimation 论文笔记

    IJCAI 2022- AggPose:用于婴儿姿态估计的深度聚合 vision transformer 论文链接 To appear in the 31th International Joint ...

  2. Batch Normalization: Accelerating Deep Network Training by Reducing Internal Covariate Shift 论文笔记

    Batch Normalization: Accelerating Deep Network Training by Reducing Internal Covariate Shift 论文链接: h ...

  3. Deep Learning for Image and Point Cloud Fusion in Autonomous Driving: A Review(自动驾驶图像点云融合深度学习综述)论文笔记

    原文链接:https://arxiv.org/pdf/2004.05224.pdf II.深度学习的简要回顾 B.点云深度学习 本文将点云深度学习方法分为5类,即基于体素.基于2D视图.基于点.基于图 ...

  4. 《Guiding Deep Learning System Testing using Surprise Adequacy》论文笔记

    Guiding Deep Learning System Testing using Surprise Adequacy 原文:Guiding Deep Learning System Testing ...

  5. 深度学习语义分割论文笔记(待完善)

    在深度学习这一块儿,我最开始使用Unet进行了冠状动脉血管的分割 再后来,我尝试改进Unet,改进损失函数,让网络能有不错的效果 再后来,看到了注意力机制,读了attention unet, 于是,我 ...

  6. Batch Normalization:Accelerating Deep Network Training by Reducing Internal Covariate Shift 论文笔记

    0 摘要 当前神经网络层之前的神经网络层的参数变化,会引起神经网络每一层输入数据的分布产生变化,这使得训练一个深度神经网络变得复杂.通过设置较小的学习率以及更谨慎的初始化参数减慢了训练,并且由于非线性 ...

  7. 【BTAS 2018】DeepMasterPrints深度万能指纹(论文笔记+全文精读翻译+PPT+PDF注解)

    DeepMasterPrints: Generating MasterPrints for Dictionary Attacks via Latent Variable Evolution 深度万能指 ...

  8. CVPR 2018 TRACA:《Context-aware Deep Feature Compression for High-speed Visual Tracking》论文笔记

    理解出错之处望不吝指正. 本文的模型叫做TRACA.模型中使用多个expert auto-encoder,在预训练阶段,每个expert auto-encoder针对一个特定类进行训练:在tracki ...

  9. Deep learning in video multi-object tracking A survey 论文笔记

  10. Neural Networks and Deep Learning - 神经网络与深度学习 - Overfitting and regularization - 过拟合和正则化

    Neural Networks and Deep Learning - 神经网络与深度学习 - Overfitting and regularization - 过拟合和正则化 Neural Netw ...

最新文章

  1. java中实现选择文件_Java 实现文件选择对话框及功能
  2. VTK:PolyData之MergePoints
  3. 线性代数:二次型为什么可以用矩阵表示?——分组因式分解推导
  4. Mysql语句与应用
  5. pandas.DataFrame的pivot()和unstack()实现行转列
  6. 阿里巴巴CTO王坚:省长也是开发者
  7. kindeditor上传图片编辑框乱码问题
  8. HTTP Live Streaming基础知识
  9. 车用计算机电路板,使用车充、LED头灯电路板制作1.5V电源模块(可代替1号电池)...
  10. 计算机网络与多媒体技术内容,计算机网络多媒体技术应用
  11. 转载自www.dezai.cn 常用sql统计
  12. 逻辑思维类面试题汇编七
  13. MySQL 主从复制类型及详解
  14. <2021SC@SDUSC>博客(9)山东大学软件工程应用与实践Jpress代码分析(8)
  15. EasyUI Treegrid 树形网格(官网没有提到的实现方式)
  16. Spring Retry # Stateful Retry
  17. 工作流管理系统的概念介绍
  18. 通过MES如何提高生产效率
  19. 乐Pro3_乐视X728_官方线刷包_救砖包_解账户锁
  20. 美狐美颜SDK最常用功能代码解析

热门文章

  1. [小物分享] “Cap-less”——烂笔头3088
  2. 什么时候做都不晚——十大大器晚成的人物
  3. ARM服务器市场现状研究分析-
  4. React从零到一Demo演练(上)
  5. ffmpeg linux 升级_linux系统部署ffmpeg视频转码环境及使用方法 | linux系统运维
  6. 【Google Chrome】打开本地html文件报错问题
  7. nodejs调用wasm系列-保利威视-难度等级二
  8. 不会英语能学java_不会英语可以学java吗 不会英语怎么学java?
  9. Java/JVM垃圾回收机制和算法总结
  10. DHCP 客户端移动位置后无法获取IP地址的解决办法和原因分析