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

<p><span style="font-size:15px">EvolveGCN (AAAI 2020) 分享</span></p><p><span style="font-size:15px">EvolveGCN汇报ppt版可通过关注公众号【AI机器学习与知识图谱】后回复关键词:</span><span style="font-size:15px"><strong>EvolveGCN</strong></span><span style="font-size:15px"> 来获得,供学习者使用!</span></p><p><span style="font-size:15px">
</span></p><p><span style="font-size:18px"><strong>背景知识 </strong></span> </p><p>
</p><p><span style="font-size:15px">在上一篇中讲解了异质知识图谱在处理复杂实体间多关系类型的方案。本篇分享知识图谱落地时另一重要场景:动态时序知识图谱,下面先给出动态时序知识图谱的基本概念,方便还不熟悉的同学有一个更好的理解。</span></p><p><span style="font-size:15px">
</span></p><p><span style="font-size:15px">首先知识图谱本质上就是一个语义网络,由节点Node和边Edge构成,每个Node表示现实世界中存在的实体Entity,而每条边表示实体与实体之间的关系。简单来说,知识图谱就是把所有不同种类的信息连接在一起而得到的关系网络,比如社交网络。由于这种关系网络会随着时间推移,实体以及实体间的关系会不断变化,为了全面获取知识,搭建动态知识图谱,在知识图谱数据中加入时间维度,利用时序分析技术和图相似性技术,分析图谱结构随时间的变化和趋势,从而掌握到关键信息。</span></p><div class="image-package"><img src="https://upload-images.jianshu.io/upload_images/26011021-9171ea07125fb635.jpeg" img-data="{"format":"jpeg","size":9950,"height":224,"width":357}" class="uploaded-img" style="min-height:200px;min-width:200px;" width="auto" height="auto"/>
</div><p><span style="font-size:15px">上图展示了一下动态图谱,节点和边的颜色代表不同种类,可以看出图谱从时刻t到时刻t+1,图谱的结构有明显变化。比如金融动态知识图谱,学习到图谱间的时序信息便显得十分重要,本篇便介绍AAAI 2020的一篇解决动态图谱的模型EvolveGCN,EvolveGCN思路较为创新但不是目前SOTA的方案,之后会陆续分享TGAT此类解决动态时序图谱的方案。</span></p><p><span style="font-size:15px"> </span></p><p><span style="font-size:18px"><strong>Motivation</strong></span> <span style="font-size:15px"> </span></p><p>
</p><p><span style="font-size:15px">在介绍EvolveGCN之前,对于动态时序图谱,试想一下:我们是不是可以对每个时刻t的图谱用GCN进行建模学习得到Node Embedding,再使用RNN将不同时刻的Node Embedding串联起来学习动态特性,这貌似是一种较为直接简单的方案。但仔细思考,此方案会要求每个时刻node都必须存在,但在有些场景下,每个时刻的Node存在不同。</span><span style="font-size:15px">因此EvolveGCN思路便是用RNN去演化每个时刻GCN模型的参数,而不是用RNN串联Node Embedding。</span></p><div class="image-package"><img src="https://upload-images.jianshu.io/upload_images/26011021-58c9e5154923ff74.jpeg" img-data="{"format":"jpeg","size":81809,"height":365,"width":511}" class="uploaded-img" style="min-height:200px;min-width:200px;" width="auto" height="auto"/>
</div><p>
</p><p><span style="font-size:18px"><strong>Method</strong></span> <span style="font-size:15px"> </span></p><p><span style="font-size:15px"/></p><p><span style="font-size:15px">下图便是EvolveGCN模型图,为了实现动态学习主要注意以下三点:</span></p><p><span style="font-size:15px">1、每个时间片单独学习一个GCN,每个GCN输入不同体现在图谱的邻接矩阵不同,但在代码实现时必须要求每个时刻的节点是保持一致的,而节点之间的关系存在变动;</span></p><p><span style="font-size:15px">2、为了考虑动态图谱联系,用RNN将每个时间片GCN模型参数串起来进行序列学习</span></p><p><span style="font-size:15px">3、RNN循环网络采用两种:GRU,LSTM</span></p><div class="image-package"><img src="https://upload-images.jianshu.io/upload_images/26011021-501a1336d684af34.jpeg" img-data="{"format":"jpeg","size":22155,"height":247,"width":522}" class="uploaded-img" style="min-height:200px;min-width:200px;" width="auto" height="auto"/>
</div><p>
</p><p><span style="font-size:15px"><strong>实现方案一:EvolveGCN-H</strong></span><span/></p><p><span style="font-size:15px">EvolveGCN-H版本使用GRU对参数进行串联学习,GUR模型的隐藏状态使用上一时刻的参数</span></p><div class="image-package"><img src="https://upload-images.jianshu.io/upload_images/26011021-709e56164c0903e8.jpeg" img-data="{"format":"jpeg","size":779,"height":36,"width":45}" class="uploaded-img" style="min-height:200px;min-width:200px;" width="auto" height="auto"/>
</div><p><span style="font-size:15px">,而GRU的输入当前时刻的节点表征</span></p><div class="image-package"><img src="https://upload-images.jianshu.io/upload_images/26011021-16eda6ca07c0abbc.jpeg" img-data="{"format":"jpeg","size":588,"height":32,"width":34}" class="uploaded-img" style="min-height:200px;min-width:200px;" width="auto" height="auto"/>
</div>,更新公式为:<p/><div class="image-package"><img src="https://upload-images.jianshu.io/upload_images/26011021-df42b2f7af00286c.jpeg" img-data="{"format":"jpeg","size":9573,"height":103,"width":407}" class="uploaded-img" style="min-height:200px;min-width:200px;" width="auto" height="auto"/>
</div><p>
</p><p><span style="font-size:15px">因此Node Embedding</span></p><div class="image-package"><img src="https://upload-images.jianshu.io/upload_images/26011021-50de8cd32d0b256f.jpeg" img-data="{"format":"jpeg","size":588,"height":32,"width":34}" class="uploaded-img" style="min-height:200px;min-width:200px;" width="auto" height="auto"/>
</div><p><span style="font-size:15px">和参数</span></p><div class="image-package"><img src="https://upload-images.jianshu.io/upload_images/26011021-c8ce1c41160f1f7c.jpeg" img-data="{"format":"jpeg","size":661,"height":31,"width":34}" class="uploaded-img" style="min-height:200px;min-width:200px;" width="auto" height="auto"/>
</div><p><span style="font-size:15px">的</span><span style="font-size:15px">更新公式</span><span style="font-size:15px">为:</span></p><div class="image-package"><img src="https://upload-images.jianshu.io/upload_images/26011021-ec9f1caf4f493fc8.jpeg" img-data="{"format":"jpeg","size":12028,"height":121,"width":480}" class="uploaded-img" style="min-height:200px;min-width:200px;" width="auto" height="auto"/>
</div><p><span style="font-size:15px"/></p><div class="image-package"><img src="https://upload-images.jianshu.io/upload_images/26011021-7ecb77da1a5134e5.jpeg" img-data="{"format":"jpeg","size":14785,"height":189,"width":500}" class="uploaded-img" style="min-height:200px;min-width:200px;" width="auto" height="auto"/>
</div> <p/><p><span style="font-size:15px">
</span></p><p><span style="font-size:15px"><strong>实现方案二、EvolveGCN-O</strong></span></p><p><span style="font-size:15px">EvolveGCN-O版本使用LSTM对参数进行串联学习,LSTM模型的隐藏状态使用上一时刻的参数</span></p><div class="image-package"><img src="https://upload-images.jianshu.io/upload_images/26011021-57bc4ee2875b8bd8.jpeg" img-data="{"format":"jpeg","size":779,"height":36,"width":45}" class="uploaded-img" style="min-height:200px;min-width:200px;" width="auto" height="auto"/>
</div>,同时其输入也是用上一时刻参数的<div class="image-package"><img src="https://upload-images.jianshu.io/upload_images/26011021-84df28abbada26e1.jpeg" img-data="{"format":"jpeg","size":779,"height":36,"width":45}" class="uploaded-img" style="min-height:200px;min-width:200px;" width="auto" height="auto"/>
</div>,更新公式为:<p/><div class="image-package"><img src="https://upload-images.jianshu.io/upload_images/26011021-302bb1b7bff75860.jpeg" img-data="{"format":"jpeg","size":6168,"height":106,"width":291}" class="uploaded-img" style="min-height:200px;min-width:200px;" width="auto" height="auto"/>
</div><p>
</p><p><span style="font-size:15px">因此Node Embedding</span></p><div class="image-package"><img src="https://upload-images.jianshu.io/upload_images/26011021-50937462f146c318.jpeg" img-data="{"format":"jpeg","size":588,"height":32,"width":34}" class="uploaded-img" style="min-height:200px;min-width:200px;" width="auto" height="auto"/>
</div>和参数<div class="image-package"><img src="https://upload-images.jianshu.io/upload_images/26011021-d566222e3973be9c.jpeg" img-data="{"format":"jpeg","size":661,"height":31,"width":34}" class="uploaded-img" style="min-height:200px;min-width:200px;" width="auto" height="auto"/>
</div>的更新公式为:<p/><div class="image-package"><img src="https://upload-images.jianshu.io/upload_images/26011021-554884235746a7fe.jpeg" img-data="{"format":"jpeg","size":12857,"height":130,"width":489}" class="uploaded-img" style="min-height:200px;min-width:200px;" width="auto" height="auto"/>
</div><p><span style="font-size:15px"/></p><div class="image-package"><img src="https://upload-images.jianshu.io/upload_images/26011021-0913c55e46013dbc.jpeg" img-data="{"format":"jpeg","size":15208,"height":189,"width":530}" class="uploaded-img" style="min-height:200px;min-width:200px;" width="auto" height="auto"/>
</div> <p/><p><span style="font-size:15px">
</span></p><p><strong><span style="font-size:15px">EvolveGCN-H和EvolveGCN-O版本对比</span></strong><strong><span style="font-size:15px"/></strong></p><p><span style="font-size:15px">1、串联参数使用的RNN模型不同,EvolveGCN-H使用的是GRU,而EvolveGCN-O使用的是LSTM;</span><span style="font-size:15px">2、因为EvolveGCN-O在参数更新时没有使用,因此nodefeature是非常有用时例如人工处理得到的,那使用EvolveGCN-H版本,如果Node feature在图谱结构中不是很重要便可采用EvolveGCN-O版本。</span></p><div class="image-package"><img src="https://upload-images.jianshu.io/upload_images/26011021-650a5a67dbf3ceff.jpeg" img-data="{"format":"jpeg","size":32515,"height":195,"width":491}" class="uploaded-img" style="min-height:200px;min-width:200px;" width="auto" height="auto"/>
</div><p><span style="font-size:15px">
</span></p><p><span style="font-size:18px"><span><strong>Conclusion</strong></span></span><span style="font-size:15px"> </span></p><p><span style="font-size:15px"> </span></p><p><strong><span style="font-size:15px">1、实验结果(Link Prediction)</span></strong><span style="font-size:15px"/></p><p><span style="font-size:15px">(1)对于数据集SBM、UCI和AS,至少有一个版本的EvolveGCN可以获得最佳结果;</span></p><p><span style="font-size:15px">(2)对于数据集BC-OTC和BC-Alpha,EvolveGCN优于GCN和GCN-GRU,但低于DynGEM和Dyngraph2vec</span></p><div class="image-package"><img src="https://upload-images.jianshu.io/upload_images/26011021-5a07cb8975690006.jpeg" img-data="{"format":"jpeg","size":23186,"height":128,"width":554}" class="uploaded-img" style="min-height:200px;min-width:200px;" width="auto" height="auto"/>
</div><p><span style="font-size:15px"> </span></p><p><span style="font-size:18px"><strong>往期精彩</strong></span></p><p>
</p><p><span style="font-size:14px">干货 | Attention注意力机制超全综述</span></p><p>【面经系列】八位硕博大佬的字节之旅</p><p>【机器学习系列】机器学习中的两大学派
</p><p><span style="font-size:14px">机器学习中优化相关理论知识简述</span></p><p><span style="font-size:14px">Transformer 模型的 PyTorch 实现</span></p><p><span style="font-size:14px"/></p><p><span style="font-size:14px">干货|一文弄懂机器学习中偏差和方差</span></p><p><span style="font-size:14px">Transformer模型细节理解及Tensorflow实现</span>
</p><p><span style="font-size:14px"/></p><p><span style="font-size:14px">机器学习算法篇:最大似然估计证明最小二乘法合理性</span></p>

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 218,451评论 6 506
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 93,172评论 3 394
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 164,782评论 0 354
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,709评论 1 294
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,733评论 6 392
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,578评论 1 305
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,320评论 3 418
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 39,241评论 0 276
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,686评论 1 314
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,878评论 3 336
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,992评论 1 348
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,715评论 5 346
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,336评论 3 330
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,912评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 33,040评论 1 270
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 48,173评论 3 370
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,947评论 2 355

推荐阅读更多精彩内容