在图神经网络(GNN)上进行关系推理的新架构

       开发能够学习推理的模型是一个众所周知的具有挑战性的问题,在这个领域中,使用图神经网络(GNNs)似乎是一个自然的选择。然而,以往关于使用GNNs进行推理的工作表明,当这些模型面对需要比训练时更长推理链的测试样本时,它们往往会失败。这表明GNNs缺乏以系统化的方式从训练样本中泛化出推理规则的能力,这将根本性地限制它们的推理能力。

       一个常见的解决方案是转而依赖神经符号方法,这些方法由于其设计,能够以系统化的方式进行推理。然而,这些方法的可扩展性通常受到限制,并且它们倾向于依赖过于强烈的假设,例如,假设通过检查单一关系路径就能回答问题。

     本文重新审视了使用GNNs进行推理的想法,展示了只要提供正确的归纳偏差,系统泛化是可能的基于此提出了一种新的 GNN 架构,将节点嵌入视为知识状态,并利用前向和反向模型来模拟所有可能的组合顺序,从而实现系统推理

1 学习推理的现状

1.1 神经网络推理研究现状

  • 基于前馈模型: 例如,知识图谱嵌入方法将实体和关系嵌入到低维空间,以便进行推理。
  • 基于循环模型: 例如,循环神经网络 (RNN) 可以处理序列数据,并用于推理实体之间的关系。
  • 基于 GNN: 例如,图卷积网络 (GCN) 可以有效地学习图结构中的节点表示,并用于推理实体之间的关系。

1.2 GNN 在推理任务中的局限性

  • 缺乏系统泛化能力: GNN 模型通常只能处理训练数据中出现的推理链,难以泛化到训练数据以外的任务。
  • 局部信息传递: GNN 模型通过局部信息传递来更新节点表示,这可能导致节点表示“过载”,即包含来自所有路径的信息。
  • 顺序处理关系路径: GNN 模型只能顺序处理关系路径,难以处理需要组合多个关系路径的推理任务。

1.3 神经符号方法在推理方面的优势

  • 关注关系路径: 神经符号方法通过考虑所有可能的关系路径来模拟推理过程,这为模型提供了有用的归纳偏差。
  • 组合关系路径: 神经符号方法可以将多个关系路径组合成一个新的关系,从而更准确地预测实体之间的关系。

1.4 本文模型与 Edge Transformers 的相似之处

  • 本文模型和 Edge Transformers 都利用 GNN 来学习实体之间的关系。
  • 本文模型和 Edge Transformers 都关注关系路径的建模,但本文模型通过将节点嵌入视为知识状态来提供更强的归纳偏差。
  • 本文模型和 Edge Transformers 都能够处理系统推理任务,但本文模型通过利用前向和反向模型来模拟所有可能的组合顺序,从而更有效地处理多个关系路径的组合。

2 GNN新架构

框架的概览

2.1 核心思想

  • 推理涉及知识状态的操纵: 推理过程可以看作是迭代地细化实体之间可能关系集合的过程。
  • 节点嵌入表示知识状态: 节点嵌入应该编码实体之间可能关系的概率分布,而不是简单的节点特征。
  • 利用前向和反向模型: 利用前向和反向模型来模拟所有可能的组合顺序,从而更有效地处理多个关系路径的组合。

2.2 模型结构

2.2.1 前向模型

  • 初始化: 将头实体的节点嵌入初始化为 (1, 0, …, 0),表示与自身相同的关系;其他实体的节点嵌入初始化为均匀分布,表示未知的关系。
  • 更新: 使用消息传递机制来更新节点嵌入。消息传递函数将头实体与其他实体之间的可能关系编码为概率分布,并通过组合操作来更新节点嵌入。
  • 组合函数: 使用二值组合函数将两个关系组合成一个新的关系,并假设关系之间可以由基本关系之一来描述。
  • 聚合: 使用聚合函数来将来自不同路径的信息整合起来,例如使用最小池化操作。

2.2.2 反向模型

  • 初始化: 将尾实体的节点嵌入初始化为 (1, 0, …, 0),表示与自身相同的关系;其他实体的节点嵌入初始化为均匀分布,表示未知的关系。
  • 更新: 使用消息传递机制来更新节点嵌入。消息传递函数将其他实体与尾实体之间的可能关系编码为概率分布,并通过组合操作来更新节点嵌入。
  • 组合函数: 使用二值组合函数将两个关系组合成一个新的关系,并假设关系之间可以由基本关系之一来描述。
  • 聚合: 使用聚合函数来将来自不同路径的信息整合起来,例如使用最小池化操作。

2.2.3 前向-反向模型

  • 组合: 将前向模型和反向模型的节点嵌入组合起来,以获得头实体与尾实体之间的最终关系表示。
  • 聚合: 使用聚合函数来整合来自不同路径的信息,例如使用最小池化操作。

2.3 训练方法

  • 使用边缘损失函数来训练模型,目标是最小化预测关系与真实关系之间的交叉熵损失。
  • 为了提高模型的泛化能力,可以联合训练多个子模型,每个子模型关注不同方面的关系。

2.4 模型优势

  • 系统泛化能力: 通过将节点嵌入视为知识状态,并利用前向和反向模型来模拟所有可能的组合顺序,模型能够有效地处理系统推理任务。
  • 高效性: 模型设计简洁,计算成本较低,可以处理大规模图。
  • 可解释性: 模型易于解释,因为节点嵌入可以直观地表示实体之间可能关系的概率分布。

3 实验

3.1 实验设置

3.1.1 数据集

  • CLUTRR: 一个基于家庭关系的推理基准,包含不同长度的推理链。数据集包含一系列家庭关系的叙述,例如 “Bob 是 Alice 的父亲,Alice 是 Eve 的母亲”,并要求模型推断 Bob 是否是 Eve 的祖父。
  • GraphLog: 一个基于逻辑规则的推理基准,包含不同规模的图和不同长度的推理链。
  • RCC-8: 一个基于 RCC-8 计算的推理基准,要求模型组合多个关系路径来推理实体之间的关系。数据集包含一系列图,图中的节点代表区域,边代表 RCC-8 关系,例如 “a 是 b 的内部” 或 “a 和 b 相交”。
  • Allen’s Interval Algebra: 一个基于时间间隔代数的推理基准,类似于 RCC-8。数据集包含一系列图,图中的节点代表时间间隔,边代表 Allen 区间代数关系,例如 “a 早于 b” 或 “a 与 b 相交”。

3.1.2 基线方法

神经符号方法在系统归纳方面表现出色,但效率较低,并且依赖于强假设。Transformer 变体和图神经网络则更加高效,但它们通常无法处理联合规则或需要从多个关系路径中聚合信息的情况

3.1.2.1 神经符号方法

  • 神经定理证明 (NTP): 这类方法模拟传统的逻辑程序反向推理过程,使用软统一机制来实现可微性,从而学习规则并应用这些规则进行推理。例如,CTP 和 GNTP 都是 NTP 的变体,它们使用不同的方法来加速反向推理过程。
  • 神经组合规则学习 (NCRL): 这类方法通过学习隐式规则来学习关系路径的组合,并通过注意力机制来选择相邻关系进行组合。R5 也是类似的方法,但它使用蒙特卡洛树搜索来确定关系的组合顺序。

3.1.2.2 图神经网络

  • 图卷积网络 (GCN): 这类方法使用局部消息传递来更新节点表示,并通过聚合来自相邻节点的信息来学习关系。
  • 关系图卷积网络 (R-GCN): 这类方法是 GCN 的变体,使用关系特定的线性变换来计算消息,类似于我们的模型,但没有我们的归纳偏置。
  • 图注意力网络 (GAT): 这类方法是 GCN 的变体,使用基于注意力的聚合机制来处理节点之间的依赖关系。
  • 边缘图注意力网络 (E-GAT): 这类方法是 GAT 的变体,考虑了边类型,并使用 LSTM 模块来组合相邻节点的嵌入和边类型的嵌入。
  • 神经贝尔曼-福特网络 (NBFNet): 这类方法学习特定头节点的节点嵌入,并捕捉与头节点之间的关系,类似于我们的模型,但没有我们的归纳偏置。
  • 循环神经网络 (RNN)、长短期记忆网络 (LSTM) 和门控循环单元 (GRU): 这些方法使用循环结构来处理序列数据,并尝试通过采样路径和编码路径来推理关系。

3.1.2.3 Transformer

边缘转换器 (ET): 这类方法修改了 Transformer 模型,使用注意力机制来模拟关系组合。它们将节点嵌入解释为图的边表示,并通过组合相邻边的嵌入来更新节点表示。

3.1.3 评价指标

使用准确率来评估模型的性能。

3.2 实验结果

CLUTRR: 本文提出的 FB 模型在所有推理链长度上均优于 GNN 和 RNN 基线,与 ET 和神经符号方法 NCRL 和 R5 性能相当。

GraphLog: 本文提出的 FB 模型在大多数情况下优于 R5 和 NCRL,与 ET 和 GNN 基线性能相当。FB 模型在难度较大的图上表现更稳定。

RCC-8: 本文提出的 FB 模型在所有配置下均优于神经符号方法,与 ET 性能相当。FB-min 模型在所有配置下均取得了最佳性能。

Allen’s Interval Algebra: 本文提出的 FB 模型在所有配置下均优于神经符号方法,与 ET 性能相当。FB-min 模型在所有配置下均取得了最佳性能。

3.2.1 消融实验

  • 子模型数量: 减少子模型数量会导致性能下降,说明每个子模型都捕获了关系的重要方面。
  • 嵌入约束: 移除嵌入的非负约束会导致性能下降,说明嵌入需要编码概率分布。
  • 组合函数: 使用 distmul 作为组合函数会导致性能下降,说明二值组合函数更适合表示关系组合。
  • 前向-反向模型: 仅使用前向模型会导致性能下降,说明前向和反向模型都重要。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/48943.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

(leetcode学习)236. 二叉树的最近公共祖先

给定一个二叉树, 找到该树中两个指定节点的最近公共祖先。 百度百科中最近公共祖先的定义为:“对于有根树 T 的两个节点 p、q,最近公共祖先表示为一个节点 x,满足 x 是 p、q 的祖先且 x 的深度尽可能大(一个节点也可以是它自己的祖…

【北京迅为】《i.MX8MM嵌入式Linux开发指南》-第三篇 嵌入式Linux驱动开发篇-第五十一章 添加设备树节点

i.MX8MM处理器采用了先进的14LPCFinFET工艺,提供更快的速度和更高的电源效率;四核Cortex-A53,单核Cortex-M4,多达五个内核 ,主频高达1.8GHz,2G DDR4内存、8G EMMC存储。千兆工业级以太网、MIPI-DSI、USB HOST、WIFI/BT…

linux禁用root

linux禁用root 1. 禁止普通用户切换到root1.1 sudo -i和sudo -s的区别1.2 sudo -i和直接登录root账号的区别1.3 禁止sudo -i切换root1.4 禁止su - root切换root 2. 禁止root远程登录2.1 ssh禁止root登录2.2 禁止远程桌面登录 本文主要介绍: 如何禁止普通用户切换到r…

Java---后端事务管理

代码世界聚眸光,昼夜敲盘思绪长。 算法心间精构建,编程路上细思量。 屏前架构乾坤定,键上飞驰智慧扬。 默默耕耘成果现,创新科技铸辉煌。 目录 一,概念 二,Spring事务管理 三,rollbackFor事务回…

运维锅总浅析Kubernetes之Ceph

Ceph 的核心组件有哪些?Ceph读写数据流程及故障自愈是怎样的?如何对Ceph部署架构进行调优?如何用Ceph集成到kubernetes?希望本文能帮您解答这些疑惑! 一、Ceph简介 Ceph 是一个开源的分布式存储系统,旨在…

PySide(PyQt)使用QPropertyAnimation制作动态界面

主脚本: # encoding: utf-8 import os import sysfrom PySide6.QtCore import QPropertyAnimation, QEasingCurvefrom UIS import *# 主画面类 class MainWindow(QMainWindow, animationButton_ui.Ui_MainWindow):def __init__(self):super().__init__()self.setup…

韩顺平0基础学Java——第37天

p736-758 MySQL三层结构 1.所谓安装Mysql数据库,就是在主机安装一个数据库管理系统(DBMS),这个管理程序可以管理多个数据库。DBMS(database manage system) 2.一个数据库中可以创建多个表,以保存数据(信息)。 3.数据库管理系统(DBMS)、数据库和表的关系…

Android 性能之刷新率设置和管理

目录 1. 刷新率和帧率 2. 多种刷新率 3. 基本原理 3.1 屏幕 & 显示控制器 3.2 Composer Service 4. Framework 策略 4.1基本架构 4.2 刷新率设置项的定义 4.2.1 最低刷新率 4.2.2 默认刷新率 & 默认的用户设置刷新率 4.2.2.1 设置入口 4.2.2.2 设置场景 4…

从零开始:在linux系统安装MongoDB数据完整指南 新手常用命令

1 前言 MongoDB 是为快速开发互联网应用而设计的数据库系统。MongoDB 的设计目标是极简、灵活、作为 Web 应用栈的一部分。MongoDB 的数据模型是面向文档的,所谓文档是一种类似于json的结构。 官网教程:https://www.mongodb.com/docs/manual/ 2 安装部…

【接口自动化_11课_框架实战:基于封装的框架进行实战演练-下】

目标: 在原有基础上进行框架优化,本内容不做强制要求,了解即可。 1. Faker(伪造器)模块生成数据 2. 实战:结合框架动态生成请求数据 3. 实战:响应进行动态断言处理 一、 Faker&#xff…

LoFTR关键点特征匹配算法环境构建与图像匹配测试Demo

0,LoFTR CVPR 2021论文《LoFTR: Detector-Free Local Feature Matching with Transformers》开源代码 1,项目主页 LoFTR: Detector-Free Local Feature Matching with Transformers 2,GItHub主页 GitHub - zju3dv/LoFTR: Code for "…

微软蓝屏事件对企业数字化转型有什么影响?

引言:从北京时间2024年7月19日(周五)下午2点多开始,全球大量Windows用户出现电脑崩溃、蓝屏死机、无法重启等情况。事发后,网络安全公司CrowdStrike称,收到大量关于Windows电脑出现蓝屏报告,公司…

畅游时空|虚拟世界初体验,元宇宙游戏如何开发?

在元宇宙中,用户可以通过虚拟身份进行互动、社交、工作和娱乐,体验与现实世界平行的生活和活动。元宇宙不仅仅是一个虚拟空间,更是一个融合了虚拟和现实的生态系统,具有巨大的发展潜力和应用前景。 在不断发展的数字环境中&#x…

简单几步,教你使用scikit-learn做分类和回归预测

前言 scikit-learn是基于Python的一个机器学习库,你可以在scikit-learn库中选择合适的模型,使用它训练数据集并对新数据集作出预测。 对于初学者来说,有一个共同的困惑: 怎么使用scikit-learn库中的模型做预测? 本文…

IOS微软语音转文本,lame压缩音频

在IOS开发中,用微软进行语音转文本操作,并将录音文件压缩后返回 项目中遇到了利用微软SDK进行实时录音转文本操作,如果操作失败,那么就利用原始音频文件通过网络请求操作,最终这份文件上传到阿里云保存,考…

MongoDB教程(十五):MongoDB原子操作

💝💝💝首先,欢迎各位来到我的博客,很高兴能够在这里和您见面!希望您在这里不仅可以有所收获,同时也能感受到一份轻松欢乐的氛围,祝你生活愉快! 文章目录 引言一、MongoD…

11 深度推荐模型演化中的“范式替换“灵活组合

上一课时,我们介绍了 DIEN 模型添加了 RNN中 的 GRU,使模型获得了对序列数据的建模能力;而 DSIN 模型不仅使用了 RNN 中的 bi-LSTM,还使用了 Transformer 组件。 由此可见,在新的演化模型中,根据场景和数据…

Lua脚本简单理解

目录 1.安装 2.语法 2.1Lua数据类型 2.2变量 2.3lua循环 2.4流程控制 2.5函数 2.6运算符 2.7关系运算符 3.lua脚本在redis中的使用 3.1lua脚本再redis简单编写 3.2普通锁Lua脚本 3.3可重入锁lua脚本 1.安装 centos安装 安装指令: yum -y update yum i…

本地部署VMware ESXi服务实现无公网IP远程访问管理服务器

文章目录 前言1. 下载安装ESXi2. 安装Cpolar工具3. 配置ESXi公网地址4. 远程访问ESXi5. 固定ESXi公网地址 前言 在虚拟化技术日益成熟的今天,VMware ESXi以其卓越的性能和稳定性,成为了众多企业构建虚拟化环境的首选。然而,随着远程办公和跨…

CCS光源的高输出TH2系列平面光源

光源在机器视觉系统中起着重要作用,不同环境、场景及应用合适光源都不一样,今天我们来看看高输出TH2系列平面光源。它可以对应高速化的生产线,为提高生产效率做出贡献。 TH2系列光源的特点: 1、实现了更高一级的高亮度 实现了更…