作者:CHEONG

公众号:AI机器学习与知识图谱

研究方向:自然语言处理与知识图谱

本文介绍一篇基于生成式的图谱预训练模型GPT-GNN(KDD 2020),介绍GPT-GNN模型核心点和模型思路,完整汇报ppt获取请关注公众号回复关键字:GPT-GNN

一、Background

Background1、GPT/GPT2.0: GPT和GPT2.0是自然语言处理领域的生成式训练模型,预训练阶段通过大量预料进行无监督学习,预训练任务是单项语言模型,特征提取器用的是Transformer,预训练模型取自Transformer的Decoder阶段,使用了Masked Multi-Head Attention。本文GPT-GNN模型即受NLP中GPT模型启发,GPT-GNN模型是基于知识图谱的生成式预训练模型。

Background2、图谱预训练作用:图神经网络(GNNs)已被证明是建模图结构数据的强大工具。然而,训练GNN模型通常需要大量的特定任务的标记数据,而获取这些数据往往非常昂贵。利用自监督GNN模型对未标记图谱数据进行预训练是减少标记工作的一种有效方法,然后将预训练学习到的模型可用在只有少量标签图谱数据的下游任务。

Background3、大规模图谱预训练: 大规模知识图谱预训练方案都需要遵守以下几个套路:首先需要进行子图采样,使用子图进行模型训练;其次采用自监督学习模式,Mask图中的节点或边然后进行训练;计算Loss时需要进行负采样,图规模大无法基于全部负样例。

二、GPT-GNN Method

GPT-GNN模型首先是自监督的生成式的预训练框架,通过预训练捕捉图谱固有的内在的Structural and Semantic等属性信息,可以对各种下游任务起到有效提升作用。

GPT-GNN模型训练通过两个生成任务:Attribute Generation和Edge Generation,并且构建Node Attributes和Graph Structure之间的相互依赖关系,捕捉隐含的特征信息。结构图如下所示:

问题1:预训练任务定义

两个生成任务实现思路Attribute Generation、Edge Generation:先给图中节点和边编号,通过已知X和E预测未知X和E,目的就是通过预训练最大化Graph Likelihood。例如在step i时,利用step i之前已经生成的X_(<i)和E_(<i)预测生成X_i和E_i,公式表示如下所示:

生成任务便归纳为最大化logp_θ (X,E),接下来如何建立条件概率模型,最简单的一种方式便是认为生成X_i和生成E_i是相互独立的,即简化为如下公式:

但显然这样就完全忽略了Attribute和Edge之间的依赖,而图谱预训练模型最主要的便是要学习Node Attributes和Graph Structure之间的潜在依赖。于是文中提出交替预测,即用观测到的Edge预测未知的Attribute,用观测到的Attribute预测未知的Edge,这样便可以学习到节点属性和图结构之间的潜在依赖。公式如下:

问题2:Information Leakage问题解决方案

为了提高模型的训练效率,希望对输入的图只运行一次图模型即可同时对Attribute和Edge进行生成。但这样会存在一个信息泄露的问题,因为Edge Generation时需要节点Attribute作为输入,但这样就可能把节点Attribute泄露给Attribute Generation任务。因为本文将任务每个节点的任务拆成两个,即之前提到的Node Attribute Generation和Edge Generation两个任务,两个任务分开来训练。因为是自监督学习,需要对Attribute和Edge进行Mask,然后模型任务预测Mask的Attribute和Edge。

1、Attribute Generation任务: 损失函数Distance定义?如果是文本可以使用困惑度,如果是向量可直接用L2-Distance。

2、Edge Generation任务: 首先假设Edge之间是相互独立的,因此可将似然函数写成如下公式:

损失函数使用的是Negative Contrastive Loss,具体计算如下公式所示:

问题3:GPT-GNN for Heterogeneous Graph

异质图是指图中包含多类型关系和节点,GPT-GNN模型可以直接使用,唯一需要注意的是每种类型的节点和边都可能有自己的解码器。

问题4:GPT-GNN for Large-ScaleGraphs

1、Sub-Graph Sampling: 针对于Large-Scale Graphs必须需要进行子图采样,提供了两种采样方式LADIES算法和HGSampling算法,HGSampling是LADIES异质图的版本;

2、Adaptive Queue : 负采样时使用了Adaptive Queue,保证负采样时可以取到Global的负样本,而不局限于Local负采样,具体实现方式是保存一个存储Node Embedding的队列,每处理一个新的子图时,通过添加最新的节点表示并删除最旧的节点表示来逐步更新这个队列,这样便可以保证负采样时不仅仅只利用本子图的样例,可以看到全局的样本信息。

三、GPT-GNN Conclusion

结论: 在10亿规模的开放学术图OAG和亚马逊Amazon数据上的综合实验表明,GPT-GNN模型在不同下游任务中显著优于最先进的没有经过预训练的GNN模型,最高可达9.1%。

四、往期精彩

【知识图谱系列】Over-Smoothing 2020综述

【知识图谱系列】基于实数或复数空间的知识图谱嵌入

【知识图谱系列】自适应深度和广度图神经网络模型

【知识图谱系列】知识图谱多跳推理之强化学习

【知识图谱系列】知识图谱的神经符号逻辑推理

【知识图谱系列】动态时序知识图谱EvolveGCN

【知识图谱系列】多关系神经网络CompGCN

【知识图谱系列】探索DeepGNN中Over-Smoothing问题

【知识图谱系列】知识图谱表示学习综述 | 近30篇优秀论文串讲

【知识图谱系列】动态知识图谱表示学习综述 | 十篇优秀论文导读

【面经系列】八位硕博大佬的字节之旅

【机器学习系列】机器学习中的两大学派

各大AI研究院共35场NLP算法岗面经奉上

干货 | Attention注意力机制超全综述

干货 | NLP中的十个预训练模型

干货|一文弄懂机器学习中偏差和方差

FastText原理和文本分类实战,看这一篇就够了

Transformer模型细节理解及Tensorflow实现

GPT,GPT2,Bert,Transformer-XL,XLNet论文阅读速递

机器学习算法篇:最大似然估计证明最小二乘法合理性

Word2vec, Fasttext, Glove, Elmo, Bert, Flair训练词向量教程+数据+源码

汇报完整版ppt可通过关注公众号后回复关键词:GPT-GNN 来获得,有用就点个赞呗

【知识图谱系列】基于生成式的知识图谱预训练模型GPT-GNN相关推荐

  1. 知识图谱顶会论文(ACL-2022) PKGC:预训练模型是否有利于KGC?可靠的评估和合理的方法

    PKGC:预训练模型是否有利于KGC?可靠的评估和合理的方法 论文标题: Do Pre-trained Models Benefit Knowledge Graph Completion? A Rel ...

  2. 多模态语义检索 | 基于 MetaSpore 快速部署 HuggingFace 预训练模型

    首先,附上 Github 链接MetaSpore:https://github.com/meta-soul/MetaSpore,可搜索公众号元灵数智,在底部菜单了解我们 - 用户交流获取官方技术交流群 ...

  3. PERT:一种基于乱序语言模型的预训练模型

    写在前面 大家好,我是刘聪NLP. 今天分享给大家一篇哈工大讯飞联合实验室的论文,一种基于乱序语言模型的预训练模型-PERT,全名<PERT: PRE-TRAINING BERT WITH PE ...

  4. 基于动态提前退出的预训练模型推理加速简介

    ©PaperWeekly 原创 · 作者 | 李磊 单位 | 北京大学硕士生 研究方向 | 自然语言处理 随着如 BERT.RoBERTa 等预训练模型在一众自然语言处理任务上取得了出色的表现,如何在 ...

  5. 【论文精度】CodeBERT——基于自然语言和编程语言的预训练模型

    CodeBERT 论文地址:https://arxiv.org/abs/2002.08155 Abstract ​ 提出了一种用于编程语言(PL)和自然语言(NL)的双模态预训练模型CodeBERT, ...

  6. 基于Mindspore2.0的GPT2预训练模型迁移教程

    摘要: 这篇文章主要目的是为了让大家能够清楚如何用MindSpore2.0来进行模型的迁移. 本文分享自华为云社区<MindNLP-基于Mindspore2.0的GPT2预训练模型迁移教程> ...

  7. OpenAI打破文本和图像次元壁,提出基于对比学习的多模态预训练模型CLIP

    OpenAI 打破了自然语言与视觉的次元壁,推出了一个连接文本与图像的神经网络模型CLIP. 相关资料 CLIP原论文:Radford et al. Learning transferable vis ...

  8. 【知识图谱系列】基于互信息最大化的图谱预训练模型DGI InfoGraph

    作者:CHEONG 公众号:AI机器学习与知识图谱 研究方向:自然语言处理与知识图谱 本文介绍两篇基于互信息最大化的图谱预训练模型DGI(ICLR 2019)和InfoGraph(ICLR 2020) ...

  9. “知识图谱+”系列:知识图谱+图神经网络

    最近有很多朋友联系泽宇说想了解一些知识图谱和图神经网络(GNN)结合的研究.那泽宇当然要满足朋友们的要求啊,本期泽宇从知识图谱的几个不同研究方向总结了结合GNN的经典研究,也和大家一起分享.所有内容是 ...

  10. 斯坦福大学CS520知识图谱系列课程学习笔记:第一讲什么是知识图谱

    随着知识图谱在人工智能各个领域的广泛使用,知识图谱受到越来越多AI研究人员的关注和学习,已经成为人工智能迈向认知系统的关键技术之一.之前,斯坦福大学的面向计算机视觉的CS231n和面向自然语言处理的C ...

最新文章

  1. 图解c/c++多级指针与“多维”数组
  2. PHP常用函数及其注释
  3. Python 开发的 10 个小贴士,你知道几个?
  4. 一本可能引发社会调查行业革命的书
  5. Java中调用文件中所有bat脚本
  6. 宏正ATEN推出ALTUSEN全系列IP-Based远程机房管理方案
  7. VS2010 开发VC++ 生成release版本动态库配置
  8. Java设计模式笔记--------工厂模式------抽象工厂模式
  9. FPGA 实现SVPWM调制
  10. 康奈尔笔记法,早点认识你我可能去北大了
  11. Java成员变量调用方法赋值问题
  12. 【JavaWeb】实现网页验证码
  13. 【中学】求解一元二次方程
  14. 智慧营区解决方案-最新全套文件
  15. bigdicmal除法精度设置_使用java求高精度除法,要求保留N位小数
  16. 如何在Cisco Packet Tracer中创建多个路由器虚拟局域网(方法四)
  17. python基于PHP+MySQL的连锁酒店管理系统
  18. 张艾迪(创始人):23岁天才的创业史
  19. 厦门理工学院OJ题解(1139:秦心的面具)
  20. 汇总2020年融资租赁相关政策变动

热门文章

  1. JavaScript 学习笔记一 (入门篇)
  2. 整理Oracle日期时间函数
  3. 正视苦难,民族的心灵史——1942
  4. 关于添加文件删除权限
  5. 《Java程序设计语言(第4版)》阅读笔记(1)
  6. 基于OpenCV库的Gabor滤波器的实现
  7. 'mysql' 不是内部或外部命令,也不是可运行的程序或批处理文件的解决办法
  8. 3.自编码器(变分自编码器,VAE)
  9. webview 加载时闪烁黑一下_Web端页面加载卡顿缓慢问题解决方法分享
  10. c语言 分开整数各个数位