NeurIPS 2023 | RGIB:对抗双边图噪声的鲁棒图学习

news2024/9/24 13:19:25

▐ 摘要

链接预测[1,2]是图学习的一种基础任务,用于判断图中的两个节点是否可能相连,被广泛应用于药物发现、知识图谱补全和在线问答等实际场景。尽管图神经网络(Graph Neural Network,GNN)在该问题的性能上取得了显著进步,但在图结构噪声下的差强人意的鲁棒性仍是当前深度图模型的实际瓶颈。

在鲁棒图学习方面,早期工作探索了通过邻近节点的平滑效果来提高GNN在节点标签噪声下的鲁棒性,其他方法通过随机移除边或主动选择有信息量的节点或边来达到类似的效果。然而,当将这些抗噪声方法应用于带有噪声的链接预测时,只能取得非常有限的增益。其原因在于,不同于标签噪声,这里的图结构噪声是双向的:它会自然地同时扰动输入图的拓扑结构和输出端目标边的标签,即同时存在noisy inputs和noisy labels(如下图1所示),且这种双向噪声在现实世界的图数据中是常见的[3],如点击率预测、商品推荐等场景。

于是,我们提出一个新的挑战:如何处理双边噪声以实现鲁棒的链接预测?

206b48e20aeb12e92475cd2a2e663dfe.png
图1. 双边图噪声下的链接预测问题.

首先,我们进行了一个实证研究,揭示了图结构噪声如何双向干扰输入拓扑结构和目标标签,导致性能严重下降和表征坍缩。为此,我们提出了一个信息论指导原则,即鲁棒图信息瓶颈(Robust Graph Information Bottleneck,RGIB),以提取可靠的监督信号并避免表征坍缩。与基本的信息瓶颈GIB[4,5]不同的是,RGIB进一步解耦并平衡了图拓扑、图标签和图表征之间的相互依赖性,为抵抗双边噪声的鲁棒表征构建了新的学习目标。此外,我们探索了两种实例,RGIB-SSL和RGIB-REP,利用自监督学习和数据重参数化方法的优势,分别进行隐式和显式的去噪学习。

35f2bce18901052731d8af0b2656f223.png
图2. 基本GIB和本文提出的RGIB (其中A是图结构,Y是边标签,H是图表征,I为互信息).

简言之,在本项工作中:

  • 我们发现双边噪声会导致严重的表征坍缩和性能下降,并且这种负面影响对常见数据集和图神经网络来说是普遍存在的。据我们所知,我们是最早研究在双边噪声下链接预测鲁棒性问题的。

  • 我们提出了一个通用学习框架RGIB,设计了新的表征学习目标以提高图神经网络的鲁棒性。我们基于不同的方法论提出了两种实现方式,即RGIB-SSL和RGIB-REP,并提出了适应性的设计和理论的分析。

  • RGIB在不修改GNN架构的情况下,在3种常用GNN和6个常见数据集上达到了最有效果,各种噪声场景下的AUC提升了高达12.9%,模型学到的表征分布显著恢复,并且对双边噪声更加鲁棒。

接下来,将简要地向大家分享我们近期发表在 NeurIPS 2023 上的有关双边噪声下链接预测鲁棒性的研究结果。

本项研究结果是淘天集团阿里妈妈展示外投团队与香港浸会大学韩波老师研究团队自2022年8月开始通过阿里巴巴创新研究计划(AIR),共同参与“针对大规模在线广告的可信赖深度学习” 项目的研究工作。

论文标题: Combating Bilateral Edge Noise for Robust Link Prediction

论文下载: https://openreview.net/pdf?id=ePkLqJh5kw

代码链接: https://github.com/tmlr-group/RGIB

🔍 本期话题:如何从优化的角度来解决数据噪声呢?欢迎评论区留言讨论~

1. 问题定义

为了定量研究双边图结构噪声的影响,我们在一系列GNN基准数据集上合理地模拟不同程度的扰动,详细说明见如下定义3.1。需要注意的是,目前最常采用的数据划分方式是随机地将部分边分为观测部分和预测目标部分,因此在训练集中,噪声边会被划分到输入和标签中。

双边噪声的生成(定义3.1):假设存在一组干净的训练数据,即观察到的图,以及查询边的标签 。通过向原始邻接矩阵添加边噪声,同时保持节点特征不变,生成了噪声邻接矩阵。类似地,通过向标签添加边噪声生成了噪声标签。具体而言,给定噪声比例,噪声边 () 通过将 A 中的零元素以概率翻转为一来生成。满足和。类似地,可生成噪声标签并添加到原始标签中,其中 。

基于此定义,我们进行实验并发现,双边图结构噪声导致GNN的性能显著下降(见图4),而更大的噪声比率通常导致更严重的性能退化。这意味着,经过标准训练的GNN容易受到双边图结构噪声的影响,表现出严重的鲁棒性问题。此外,双边噪声带来的性能下降远远大于单边输入噪声或标签噪声的影响。

e41482f0b6be80397e3e448f62156dc8.png
图3. 双边噪声导致显著的性能下降.

接着,我们检查GNN学习得到的表征。从图5的uniformity分布可以看出,表征在双边噪声的作用下严重坍缩,由原本较为均匀的环状分布逐步退化成了几个单点,且更高的噪声率会导致更严重的坍缩程度,这反映了噪声对于图学习的负面影响,也是最终性能下降的重要原因。

52581645d2046e9e936db1f04d10d18f.png
图4. 双边噪声造成严重的表征坍缩.

2. 解决方案

2.1 GIB的固有缺陷

为了增强图表征的鲁棒性并避免严重的表征坍缩,我们可以利用图信息瓶颈(Graph Information Bottleneck,GIB)[4,5] 的信息约束作为图表征优化的目标,即:

其中,超参数用于限制互信息项,以避免表征过多捕获来自的与任务无关的信息。基本的GIB可以有效地防御输入扰动,然而,它在本质上容易受到标签噪声的影响,因为它完全地保留了标签噪声的监督,所以基本的GIB不能够解决双边噪声问题。

2.2 RGIB优化目标设计

在本工作中,我们尝试对GIB进行分析和改进。注意到,基本的GIB通过直接约束来降低,以处理输入噪声。同样地,标签噪声可以隐藏在中,但是简单地约束来正则化并不理想,因为它与GIB原始方程冲突,并且也无法处理内的噪声。因此,进一步解耦、和之间的依赖关系至关重要。

注意到,噪声可以存在于、和这几个区域。分析上,我们知道:

其中是一个常数,冗余可以被最小化。因此,可以近似拆解为,和,这三个信息项的平衡可以构成双边图结构噪声问题的解决方案。

基于上述分析,我们提出了RGIB(Robust Graph Information Bottleneck),一个新的表征学习目标来平衡、两方面的监督信息,即:

其中对的约束鼓励更有信息量的表征以防止坍缩(),并限制其容量()以避免过拟合。另外两个互信息项和,相互约束后验信息以减轻双边噪声对的负面影响。

需要注意的是,互信息项如通常是难以精确计算的。因此,我们基于不同的方法论,来给出两种实际的RGIB实现,即RGIB-SSL和RGIB-REP。其中,RGIB-SSL通过自监督正则化显式地优化表征,而RGIB-REP通过重参数化隐式地优化表征,详细设计如下。

2.3 RGIB实例化

b0922503721ea7454786d5a02dac2dd0.png
图5. RGIB及其实例RGIB-SSL、RGIB-REP的示意.

RGIB-SSL: 图表征在监督学习范式下已经退化,自然地,我们将其修改为自监督学习的范式,通过uniformity项鼓励表征提高信息量来缓解坍缩,并配合alignment项隐式地捕捉含噪变量之间的可靠关系(见图6b),即:

其中用于平衡一个监督和两个自监督正则化项,当时,RGIB-SSL可退化为基本的GIB。和是两个增强图和的表征。

RGIB-REP: 另一种实现方式是,通过重新参数化拓扑空间和标签空间的信息,保留干净的信息并丢弃噪声部分。为此,我们通过构建隐变量,显式地建模和的可靠性,以学习一个抗噪声的(见图6c),即:

其中,隐变量和是从含噪的和中提取的干净信号。它们的补充部分和 被视为噪声,满足和。当和时,RGIB-REP可退化为基本的GIB。此外,测量了选择样本的监督信号,其中分类器以作为输入而不是原始的,即。

更多技术细节请见正文。

3. 实验结果

我们提供了多维度的实验结果,以验证和理解所提的RGIB方法。

3.1 主要性能对比

如表1所示,RGIB在所有6个数据集上,在不同噪声比例下,都取得了最佳结果,特别是在Cora和Citeseer数据集上,与次佳方法相比,RGIB带来的AUC提升达12.9%。

36e34a26b7ee1359afaa69f41ce28c5e.png
表1. 双边噪声下实验结果展示.

表2中展示了单边噪声的实验结果。无论是针对单边输入噪声还是标签噪声,RGIB仍然超越了所有的基准方法。实验表明,双边图结构噪声可以通过统一的学习框架来建模和解决,而此前的去噪方法只能用于特定的噪声模式。

d7928de72dd0615218dba3ec8d824f02.png
表2. 单边噪声下实验结果展示.

3.2 多方面的消融实验及深入讨论

我们进一步进行了诸多消融实验,深入探讨了所提方法在不同角度下的表现。

c1f75c711c5b28a0204dd772e1074519.png
图6. RGIB能显著改善表征分布,降低坍缩程度.
879d141c134febe040d3622395ddaa68.png
表3. RGIB在不同超参schedule下的表现.
d33106ffb80f8d2867bdfbf2aab6dc0a.png
图7. RGIB的超参数搜索结果热力图.
b903161087c5887f5fa5dc08ea6f482e.png
表4. RGIB在对抗扰动下的实验结果.
b4d133529b9db131b9f9b53d8e49212e.png
表5. RGIB的消融实验.

除此以外,我们提供了更多的可视化及相关实验结果,感兴趣的读者请移步原文与附录部分。

4. 算法落地

本文提出的RGIB-SSL方法,在展示外投业务中进行了算法落地。在该业务中,商家广告被投放于全域互联网媒体流量上。本技术通过在预训练上对用户广告行为特征构图并约束RGIB,增强了对点击行为的预估鲁棒性,从而提升精排阶段点击率预估的准确性,提升投放广告的精准度与质量与在媒体流量出价上的准确度,使得大盘营收获得约5%的提升。该技术全面应用于展示外投的几乎所有媒体流量,覆盖数十家媒体、近百个流量资源位和数亿用户。

5. 总结及展望

本文研究了带有双边图结构噪声的链接预测问题,并发现在这种双边噪声下,GNN学习得到的表征严重坍缩。基于这一观察,我们引入了鲁棒图信息瓶颈原则RGIB,旨在通过解耦和平衡输入、标签和表征之间的互信息来提取可靠信号,以增强表征鲁棒性并避免坍缩。展望未来,可将RGIB拓展至节点预测(Node Classification)、整图预测(Graph Classification)即知识图谱推理(Knowledge Graph Reasoning)等任务上。此外,正交于本文研究的结构噪声(Structural Noise),图节点特征上的噪声(Feature Noise)同样值得关注。

▐ 参考文献

[1] D. Liben-Nowell and J. Kleinberg. The link-prediction problem for social networks. Journal of the American society for information science and technology, 2007.

[2] M. Zhang and Y. Chen. Link prediction based on graph neural networks. In NeurIPS, 2018.

[3] B. Wu, J. Li, C. Hou, G. Fu, Y. Bian, L. Chen, and J. Huang. Recent advances in reliable deep graph learning: Adversarial attack, inherent noise, and distribution shift. arXiv, 2022.

[4] T. Wu, H. Ren, P. Li, and J. Leskovec. Graph information bottleneck. In NeurIPS, 2020.

[5]  J. Yu, T. Xu, Y. Rong, Y. Bian, J. Huang, and R. He. Graph information bottleneck for subgraph recognition. arXiv, 2020

▐ 团队介绍

🏷 阿里妈妈展示外投团队

阿里妈妈展示外投团队是阿里妈妈核心广告技术团队之一,也是阿里妈妈业务增长最快的团队。依托于集团庞大而真实的营销场景,以AI技术驱动实现客户商品营销, 并承担集团App用户增长等业务需求。我们持续探索人工智能,联邦学习,深度学习,强化学习,知识图谱,图学习等前沿技术在外投广告和用增方面的落地应用。在创造业务价值的同时,团队近几年在ICML、NIPS、WWW、CIKM、SIGIR、KDD、NAACL等领域知名会议上发表过多篇论文。真诚欢迎对广告算法、推荐系统、NLP等方向感兴趣的同学加入我们, 一起成长!

✉️ 简历投递邮箱:alimama_tech@service.alibaba.com

// 点击↓阅读原文,了解JD详细详情

🏷 香港浸会大学可信机器学习和推理组

香港浸会大学可信机器学习和推理课题组 (TMLR Group) 由多名青年教授、博士后研究员、博士生、访问博士生和研究助理共同组成,课题组隶属于理学院计算机系。课题组专攻可信表征学习、基于因果推理的可信学习、可信基础模型等相关的算法,理论和系统设计以及在自然科学上的应用,具体研究方向和相关成果详见本组Github (https://github.com/tmlr-group)。课题组由政府科研基金以及工业界科研基金资助,如香港研究资助局杰出青年学者计划,国家自然科学基金面上项目和青年项目,以及国内外企业的科研基金。青年教授和资深研究员手把手带,GPU计算资源充足,长期招收多名博士后研究员、博士生、研究助理和研究实习生。感兴趣的同学请发送个人简历和初步研究计划到邮箱 :bhanml@comp.hkbu.edu.hk。

🔍 本期话题:如何从优化的角度来解决数据噪声呢?欢迎评论区留言讨论~

END

da206d585eb6ada99f6e9f5f5203c0ac.gif

也许你还想看

Memorization Discrepancy:利用模型动态信息发现累积性注毒攻击

CBRL:面向ROI约束竞价问题的课程引导贝叶斯强化学习框架

基于对抗梯度的探索模型及其在点击预估中的应用

一种用于在线广告自动竞价的协作竞争多智能体框架

NAACL22 & SIGIR22 | 面向 CTR 的外投广告动态创意优化实践

基于图的电商语义相关性弱监督学习框架

关注「阿里妈妈技术」,了解更多~

9b5a80dd29d121652bcbaee0b9b32eb7.gif

喜欢要“分享”,好看要“点赞”哦ღ~

↓欢迎留言参与讨论↓

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

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

相关文章

JMeter 常见易错问题

1、配置错误: 问题:线程组配置错误,例如设置了错误的线程数或循环次数。 解决方法:检查线程组的配置。确保线程数(即并发用户数量)设置正确,以及循环次数符合预期。如果要模拟不同类型的用户行…

怎样自动把网页截图发到微信群里

现在很多公司都在使用企业微信了,不但方便公司内部交流和客户交流,还能组建各种小组群,业务群。企业微信群提供一个机器人的功能,方便我们把公司业务信息,或来自外部的信息自动发布到群里。 这里研究一下如何向微信群…

Docker的项目资源参考

Docker的项目资源包括以下内容: Docker官方网站:https://www.docker.com/ Docker Hub:https://hub.docker.com/ Docker文档:https://docs.docker.com/ Docker GitHub仓库:https://github.com/docker Docker官方博客…

MT6893_天玑 1200芯片规格参数介绍_datasheet规格书

天玑 1200(MT6893)是一款专为旗舰级全新5G芯片,它融合了先进的AI、相机和多媒体技术,为用户带来令人惊叹的体验。采用先进的6纳米制程设计,内置各种先进技术。该芯片采用旗舰级的八核CPU架构设计,支持16GB强大的四通道内存以及双通…

jQuery_03 dom对象和jQuery对象的互相转换

dom对象和jQuery对象 dom对象 jQuery对象 在一个文件中同时存在两种对象 dom对象: 通过js中的document对象获取的对象 或者创建的对象 jQuery对象: 通过jQuery中的函数获取的对象。 为什么使用dom或jQuery对象呢? 目的是 要使用dom对象的函数或者属性 以及呢 要…

DQN算法

DQN算法 教程链接 DataWhale强化学习课程JoyRL https://johnjim0816.com/joyrl-book/#/ch7/main DQN算法 DQN(Deep Q-Network) 主要创新点在于将Q-learning算法中的Q表记录动作价值函数转为引入深度神经网络来近似动作价值函数 Q ( s , a ) Q(s,a) Q(s,a),从而能够处理连续…

【Java 进阶篇】Jedis:让Java与Redis轻松对话的利器

在现代软件开发中,缓存系统是提高系统性能的常见手段之一,而Redis作为一个高性能的缓存数据库,被广泛应用于各类系统。如果你是Java开发者,那么使用Jedis库可以让你轻松地与Redis进行交互。本文将带你深入了解Jedis的快速入门&…

pat实现基于邻接矩阵表示的深度优先遍历[含非递归写法]

文章目录 1.递归2.非递归 1.递归 void DFS(Graph G, int v) {visited[v] 1;printf("%c ", G.vexs[v]);for (int i 0; i < G.vexnum; i) {if (!visited[i] && G.arcs[v][i]) DFS(G, i);} }2.非递归 #include <stack> #include <iostream> …

【间歇振荡器2片555时基仿真】2022-9-24

缘由multisim出现这个应该怎么解决吖&#xff0c;急需解决-嵌入式-CSDN问答 输出一定要有电阻分压才能前后连接控制否则一定报错。

【Web】PhpBypassTrick相关例题wp

目录 ①[NSSCTF 2022 Spring Recruit]babyphp ②[鹤城杯 2021]Middle magic ③[WUSTCTF 2020]朴实无华 ④[SWPUCTF 2022 新生赛]funny_php 明天中期考&#xff0c;先整理些小知识点冷静一下 ①[NSSCTF 2022 Spring Recruit]babyphp payload: a[]1&b1[]1&b2[]2&…

C#,《小白学程序》第二课:数组,循环与排序

1 什么是数组&#xff1f; 数组 Array 是一组数值&#xff08;数 或 值&#xff09;。 int[] a; int[,] b; int[][] c; Anything[] d; 都是数组。 2 排序 排序就是按大小、名字、拼音或你指定的信息进行比较后排队。 排序是数组最基本的功能需求。 3 文本格式 /// <summa…

【C语言】memset函数

memset是C和C编程语言中的一个函数&#xff0c;用于将指定的内存区域设置为特定的值。这个函数的原型在<string.h>&#xff08;对于C&#xff09;或者<cstring>&#xff08;对于C&#xff09;头文件中定义。 函数原型如下&#xff1a; void *memset(void *str, i…

Halcon Solution Guide I basics(4): Blob Analysis(连通性解析)

文章目录 文章专栏前言文章解析开头步骤分析简单案例进阶方案 进阶代码案例crystal&#xff0c;结晶匹配需求分析 文章专栏 Halcon开发 Halcon学习 练习项目gitee仓库 CSDN Major 博主Halcon文章推荐 前言 今天来看第三章内容&#xff0c;既然是零基础&#xff0c;而且我还有大…

数据库-MySQL之数据库必知必会10-13章

第10章 创建计算字段 拼接字段 使用Concat()函数 执行算术计算 示例&#xff1a;从 Products 表中返回 prod_id、prod_price 和 sale_price。sale_price 是一个包含促销价格的计算字段。提示&#xff1a;可以乘以 0.9&#xff0c;得到原价的 90%&#xff08;即 10%的折扣&…

C百题--7.输出乘法表

1.问题描述 输出9*9乘法表 2.解决思路 利用99乘法表行和列之间的关系&#xff0c;进行输出 注意&#xff1a;%-2d 2代表占两个字符&#xff1b;-代表左对齐 3.代码实现 #include<stdio.h> int main(){for(int i1;i<9;i){for(int j1;j<i;j){printf("%d*%d…

98、Text2Room: Extracting Textured 3D Meshes from 2D Text-to-Image Models

简介 github 利用预训练的2D文本到图像模型来合成来自不同姿势的一系列图像。为了将这些输出提升为一致的3D场景表示&#xff0c;将单目深度估计与文本条件下的绘画模型结合起来&#xff0c;提出了一个连续的对齐策略&#xff0c;迭代地融合场景帧与现有的几何形状&#xff0…

基于若依的ruoyi-nbcio流程管理系统增加流程节点配置(一)

更多ruoyi-nbcio功能请看演示系统 gitee源代码地址 前后端代码&#xff1a; https://gitee.com/nbacheng/ruoyi-nbcio 演示地址&#xff1a;RuoYi-Nbcio后台管理系统 为了增加流程节点配置的功能的灵活性与方便性&#xff0c;这里增加流程节点的配置。 1、相应表结构如下&a…

百度云加速免费版下线,推荐几款目前仍旧免费的CDN

近日&#xff0c;百度云加速实施了新政策&#xff0c;将不再支持免费套餐服务。现在免费的CDN也越来越少了&#xff0c;推荐几款目前仍旧免费的CDN&#xff0c;大家且用且珍惜&#xff01; 1、雨云【点此直达】 源站为雨云产品可以免费使用CDN&#xff0c;源站非雨云产品流量包…

CANdelaStudio 使用教程2 新建 Interface

文章目录 简述ECU Information1、Supported Interfaces2、Services supported for interfaces 简述 新增 Interface 的话&#xff0c;只能在 CDDT 文件中新增&#xff0c;CDD 文件中只能选择接口 ECU Information 1、Supported Interfaces 创建和编辑ECU应支持的接口 1、…

三子棋游戏代码+分析思路

首先我们先看一下一个传统的三子棋长什么样子&#xff0c;再来模仿 其中里面有一个棋盘&#xff0c;并且有分隔符&#xff0c;那么开始你就得定义个二维数组&#xff0c;先初始化&#xff0c;放空格&#xff0c;然后打印出来看一下&#xff0c;注意右边界是没有竖杠分割&#x…