论文小综 | Pre-training on Graphs

本文转载自公众号:浙大KG。


作者:方尹、杨海宏,浙江大学在读博士,主要研究方向为图表示学习。


在过去几年中,图表示学习和图神经网络(Graph Neural Network, GNN)已成为分析图结构数据的热门研究领域。图表示学习旨在将具有复杂结构的图数据转换为保留多样化图属性和结构特征的低维空间中的密集表示。通常,GNN将具有属性的图作为输入,并利用卷积层逐层生成节点级别的表示。针对输入图上的一项任务,以端到端的方式利用监督信息训练GNN模型。也就是说,对于同一张图上的不同任务,需要具有足够多且不同标签的数据集,以训练与每个任务相对应的特定GNN。但对于这些任务,尤其是对于大规模图数据,获取标签的代价很大,难以得到足量的标注数据。

一种有效的解决此问题的方式是,在未标注的数据上通过自监督的方式对GNN模型进行预训练。这样,在下游任务上只需少量的标注数据对模型进行微调。

接下来我们将结合4篇论文简述预训练方法在图结构数据上的应用。

GPT-GNN: Generative Pre-Training of Graph Neural Networks

发表会议:KDD 2020

论文链接:https://arxiv.org/pdf/2006.15437v1.pdf

这篇文章提出的GPT-GNN通过生成式预训练的方式来初始化GNN,下图为GPT-GNN的预训练-微调流程。

如上图所示,首先通过重构/生成输入图的结构信息和节点属性信息来预训练GNN,再将预训练好的GNN及参数用于下游任务,针对少部分的标注数据进行微调。

在预训练过程中,出于对训练效率的考虑,作者希望只对输入图运行一次GNN就计算出节点属性生成和边生成过程的损失,且同时进行节点属性生成和边生成两个任务。但是,边的生成过程需要用到节点的属性信息,如果两个生成过程同时进行,会导致信息泄漏。为避免该问题,文章将节点在不同的阶段分为属性生成节点和边生成节点两种类型。值得注意的是,同一节点在不同阶段既可以作为属性生成节点又可以作为边生成节点。

如图,作者给出了属性图生成过程的一个具体例子。第一部分为对输入图的预处理过程:确定输入图的排列顺序,随机挑选一部分与目标节点相连的边作为观测到的边,其余的边作为masked边,并删除这些masked边。第二部分为预训练过程:首先将节点分为属性生成节点和和边生成节点,计算节点345的表示,包括它们的属性生成节点和边生成节点。最后,通过对每个节点并行进行节点属性预测和masked边的预测来训练GNN模型。

表中总结了在OAG和Amazon上使用不同的预训练方法在下游任务中表现出的性能。实验在预训练和微调阶段之间设置了三种不同的传输设置:分别使用来自2014年之前和2014年之后的数据进行预训练和微调(Time Transfer);将CS领域的论文用于下游微调,将其他领域的所有论文用于预训练(Field Transfer);在其他领域2014年之前的论文上进行预训练,并在CS领域2014年之后的论文上微调(Time+Field Transfer).总体而言,GPT-GNN框架显著提高了两个数据集上所有下游任务的性能。

Strategies for pre-training graph neural networks

发表会议:ICLR 2020

论文链接:https://arxiv.org/pdf/1905.12265.pdf

这篇文章提出了一种新的GNN预训练策略及自监督方法。但是,只在整张图或是只在单个节点上进行GNN预训练时带来的提升有限,甚至会导致在部分下游任务上出现负迁移。因此,本文在单个节点及整张图上进行预训练,使GNN同时学习局部和全局的信息传递。

图为作者提出的节点级别的两种自监督学习方法。其中,在context prediction任务中,通过子图预测其周围的图结构,使模型具有通过中心节点预测周围结构的能力;在attribute masking任务中,让网络能够预测masked掉的节点或边,以学习图的性质及领域知识。

在进行节点级别预训练后,接着进行图级别的预训练。为了将特定领域的信息编码到图表示中,作者提出图级别的多任务的有监督预训练,共同预测多个图的标签,每个属性都对应于一个二分类任务,在得到图表示之后利用线性分类器进行分类。

预训练结束后,将得到的GNN模型在下游任务中进行微调。图级别的表示经过线性分类器后预测下游任务的图标签。如下表所示,该预训练框架在分子性质预测和蛋白质功能预测任务中超越了SOTA.

Self-Supervised Graph Transformer on Large-Scale Molecular Data

发表会议:NeurIPS 2020

论文链接:https://proceedings.neurips.cc/paper/2020/file/94aef38441efa3380a3bed3faf1f9d5d-Paper.pdf

这篇文章认为不应将上下文和节点/边的信息分开考虑,由此提出Graph Representation frOm self-superVised mEssage passing tRansformer (GROVER)框架。

作者提出利用如上图所示的GNN Transformer模型捕捉两方面的信息:利用可随机选择跳数的动态信息传递网络dyMPN得到query, key, value的向量表示,可得到子图的结构信息;利用transformer作为encoder,可得到节点之间的全局信息。

本文在节点和边级别及图级别上分别提出了新的自监督任务。在上下文属性预测任务中,将分子图输入GROVER后,可获得节点和边的表示,随机选择节点,获得其表示后,为了让该节点表示能够编码一些上下文的信息,统计固定跳数的子结构的统计信息作为标签,并用该节点的表示去预测其上下文统计信息。在图级别的主题预测任务中,作者统计了包含领域信息的子结构作为主题标签,预测图的主题标签实际上是一个多分类任务。

该论文探索了大规模(一千万个未标记分子数据、一亿参数)预训练GNN模型的潜力。利用自监督学习任务和提出的GTransfomer模型,GROVER可以从庞大的未标记分子数据集中学习到丰富的领域知识。通过对GROVER微调,可在11个benchmark上相比当前SOTA有不错的提升。 

GCC: Graph Contrastive Coding for Graph Neural Network Pre-Training

发表会议:KDD 2020

论文链接:https://arxiv.org/pdf/2006.09963.pdf

这篇文章设计了一种自监督的图对比编码(GCC)预训练框架,关注图结构的相似性,使两个局部结构相似的节点拥有相近的表示。

对比学习旨在让正样本的表示空间更相近,并让负样本距离更远。在GCC中,每个样本被定义为一个针对特定节点的r阶邻居网络(r-ego network)。如图所示,正样本为从同一个节点(红色)采样得到的一个r-ego子图,大量负样本为从其他节点(蓝色)采样的r-ego子图。任意GNN均可以作为GCC的编码器,本文选取Graph Isomorphism Network(GIN)作为编码器。

GCC可用于多种下游任务。本文探索了GCC在节点分类、图分类及相似搜索中的应用。具体地,在节点分类任务中,利用GCC预训练得到的编码器对节点的r-ego子图进行编码;在图分类任务中,对输入图直接进行编码;在相似搜索中,利用GCC分别对两个节点的r-ego子图进行编码,并计算编码后两者的距离作为相似度的度量。

本文提出的GCC预训练框架,利用对比学习的方法,有效的捕捉了图的结构化信息,且可以迁移到各类下游任务及各类图中。实验结果表明了GCC在多中任务多个数据集上都获得了较为突出的表现,证明了GCC的有效性。

综上所述,为了提升模型的泛化性能,充分利用图结构数据本身丰富的结构信息和特征信息,上述论文使用不同的思路(包括引入对比学习,生成式预训练,模仿BERT的Masked Prediction策略等),将“预训练-微调”的思路应用于图表示学习中,从而进一步提升下游任务的性能。

“预训练-微调”相关方案的主要特点是充分利用大量无标注数据。这一点与大规模图结构数据高度契合。相关任务仍有较大的提升空间。除了图结构的信息挖掘之外,知识图谱等图结构数据中所包含的语义信息与推理逻辑仍未被充分挖掘。欢迎大家补充和交流。


   

浙江大学知识引擎实验室


 

OpenKG

开放知识图谱(简称 OpenKG)旨在促进中文知识图谱数据的开放与互联,促进知识图谱和语义技术的普及和广泛应用。

点击阅读原文,进入 OpenKG 网站。

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

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

相关文章

初探下一代网络隔离与访问控制

概述 安全域隔离是企业安全里最常见而且最基础的话题之一,目前主要的实现方式是网络隔离(特别重要的也会在物理上实现隔离)。对于很小的公司而言,云上开个VPC就实现了办公网和生产网的基础隔离,但对于有自建的IDC、网络…

LeetCode 189. 旋转数组(环形替换)

1. 题目 给定一个数组,将数组中的元素向右移动 k 个位置,其中 k 是非负数。 示例 1:输入: [1,2,3,4,5,6,7] 和 k 3 输出: [5,6,7,1,2,3,4] 解释: 向右旋转 1 步: [7,1,2,3,4,5,6] 向右旋转 2 步: [6,7,1,2,3,4,5] 向右旋转 3 步: [5,6,7,1,2,3,4]要求…

吴恩达:机器学习应以数据为中心

源 | 新智元今天是吴恩达45岁生日。他是国际最权威的ML学者之一,学生遍布世界各地。在最近的一期线上课程中,吴恩达提出了以模型为中心向以数据为中心的AI。吴恩达发推称,「大家为自己送上最好的礼物就是,观看这个视频观看并提出自…

如何开发小程序开发者工具?

最近集团内部在自研小程序,我负责小程序开发者工具的调试部分。经过一段时间的探索,摸索出不少经过实际检验的可行手段。接下来将会用几篇文章总结一下思路。 文章的内容主要会分为以下几部分: 如何建立逻辑层运行时容器(两种方…

美团点评基于Storm的实时数据处理实践

背景 目前美团点评已累计了丰富的线上交易与用户行为数据,为商家赋能需要我们有更强大的专业化数据加工能力,来帮助商家做出正确的决策从而提高用户体验。目前商家端产品在数据应用上主要基于离线数据加工,数据生产调度以“T1”为主&#xff…

会议交流 | 大规模知识图谱的构建及应用分享

本文转载自公众号:DataFunTalk。论坛出品:张伟 阿里巴巴 资深算法专家分享时间:12月19日,9:00-12:00导读:12月19日,9:00-12:00。在DataFunTalk年终大会上,由阿里巴巴资深…

机器翻译小记

神经网络翻译面临的挑战

赛尔原创 | N-LTP:基于预训练模型的中文自然语言处理平台

论文名称:N-LTP: A Open-source Neural Chinese Language Technology Platform with Pretrained Models论文作者:车万翔,冯云龙,覃立波,刘挺原创作者:冯云龙论文链接:https://arxiv.org/abs/200…

LeetCode 49. 字母异位词分组(哈希)

1. 题目 给定一个字符串数组,将字母异位词组合在一起。字母异位词指字母相同,但排列不同的字符串。 示例:输入: ["eat", "tea", "tan", "ate", "nat", "bat"], 输出: [["ate",…

论文浅尝 - SWJ | 基于知识图谱和注意力图卷积神经网络的可解释零样本学习

论文题目:Explainable Zero-shot Learning via Attentive Graph Convolutional Network and Knowledge Graphs本文作者:耿玉霞,浙江大学在读博士,研究方向为知识图谱、零样本学习、可解释性发表期刊:Semantic Web Jour…

LeetCode 3. 无重复字符的最长子串(滑动窗口+哈希)

1. 题目 给定一个字符串,请你找出其中不含有重复字符的 最长子串 的长度。 示例 1: 输入: "abcabcbb" 输出: 3 解释: 因为无重复字符的最长子串是 "abc",所以其长度为 3。示例 2: 输入: "bbbbb" 输出: 1 解释: 因为无重…

安装kenlm出现问题的解决方案gcc g++

安装kenlm出现问题的解决方案 apt-get install gcc apt-get install g参考文章:gcc: error trying to exec ‘cc1plus’: execvp: No such file or directory

论文浅尝 - TACL2020 | 改进低资源跨语言实体链接的候选生成问题

论文笔记整理:谭亦鸣,东南大学博士。来源:TACL 2020链接:https://arxiv.org/ftp/arxiv/papers/2003/2003.01343.pdf1.背景介绍跨语言实体链接(Cross-lingual Entity Linking, XEL)旨在利用源语言文本中实体描述(提及),…

卫星系统——酒店后端全链路日志收集工具介绍

背景 随着酒店业务的高速发展,我们为用户、商家提供的服务越来越精细,系统服务化程度、复杂度也逐渐上升。微服务化虽然能够很好地解决问题,但也有副作用,比如,问题定位。 每次问题定位都需要从源头开始找同事帮我人肉…

拖拽式Vue组件代码生成平台(LCG)新版详细介绍

拖拽式Vue组件代码生成平台是一款小猴自研的Vue代码生成工具,英文全称:Low Code Generator,简称LCG。它也是一种LowCode解决方案。通过它可以快速完成Vue组件的代码骨架搭建,通过减少不必要的重复工作从而带来开发效率的提升。 体…

ImportError: libgthread-2.0.so.0: cannot open shared object file: No such file or directory

apt-get update apt-get install libglib2.0-dev系统:ubuntu16.04

LeetCode 454. 四数相加 II(哈希)

1. 题目 给定四个包含整数的数组列表 A , B , C , D ,计算有多少个元组 (i, j, k, l) ,使得 A[i] B[j] C[k] D[l] 0。 为了使问题简单化,所有的 A, B, C, D 具有相同的长度 N,且 0 ≤ N ≤ 500 。所有整数的范围在 -228 到 228 - 1 之间…

论文浅尝 - AAAI2020 | 多轮对话系统中的历史自适应知识融合机制

论文笔记整理:潘锐,天津大学硕士。链接:https://www.aaai.org/ojs/index.php/AAAI/article/view/6425来 源:AAAI 2020论文简介保持对话的一致性和避免内容重复是构建以知识为基础的多轮对话系统的两个关键因素。尽管一些工作倾…

高性能平台设计—美团旅行结算平台实践

本文根据第23期美团技术沙龙演讲内容整理而成。 背景 美团酒旅有很多条业务线,例如酒店、门票、火车票等等,每种业务都有结算诉求,而结算处于整个交易的最后一环不可缺少,因此我们将结算平台化,来满足业务的结算诉求。…

小程序调试技术导读

近期团队内在自研小程序,我负责开发者工具中的调试部分。调试作为面向开发者的基础能力,扮演了极为重要的角色。 本篇文章是导读文章。 调试能力从0到1一共经历了4个版本,接下来的文章将会以这4个版本为主线分别进行介绍。 初始版 上图为调试…