作者: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. python中使用指定GPU
  2. linux系统下添加新硬盘的方法详解
  3. QIIME 2教程. 30补充资源SupplementaryResources(2020.11)
  4. 禁止 pdf 下载、打印的方法
  5. 公司的API接口被刷了,那是因为你没这样做!
  6. php pg connect,pg_connect
  7. P3723-[AH2017/HNOI2017]礼物【FFT】
  8. eclipselink_EclipseLink MOXy作为JAXB提供者
  9. 【BZOJ - 3993】星际战争(网络流最大流+二分)
  10. 华为P50外观定了:居中挖孔
  11. fragment类中的点击事件空指针异常
  12. linux ssh 推送文件_通过SSH实现Windows与linux之间传输文件
  13. 计算机领域男的多大年龄退休,2022年后男性几岁退休 2022退休时间表
  14. red hat linux 7.1 使用手册!,linux入门教材(Red Hat Linux 7.1)
  15. 【算法工程师】深度学习面试问题总结
  16. 网络天空、诺维格、高波、爱虫病毒专杀工具 040421 下载
  17. web前端开发面试题(五)
  18. python官网下载非常慢解决方法
  19. halcon轮廓擦除_HALCON高级篇:轮廓处理
  20. 电脑任务栏应用图标变成白色怎么恢复

热门文章

  1. 创建和使用视图及异名
  2. 背包问题2 (lintcode)
  3. Opera 首个 “重生” 版本亮相:启用全新用户界面
  4. 开源一个WEB版本GEF,基于SVG的网页流程图框架
  5. git 遇到fatal:multiple stage entries for merged file
  6. MySQL主从复制--mysql-proxy实现MySQL-5.6读写分离
  7. ssh中懒加载问题org.hibernate.LazyInitializationException
  8. P2P共享经济都可接受 O2O×××有何不可?
  9. 华为html如何自动换行,华为交换机不分页显示screen-length命令和screen-width每屏显示宽度-老肖的博客-51CTO博客,length怎么用...
  10. java怎么返回string_黄瓜Java-如何在下一步中使用返回的String?