DGNN Survey

news2024/9/28 23:31:48

Dynamic Graph Definition

G = ( V , E , X ) G = (V, E, X) G=(V,E,X)

V = v 1 , v 2 , . . . , v m V = {v_1, v_2, ..., v_m} V=v1,v2,...,vm

E = e i , j E = {e_{i, j}} E=ei,j , e i , j = ( v i , v j , f i , j ) e_{i,j} = (v_i, v_j, f_{i,j}) ei,j=(vi,vj,fi,j) f i , j f_{i, j} fi,j 表示 边 e i , j e_{i, j} ei,j 的特征

X X X 是表示节点特征的矩阵,矩阵的每一行是一个节点的嵌入向量

Graph Focus Task:预测未知 Graph 的 label

Extrapolation & Interpolation Learning

学习动态图神经网络的动态变化,即学习动态图随时间演化的重复模式。动态图比静态图多了一维:即,时间维度。

  • Extrapolation Learning:基于之前的 t 个图结构,预测 t+1 的 label
  • Interpolation Learning:预测丢失的 label
  • Time Prediction:根据给定的输入事件,预测时间

动态图存储模型

动态图表示随着时间演变的图,不同类型的图演变是不一样的,有的变化得非常快而有的非常慢。

动态图可以被建模为两种形式,根据演化时间的表征:

  • 离散动态图 (DTDG):由一系列 snapshots 组成,每个 snapshot 是在某个固定的时间采集到的图结构
    • 对于节点和边频繁更新的图,使用 离散动态图 进行存储更节省内存,但是,如果观察频率设置得不当,可能会导致重要时间信息的丢失。
  • 连续动态图 (CTDG):图更新的时间流
    • 连续动态图可以捕获所有的时间信息

鉴于 DTDG 和 CTDG 的利弊,选择合适的图结构是很重要的,使用不同的图结构,对应的图神经网络算法不一样。

Encoder-Decoder Learning Framework

编码器:动态图的观测结果 -> 节点 embedding (图嵌入)

解码器:对图嵌入进行解码,并预测

可以尝试不同的编码器解码器的组合,直到得到最优与具体任务的模型

图聚焦任务:设计一种聚合方法,将节点嵌入聚合到图嵌入中

Implicit & Explicit Learning Model

给定算法是显式还是隐式地将时间作为输入特征

  • 隐式时间学习模型:不会将时间作为一种独立特征输入到模型中

The success of temporal learning relies on the time based ordering of the input snapshots and the regular observation frequency

  • 显式时间学习模型:将时间作为一种显式的输入特征

显式时间学习模型具有 periodicity recognitionvector clock recognition 的能力,而隐式时间学习模型不具有这种能力

Periodicity Recognition 周期性识别

对于离散动态图,顺序模型可以学习周期模式,模型可以通过输入快照的顺序和位置来推断底层的时间戳。对于连续动态图,没有明确使用时间,这是不可行的。

Time2Vec 可以编码时间,利用时间编码,CTDG 可以更好地学习周期模式。

Vector Clock Recognition 向量时钟识别

起始节点 到 目标节点 的时间距离,是评估信息从起始节点流动到目标节点所需时间的度量。

Vector Clock:用来表示每个节点时序的一个向量,可以用来推理节点之间的出现前后关系

时间模式学习

给定 t 时刻 动态图 G t G_t Gt 的状态 ( E t , X t , t ) (E_t, X_t, t) (Et,Xt,t) E t E_t Et 表示 t 时刻的边连接关系,X_t 表示 t 时刻的节点嵌入矩阵,实现模式可以表示为:

在这里插入图片描述

其中,tp() 可分为三个阶段

在这里插入图片描述

Attribute Self-Updating

asu() 捕获外部因素对图演化(节点、边、整图属性变化)的影响,并输出 X t n + 1 ′ X'_{t_{n+1}} Xtn+1 表示 t n + 1 t_{n+1} tn+1 时刻 X 的估计

根据任务的不同,属性可能是节点属性、边属性、图属性

Association Process

描述动态图节点连接的演化过程

ap() 根据 t 时刻 节点特征、边连接、下一时刻的X估计,生成新的连接关系

Message Passing

在图分析中,假设节点是会受其邻居的影响的(Inductive Bias),Message Passing 的设计是为了学习节点如何受其邻居的影响。

Message Passing 是一种局部领域信息聚合的方法, 其通过聚合相邻节点 和边连接来更新节点embedding

离散动态图学习

static graph encoder - sequential decoder framework

在这里插入图片描述

输入DTDG的 t 个 snapshot,static graph encoder 生成 t 个 snapshot 的图嵌入矩阵,然后由 sequential decoder 进行预测

在这里插入图片描述

Static Graph Encoder

Non-Attributed Static Graph Encoder

不作关注,但是容易过拟合的任务可以尝试这个

Attributed Static Graph Encoder

这部分大多基于GNN,使用 Message Passing 来聚合邻居节点

Sequential Decoder

DTDG的有督促学习中,时间模式通过 snapshot 的演变过程来捕获

  • 时序分析方法:EMA、ARIMA
  • RNN 家族
  • 一维卷积
  • Temporal Self-Attention

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

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

相关文章

M1/M2 通过VM Fusion安装Win11 ARM,解决联网和文件传输

前言 最近新入了Macmini M2,但是以前的老电脑的虚拟机运行不起来了。😅,实际上用过K8S的时候,会发现部分镜像也跑不起来,X86的架构和ARM实际上还是有很多隐形兼容问题。所以只能重新安装ARM Win11,幸好微软…

【初阶C语言】整数比大小

各位大佬的光临已是上上签 在C语言刷题过程中,一定遇到过很多比大小的题目,那么本节就专门介绍比大小的方法,若大佬们还有更优解,欢迎补充呀! 本节讲解的方法主要有三种:1.条件判断 2.三目操作符 3.函数调…

JA64 1+2+3+...n

一、题目 求123...n_牛客题霸_牛客网 二、代码 1.使用静态成员变量构造函数 class SUM {private:static int _i;static int _ret;public:SUM(){_ret _ret _i;_i;}static int GetRet(){return _ret;} }; int SUM::_i1; int SUM::_ret0;class Solution { public:int Sum_So…

暴力求解--完数个数(等于本身之外的因子之和)

找出10000以内的自然数中的所有完数&#xff0c;并统计找到的完数个数。 #include<stdio.h> int main() {//找到10000以内所有的完数&#xff08;等于恰好等于它本身之外的因子之和&#xff09;&#xff0c;并统计完数个数。int n,i,s,count0;printf("找到的所有完…

jsonp 实现跨域 同时也是一个 webflux 的demo 示例

文章目录 核心原理代码html服务端 &#xff08;java 为例子&#xff09;服务端目录结构 核心原理 前端&#xff1a; 使用js 创建 script 标签&#xff0c;将请求地址&#xff0c;放到其src 中&#xff0c;并将 script 标签追加到文档流&#xff1b;后端&#xff1a;根据约定好…

Latex好看的引用(文献,url, 文内引用)

强迫症实锤了&#xff0c;完全符合本人审美&#xff01;&#xff01;&#xff01; \usepackage{hyperref} \hypersetup{ hidelinks, colorlinkstrue, linkcolorIndigo, urlcolorDeepSkyBlue4, citecolorIndigo }基本还原了 哼&#xff0c;欺负老子色彩妹那么敏感是吧&…

WIZnet W51000S-EVB-PICO 入门教程(一)

概述 W5100S-EVB-Pico是基于树莓派RP2040和全硬件TCP/IP协议栈控制器W5100S的微控制器开发板-基本上与树莓派Pico板相同&#xff0c;但通过W5100S芯片增加了以太网功能。 W5100S-EVB-Pico特点 RP2040规格参数 双核Arm Cortex-M0 133MHz264KB 高速SRAM和2MB板载内存通过…

Docker复杂命令便捷操作

启动所有状态为Created的容器 要启动所有状态为"created"的Docker容器&#xff0c;可以使用以下命令&#xff1a; docker container start $(docker container ls -aq --filter "statuscreated")上述命令执行了以下步骤&#xff1a; docker container l…

【Linux】-进程概念及初始fork

&#x1f496;作者&#xff1a;小树苗渴望变成参天大树&#x1f388; &#x1f389;作者宣言&#xff1a;认真写好每一篇博客&#x1f4a4; &#x1f38a;作者gitee:gitee✨ &#x1f49e;作者专栏&#xff1a;C语言,数据结构初阶,Linux,C 动态规划算法&#x1f384; 如 果 你 …

C++ 拷贝构造函数

拷贝构造函数是一种特殊的构造函数&#xff0c;具有一般构造函数的所有特性&#xff0c;其形参是本类的对象的引用。其作用是使用一个已经存在的对象&#xff08;由拷贝构造函数的参数指定&#xff09;&#xff0c;去初始化同类的一个新对象。 如果程序员没有定义类的拷贝构造函…

自动驾驶感知系统--惯性导航定位系统

惯性导航定位 惯性是所有质量体本身的基本属性&#xff0c;所以建立在牛顿定律基础上的惯性导航系统&#xff08;Inertial Navigation System,INS&#xff09;(简称惯导系统)不与外界发生任何光电联系&#xff0c;仅靠系统本身就能对车辆进行连续的三维定位和三维定向。卫星导…

Ubuntu-文件和目录相关命令一

&#x1f52e;linux的文件系统结构 ⛳目录结构及目录路径 &#x1f9e9;文件系统层次结构标准FHS Filesystem Hierarchy Standard(文件系统层次结构标准&#xff09; Linux是开源的软件&#xff0c;各Linux发行机构都可以按照自己的需求对文件系统进行裁剪&#xff0c;所以众多…

MyBatisPlus从入门到精通-3

紧接着上一篇的查询 接下来的重点介绍增删改操作了 Insert id&#xff08;主键&#xff09;生成策略 前面的案列中我们没有指定id字段 但是它是生成了一个很长的id&#xff0c;并不是我们数据表定义自增 这是Mp内部算法出来的一个值 其实根据不同应用场景&#xff0c;应该使…

抖音SEO源代码的部署与搭建技巧详解

抖音SEO源代码的部署与搭建是一项重要的技术&#xff0c;促进了抖音的发展。在此&#xff0c;我将为大家详细介绍抖音SEO源代码的部署与搭建技巧。 首先&#xff0c;我们需要了解抖音SEO源代码的含义。SEO源代码是搜索引擎优化的核心&#xff0c;它是用于帮助搜索引擎更好地理解…

PHP使用Redis实战实录3:数据类型比较、大小限制和性能扩展

PHP使用Redis实战实录系列 PHP使用Redis实战实录1&#xff1a;宝塔环境搭建、6379端口配置、Redis服务启动失败解决方案PHP使用Redis实战实录2&#xff1a;Redis扩展方法和PHP连接Redis的多种方案PHP使用Redis实战实录3&#xff1a;数据类型比较、大小限制和性能扩展 数据类型…

pytorch的发展历史,与其他框架的联系

我一直是这样以为的&#xff1a;pytorch的底层实现是c(这一点没有问题&#xff0c;见下边的pytorch结构图),然后这个部分顺理成章的被命名为torch,并提供c接口,我们在python中常用的是带有python接口的&#xff0c;所以被称为pytorch。昨天无意中看到Torch是由lua语言写的&…

docker 部署 mysql8.0 无法访问

文章目录 &#x1f5fd;先来说我的是什么情况&#x1fa81;问题描述&#x1fa81;解决方法&#xff1a;✔️1 重启iptables✔️2 重启docker &#x1fa81;其他有可能连不上的原因✔️1 客户端不支持caching_sha2_password的加密方式✔️2 my.conf 配置只有本机可以访问 &#…

用JavaScript和HTML实现一个精美的计算器

文章目录 一、前言二、技术栈三、功能实现3.1 引入样式3.2 编写显示页面3.2 美化计算器页面3.3 实现计算器逻辑 四、总结 一、前言 计算器是我们日常生活中经常使用的工具之一&#xff0c;可以帮助我们进行简单的数学运算。在本博文中&#xff0c;我将使用JavaScript编写一个漂…

【我们一起60天准备考研算法面试(大全)-第二十八天 28/60】【枚举】

专注 效率 记忆 预习 笔记 复习 做题 欢迎观看我的博客&#xff0c;如有问题交流&#xff0c;欢迎评论区留言&#xff0c;一定尽快回复&#xff01;&#xff08;大家可以去看我的专栏&#xff0c;是所有文章的目录&#xff09;   文章字体风格&#xff1a; 红色文字表示&#…

VBA技术资料MF35:VBA_在Excel中过滤数据

【分享成果&#xff0c;随喜正能量】好马好在腿&#xff0c;好人好在嘴。不会烧香得罪神&#xff0c;不会讲话得罪人。慢慢的你就会发现&#xff0c;一颗好心&#xff0c;永远比不上一张好嘴。。 我给VBA的定义&#xff1a;VBA是个人小型自动化处理的有效工具。利用好了&#…