菜鸟笔记之《Graph Convolutional Neural Networks for Web-Scale Recommender Systems》

       本文作者来自斯坦福,都是大牛呀。这是一篇难得的GCN大型网络应用类的文章。再提一句,斯坦福在网络计算,社交网络,graph embedding领域很厉害,有自己的主页,公开了很多数据集合。不过很遗憾,这篇文章既没有公开数据,也没有公开代码。猜想可能是由于和Pinterest公司合作,涉及商业数据以及数据量高达十几T的原因。说实话,这篇文章的实验部分没有看懂,涉及到MapReduce并行计算多GPU单机训练,本人没有接触过这些技术,所以这部分自觉略过了,不过,也给自己提了个醒,图挖掘领域,工业界免不了的大图,分布式是逃不了的,未来要找时间学习这部分知识。如果有读者对这篇文章的实验部分有一些理解和见地,欢迎联系完善本文。
       言归正传,这篇文章的应用背景是推荐系统,用户提交需求,例如如何做一道菜,系统反馈推荐的菜单结果类似这样的场景。构建用户-商品二分图,千亿用户,十亿商品,借鉴GCN,提出PinSage算法。文章说的是pin and board,我就把它权且理解成商品和用户了。模型训练时在3亿节点,18亿边的网络上进行的,这个网络还是挺稠密的。本文将主要介绍该论文的模型算法部分。
       论文中模型设计的目的是为了得到节点的embedding表示,优化目标是正例内积最大化和负例内积小于给定阈值。这里说明一下,正例指的是查询项(query item)和推荐相关项(related item)embedding之间的距离;负例则指的是正例指的是查询项(query item)和推荐不相关项(unrelated item)embedding之间的距离。因此,关键是如何求得embedding。
       常见的graph embedding的方法,有node2vec,embedding等。这两种都是无监督方法,且仅根据网络结构,不考虑节点特征,因此,也正是这两种方式的普适性就导致对于特定的分类预测问题,效果表现并不好。还有就是最近很火的GCN,作为一种端到端的半监督学习方式,GCN在分类问题中,不仅考虑了节点特征,并且将特征和网络结构整合,通过将每个节点的邻居节点信息作用到自身,相当于一个消息传播的过程,同时也存在着难以调参、很难收敛的问题,而且传统的GCN在全图上做操作,对于大图而言,有很大的计算限制。门控图序列神经网络也具有计算限制,一般在节点数小于1万的网络中起作用,图递归神经网络笔者目前不是很了解,学习后会另写一篇分享。因此,本文提出了局部图卷积模型。


局部图卷积示意图

       如图所示,下半部分的结构分别是以A,B,C,D,E,F为根节点的分支,每个分支包含各根节点的两度邻居节点。我们可以卡出 ,对于不同的节点,其邻居节点个数不同,这就遇到在上一篇文章我们提到的问题,节点的邻居节点个数不同以及邻居节点的无序性。这篇文章是这样解决的:

  1. 邻居数目不一致:通过将每个邻居节点的特征在对应维度上求平均或者做最大池化,最终带节点的特征表示还是原来的n维;
  2. 邻居无序问题转化为邻居节点重要性问题:我们可以看到在根节点的子树中,有些节点多次出现,因此根据当前节点(根节点)的子节点访问次数来确定邻居节点的重要程度。
           论文提出的PinSage算法的核心是局部卷积操作(如下图)。
    算法

    该算法中要解决的问题是:f(z_u)\rightarrow {z_u^{new}}
           该网络是考虑邻居节点重要性,所以有一个邻居权重向量\alpha在算法一第一行,\alpha是通过卷积过程中对邻居节点访问次数来决定的(上文第2点)。通过一个全连接网络以及Relu激活函数提取邻居特征,然后通过\gamma函数将邻居特征与权值矩阵\alpha作用得到n_u,作者说\gamma具体是通过聚合池化起作用,但是没有详述。这一步可以理解成对u节点的邻居节点进行采样,通过全连接操作按照邻居重要性得到一个聚合的邻居向量表示n_u;算法第二行将该向量和节点当前表示z_u拼接,通过另一个全连接层得到z_u^{new};第三行做了一个规范化操作,因为随着不断将邻居节点信息聚合到自身节点上,注意在这个迭代过程中,每个自身节点也是其他节点的邻居节点,因此为了保证训练过程中节点向量中每一维量级的稳定,加入了基于L_2范式的规范化的操作。
           最后总结一下,这篇论文的主要工作是提出一种随机游走加局部图卷积的用于生成节点embedding表示的模型。

作者原创,欢迎交流,如需转载请先联系作者。

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

推荐阅读更多精彩内容