用于图生成的自回归扩散模型 笔记

news2024/9/20 18:38:06

1 Title

        Autoregressive Diffusion Model for Graph Generation(Lingkai Kong、Jiaming Cui、Haotian Sun、Yuchen Zhuang、B. Aditya Prakash、Chao Zhang)【PMLR 2022】

2 Conclusion        

        This study propose an autoregressive diffusion model for graph generation. Unlike existing methods, we define a node-absorbing diffusion process that operates directly in the discrete graph space. For forward diffusion, it designs a diffusion ordering network, which learns a datadependent node absorbing ordering from graph topology. For reverse generation, it designs a denoising network that uses the reverse node ordering to efficiently reconstruct the graph by predicting the node type of the new node and its edges with previously denoised nodes at a time.Based on the permutation invariance of graph, it shows that the two networks can be jointly trained by optimizing a simple lower bound of data likelihood.

3 Good Sentences

        1、Diffusion-based graph generative models have recently obtained promising results for graph generation. However, existing diffusion-based graph generative models are mostly one-shot generative models that apply Gaussian diffusion in the dequantized adjacency matrix space. Such a strategy can suffer from difficulty in model training, slow sampling speed, and incapability of incorporating constraints.(The difficult problems of previous works has not solve.)
        2、Diffusion models decompose the full complex transformation between noise and real data into man small steps of simple diffusion. Compared with prior deep generative models, diffusion models enjoy both flexibility in modeling architecture and tractability of the model’s probability distributions.(The advantages of Diffusion Model which used in graph generates)
        3、While ARDM offers an efficient and general diffusion framework for discrete data, two key questions remain to be addressed for applying ARDM for graphs: (1) How do we define absorbing states for inter-dependent nodes and edges in graphs without losing the efficiency of ARDM? (2) While ARDM imposes a uniform ordering for arriving at an orderagnostic variational lower bound (VLB) of likelihood, a random ordering fails to capture graph topology(There are still two problems which needed to solve in ARDM)
        4、Compared with the random diffusion ordering, our design has two benefits: (1) We can automatically learn a datadependent node generation ordering which leverages the graph structural information. (2) We can consider the diffusion ordering network as an optimized proposal distribution of importance sampling for computing the data likelihood,
which is more sample-efficient than a uniform proposal distribution.(The advantages of this method)


        从目标分布生成图形是许多领域的基本问题,传统随机图模型方法用强大的深度生成模型拟合图形数据,包括变分自编码器(VAEs) 、生成对抗网络、归一化流(Madhawa等人,2019)和基于能量的模型(EBMs) ,这些模型捕获复杂的图结构模式,然后生成具有所需属性的新的高保真图。

与已有的深度生成模型相比,扩散模型既具有建模结构的灵活性,又具有模型概率分布的可追溯性。然而,现有的基于扩散的图生成模型有三个主要缺点:(1)Generation Efficiency。采样过程缓慢,因为需要很长的扩散过程才能达到平稳的噪声分布,因此反向生成过程也很耗时。(2) Incorporating constraints。它们都是一次性生成模型,因此在一次性生成过程中不容易合并约束。(3)Continuous Approximation。这会使得模型训练的难度加大。

        在GRAPHARM中,本文为图设计了节点吸收自回归扩散算法,它直接将图扩散到离散图空间中,而不是在去量化的邻接矩阵空间中。前向传递通过屏蔽每个步骤中的一个节点及其连接边来吸收节点,重复此过程,直到所有用于图生成的自回归扩散模型节点被吸收,图变为空为止。除此以外,本文进一步在 GRAPHARM 中设计了一个扩散排序网络,该网络与反向生成器联合训练,以学习与数据相关的扩散节点排序。GRAPHARM 中的后向传递通过学习反向节点吸收扩散过程和去噪网络来恢复图结构。反向生成过程是自回归的,这使得 GRAPHARM 更容易处理生成过程中的约束条件。

        如何学习反向节点排序分布以优化数据似然是一个关键挑战。本文的研究表明,只需使用精确的反向节点排序,并根据图形生成的置换不变性属性优化一个简单的似然下限,就能规避这一难题。利用似然下限,可以使用强化学习程序和梯度下降法联合训练去噪网络和扩散排序网络。

一些背景知识

       吸收离散扩散的定义:吸收扩散是在离散状态空间中定义的马尔可夫破坏过程,对于time steps:t,第i个维度中的元素x_t^{(i)}都以独立概率α(t)衰变为吸收态(数据的一个维度或一旦数据进入吸收态,它就不会再对后续的扩散过程产生影响,相当于在这个维度上的信息已经被“吸收”或“丢失”了)吸收状态可以是文本的[MASK]标记或图像的灰度像素。扩散过程最终收敛到一个平稳分布,使所有元素都处于吸收态。利用分类分布学习吸收扩散的逆过程,生成原始数据。通常,衰减概率α(t)需要很小,扩散步长t需要很大才能获得良好的性能。

        自回归扩散模型(ARDM):一种随机吸收过程,其中每一步恰好有一个维度衰减到吸收状态。这个过程重复进行,直到所有维度都被吸收。

        这个定义的另一个描述是:首先采样一个队列σ,σ∈S_DS_D是一个从1到D的排列集合。然后,数据的每个维度都按照σ的顺序向吸收状态衰减,相应的生成过程然后以与排列完全相反的顺序对变量进行建模。ARDM相当于连续时间限制的吸收扩散

在本文中:两个节点之间没有边视为特定的边。

Autoregressive Graph Diffusion Process:当一个节点进入吸收状态时,会发生以下两个变化:

  1. 掩蔽(Masking): 该节点会被掩蔽,意味着在扩散过程中,该节点不再活跃,它的特征将不再对图中的其它节点产生影响。

  2. 连接所有其他节点(Connecting to All Other Nodes): 被掩蔽的节点会被连接到图中所有其他节点,这些连接通过掩蔽边(masked edges)表示。这样做的原因是在吸收状态下,我们不能确定被掩蔽节点的原始邻居节点,因此通过将它与所有其他节点连接,可以保持图中的连通性信息。

因此,图自回归扩散过程的定义如下:

        在自回归图扩散中,从扩散排序网络中采样节点衰减排序σ。然后,根据采样的扩散顺序,每次恰好有一个节点衰减到吸收状态。这个过程一直进行,直到所有的节点都被吸收。

上图是自回归图扩散过程,正向传递中,节点自回归衰减到吸收状态,由扩散排序网络产生的排序决定顺序,在反向过程中,生成网络使用反向节点排序重新生成图结构。因为扩散过程为G_0中的每个节点分配一个唯一的ID以获得衰减顺序,所以不需要考虑同自同构(具体来说就是,节点排列的置换不变性,这意味着无论节点如何重新排列,只要重新排列后的图在结构上与原始图相同,模型就能正确地生成图。)

扩散排序网络遵循循环结构,这意味着每一步 t 的节点 \sigma _t 的分布不仅依赖于原始图 G_0​,还依赖于之前所有步骤节点顺序。本文使用使用图神经网络(GNN)对图中的结构信息进行编码,为了捕获部分排序,本文将位置编码添加到节点特征中,将传递GNN后节点v_i的更新节点嵌入表示为h^d_i并参数化为分类分布。利用,grapharm就可以学习优化节点的扩散排序,不过这也需要我们推断反向传递中的反向生成顺序,这很难。

反向生成过程:一个去噪网络将按照与扩散过程相反的顺序对掩模图进行去噪。我们将设计为图注意网络(GAT),用θ参数化,使模型能够区分被屏蔽和未被屏蔽的边缘。

        在时刻t,去噪网络的输入是之前的掩模图G_{t+1},一种直接的方法是使用Gt+1,它包含了所有被屏蔽节点及其相应的被屏蔽边。然而,在最初的生成步骤中,图几乎与屏蔽边完全连接。这导致两个问题:(1)消息传递过程将由被屏蔽的边缘主导,这使得消息不具有信息性。(2)存储密集邻接矩阵占用大量内存,导致模型无法扩展到大型图。因此,在每个生成步骤中,本文只保留待去噪的被屏蔽节点及其相关的被屏蔽边,而忽略其他被屏蔽节点。

修改后的掩码图称为G'_t,如图所示

去噪网络首先使用一个嵌入层将每个节点v_i编码为一个连续的嵌入空间,即h_i= embedding (v_i)。在第l条消息传递时,通过聚合来自相邻节点的关注消息来更新节点v_i的嵌入。

,其中其中W是权重矩阵,a是注意力向量。经过L轮消息传递后,最终得到每个节点的最终嵌入h_i^L,然后预测新节点v_{\sigma_t}的节点类型以及v_{\sigma_t}与所有先前去噪节点{v_{\sigma (>t)}}之间的边缘类型。出于时间复杂度上的考虑,本文使用混合多项分布来预测新节点与所有先前节点的连接。混合分布可以捕获待生成边之间的依赖关系,同时将自回归生成步骤减少到O(n)。

训练目标:使用近似最大似然作为grapharm的训练目标。首先推导似然的变分下界(VLB)为:

其中,G_{0:n}表示t = 0,1,···,n时G_t的所有值, 为生成排序的分布。从以上公式可以看出,扩散过程引入了一个单独的逆生成排序网络。因为在中间学习过程中没有原始图G_0,所以是一个非平凡任务,然而,在自回归扩散模型的标准变分下界(VLB)中,通常会包含一个KL散度项,用于衡量真实分布和近似分布之间的差异。作者提出,可以忽略这个KL散度项,简化模型的训练过程,从而避免或者非平凡任务。

第一项将鼓励去噪网络以完全相反的扩散过程顺序预测节点和边缘类型,因此去噪网络本身可以作为生成顺序的代理。由于排列不变性,可以简单地在每个时间步用预测的节点和边类型替换任何被屏蔽节点及其被屏蔽边。因此,可以忽略第二项,最终得到一个简单的训练目标:

其中,t被当作随机变量,且符合范围为0到n的均匀分布U_nv_{\sigma _t}的节点类型和它与所有先前去噪的节点的边,即

Soft Label Training : ARDM的架构同时预测所有被屏蔽的维度,这使得并行训练的单变量条件成为可能。在grapharm中,由于图的节点排列不变性,这种并行训练可以简化为用扩散排序网络给出的概率加权的软标签训练:其中,

因此,通常只考虑那些与最高概率相关的节点标签就足够了

实验结果如图。

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

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

相关文章

文心一言 VS 讯飞星火 VS chatgpt (253)-- 算法导论18.2 6题

六、假设 B-TREE-SEARCH 的实现是在每个结点内采用二分查找,而不是线性查找。证明:无论怎样选择 t ( t 为 n 的函数),这种实现所需的 CPU 时间都为 O(lgn)。如果要写代码,请用go语言。 文心一言: 首先,我…

第五十三节 Java设计模式 - 工厂模式

Java设计模式 - 工厂模式 工厂模式是一种创建模式,因为此模式提供了更好的方法来创建对象。 在工厂模式中,我们创建对象而不将创建逻辑暴露给客户端。 例子 在以下部分中,我们将展示如何使用工厂模式创建对象。 由工厂模式创建的对象将是…

27-代码随想录三数之和

15. 三数之和 中等 给你一个整数数组 nums ,判断是否存在三元组 [nums[i], nums[j], nums[k]] 满足 i ! j、i ! k 且 j ! k ,同时还满足 nums[i] nums[j] nums[k] 0 。请 你返回所有和为 0 且不重复的三元组。 注意:答案中不可以包含重…

爬虫学习(2)破解百度翻译

代码 import requests import jsonif __name__ "__main__":url https://fanyi.baidu.com/sug#post请求参数处理(同get请求一致)headers {"User-Agent": Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, …

今天分享一机器视觉的证书吧

工信部颁发的 人工智能 机器视觉证书 分享

ai写作工具推荐:如何用AI人工智能进行写作

AI写作工具:提升创作效率的秘密武器 在科技日新月异的今天,人工智能(AI)已经渗透到我们生活的方方面面,包括写作。AI写作工具,就是利用人工智能技术,帮助我们进行文本生成、语言优化等工作的工…

MATLAB 变换

MATLAB 变换(Transforms) MATLAB提供了用于处理诸如Laplace和Fourier变换之类的变换的命令。转换在科学和工程中用作简化分析和从另一个角度查看数据的工具。 例如,傅立叶变换允许我们将表示为时间函数的信号转换为频率函数。拉普拉斯变换使…

基于springboot+vue+Mysql的在线动漫信息平台

开发语言:Java框架:springbootJDK版本:JDK1.8服务器:tomcat7数据库:mysql 5.7(一定要5.7版本)数据库工具:Navicat11开发软件:eclipse/myeclipse/ideaMaven包:…

【RAG 论文】SKR:Self-Knowledge 指导下的 RAG

论文:Self-Knowledge Guided Retrieval Augmentation for Large Language Models ⭐⭐⭐⭐ Tsinghua, arXiv:2310.05002 文章目录 一、论文速读二、实现细节2.1 数据的收集2.2 引出 LLM 的 Self-Knowledge 的方法1)Direct Prompting2)In-Cont…

2024年电工杯数学建模竞赛A题B题思路代码分享

您的点赞收藏是我继续更新的最大动力! 欲获取更多电工杯学习资料,可点击如下卡片链接 点击链接加入群聊【2024电工杯】:http://qm.qq.com/cgi-bin/qm/qr?_wv1027&k_PrjarulWZU8JsAOA9gnj_oHKIjFe195&authKeySbv2XM853pynlnXiv6M58…

Honor of Kings QQ 1537937510

司空震到底要不要物理伤害高呢?还是法术伤害高呢?要不要出魔女和制裁引发的血案 先看下司空震的说明: 说下这个伙计为啥加QQ来骂我,因为这场当然最终是赢了,比赛里他一直强调司空震是物理伤害改版问题,然后…

爱普生S2D13V52快速实现车载显示屏高分辨率显示系统

随着时代的发展,汽车驾驶位前中央的显示屏承担的功能也越来越多,从一开始仅仅是显示仪表盘的信息,再到作为显示屏辅助倒车,再到如今和一块平板一样可公认娱乐,显示屏的大小有些时候成为了一辆车够不够好的体现。随着汽…

Pandas入门篇(三)-------数据可视化篇2(pandas-plot篇)

目录 概述一、格式1. 生成pandas.plotting对象来生成图表2. 调用plot()函数来生成图表3.支持的图表类型 二、单变量绘图常用图表1. 柱状图(bar)使用场景代码实现 2. 折线图(line)(默认即为折线图)适用场景代…

解密SSL/TLS:密码套件扫描仪的深度解析(C/C++代码实现)

解密SSL/TLS流量通常是为了分析和审计加密通信,以确保数据传输的安全性和合规性。密码套件扫描仪是实现这一目的的一种工具,它可以提供关于SSL/TLS配置的详细信息,帮助安全专家评估潜在的风险。 SSL/TLS协议基础 SSL/TLS协议是网络安全中不…

一个JDBC小工具

pom.xml 结构 <properties><maven.compiler.source>8</maven.compiler.source><maven.compiler.target>8</maven.compiler.target><project.build.sourceEncoding>UTF-8</project.build.sourceEncoding><mysql5>5.1.44<…

解决python/pycharm中import导入模块时报红却能运行的问题

一、问题 导入时报红&#xff0c;如下 二、解决 右键单击项目&#xff0c;将项目Mark Directory as→Sources Root 三、效果 报红消失 学习导航&#xff1a;http://www.xqnav.top

redis stream 作为消息队列的最详细的命令说明文档

简介 stream 作为消息队列&#xff0c;支持多次消费&#xff0c;重复消费&#xff0c;ack机制&#xff0c;消息异常处理机制。 涉及到以下几个概念&#xff0c;消息流&#xff0c;消费者组&#xff0c;消费者。 涉及到以下命令 # 添加消息到流中 XADD key [NOMKSTREAM] [&…

动态规划——背包问题(01,完全,多重)

一、01背包问题 1.题目描述 有 N 件物品和一个容量是 V 的背包。每件物品只能使用一次。第 i 件物品的体积是 vi&#xff0c;价值是 wi。 求解将哪些物品装入背包&#xff0c;可使这些物品的总体积不超过背包容量&#xff0c;且总价值最大。输出最大价值。 01背包问题特点&…

不考408的985,不想考408的有福了!吉林大学计算机考研考情分析

吉林大学&#xff08;Jilin University&#xff09;简称吉大&#xff0c;位于吉林长春&#xff0c;始建于1946年&#xff0c;是中华人民共和国教育部直属的综合性全国重点大学&#xff0c;国家“双一流”、“211工程”、“985工程”、“2011计划”重点建设的著名学府&#xff0…

免费分享一套微信小程序商城系统(电商系统)(SpringBoot+Vue3)【至尊版】,帅呆了~~

大家好&#xff0c;我是java1234_小锋老师&#xff0c;自己原创写了一个不错的微信小程序商城系统(电商系统)(SpringBootVue3)【至尊版】&#xff0c;免费分享下哈。 项目视频演示 【免费】微信小程序商城系统(电商系统)(SpringBootVue3) 【至尊版】Java毕业设计_哔哩哔哩_bi…