gragh embedding相关论文小结(二)

#dynamic graph embedding论文总结
-Net2Net:ACCELERATING LEARNING VIA KNOWLEDGE TRANSFER
-DynGEM:Deep Embedding Method for Dynamic Graphs
-Continuous-Times Dynamic Network Emebddings
-Inductive Representation Learning on Large Graphs


##Net2Net:ACCELERATING LEARNING VIA KNOWLEDGE TRANSFER
这篇论文是Google在2016ICLR上的一篇论文,主要解决的问题在于想在训练student neural network的时候借助训练好的teacher neural network来加速student NN的训练,即文中提到的function-preserving transformation,也就是说两个神经网络你和相同的函数,用前一个网络训练号的参数来初始化后面的网络以达到”knowledge transferring”的效果。其实做法比较简单,论文中对两个网络进行了网络类型的约束,并不是general的。具体方法主要涉及到两种:Net2WiderNet和Net2DeeperNet。前者加宽网络,可以加宽任意层的神经单元,增加的神经单元实际是随机选取前任神经网络对应层中的神经网络进行复制过来的,同时改变与该层相关的权重矩阵。后者加深网络,加深的原则是某两层之间加上一个初始的identity matrix作为权值参数矩阵,就相当于加上了一层网络,这层的权重参数当然在训练的时候trainable。这种方法可以实现随着训练数据的到来改变神经网络结构,从而适应不同的数据,但是前提假设他们拟合的是相同的function,类似于迁移学习却又有很大不同。


##DynGEM:Deep Embedding Method for Dynamic Graphs
这篇论文主要解决的问题就是针对dynamic graph 的embedding问题。dynamic graph有区别于static graph的特点,节点和边均可随时增减,也就是网络结构随时变化。现有的方法基本只针对static graph作用,遇到dynamic graph效果就会差劲。这篇论文基于的前提假设是认为可以把dynamic graph看作不同时刻的快照snapshot,然后对每一个时刻的snapshot来处理以实现dynamic graph的处理,并且是后一时刻的embedding要用前一时刻的embedding来初始化即incremental。而实现从输入数据到每个node embedding的模型是使用SDNE的模型也就是autoencoder模型同时很小地修改了目标函数,为了适应dynamic graph变化的特点,论文采用了上面一篇论文中的Net2WiderNet和Net2DeeperNet方法来变化神经网络结构。论文中一直强调stable embedding,就是graph结构变化很小的话那么embedding也应该变化很小。扩展网络结构与否文中使用了启发式的方法,不满足条件就加深/加宽网络结构。目标函数是四项线性加和的形式,一个是针对local first-order proximity的,一个是针对global second-order proximity的,另两个是正则化项防止过拟合用的。
SDNE(Structural Deep network Embedding)的目标函数与该篇论文中的目标函数几乎一致。

##Continuous-Times Dynamic Network Emebddings
这篇论文简单说就是把DeepWalk中针对静态network的random walk改成了针对dynamic network考虑了时域的temporal random walk,按照时间t采样,实际可以看成通信网络中数据包的传递过程,在t(i)时刻数据包从u节点传到了v节点则该时刻这两个节点之间就有了边,然而下一个时刻可能就没有这条边了所以采样的时候每条边记作(u,v,t)。而每条random walk都是需要其时间因素非减小的,同时也要按照节点到邻居节点的模式来walk,这样取得的长度介于w和L之间的path作为输入数据输入进神经网络模型之中。后面还是用的skip-gram模型处理生成node embedding。其related work中提到那些在temporal network的论文:
-Charu Aggarwal and Karthik Subbian. 2014. Evolutionary network analysis: A survey. CSUR 47, 1 (2014), 10.
-* P. Holme and J. Saramäki. 2012. Temporal etworks. Physics Reports *
-David F. Gleich and Ryan A. Rossi. 2014. A Dynamical System for PageRank with Time-Dependent Teleportation. Internet Mathematics (2014), 188–217
-Fan Chung. 2007. Random walks and local cuts in graphs. Linear Algebra and its applications 423, 1 (2007), 22–32
-Ryohei Hisano. 2016. Semi-supervised Graph Embedding Approach to Dynamic Link Prediction. arXiv preprint arXiv:1610.04351 (2016)
-Nitin Kamra, Umang Gupta, and Yan Liu. 2017. Deep Generative Dual Memory Network for Continual Learning. arXiv preprint , arXiv:1710.10368 (2017)
-John Boaz Lee, Ryan Rossi, and Xiangnan Kong. 2017. Deep Graph Attention Model. In arXiv:1709.06075
-Yuxiao Dong, Nitesh V Chawla, and Ananthram Swami. 2017. metapath2vec: Scalable Representation Learning for Heterogeneous Networks. In SIGKDD. 135– 144
-**

##Inductive Representation Learning on Large Graphs
这就是常常提到的GraphSAGE模型,其有多个版本起源于GraphSAGE的AGGREGATOR有多种选择,例如文章中提到的MEAN aggregator,LSTM aggregator以及Pooling aggregator。实际不仅仅GraphSAGE的聚合器有多种选择,对于GNN相关的模型都是会有两个函数aggregator和conbine。本篇论文中认为transductive方法不能处理unseen node,而inductive可以predict unseen node。关于transductive和inductive的区别在于transductie采用已知训练数据来直接推测测试数据,而inductive则会生成一个通用的模型来推测,在训练数据少的时候当然transductive优于inductive,然而在有新数据到来的时候由于inductive有通用模型可以使用则可以直接借助模型预测而transductive则需要依据到来的新数据以极大的计算复杂度实现预测新数据。所以inductive类似于贝叶斯统计,所以在大数据量的前提下才能得到比较符合规律的模型。而transductive则更像是MLE,直接采用观察到的数据来预测。KNN和SVM的一般化模型便是transductive的。而这篇论文的整体算法流程文章以伪代码的形式给出:
在这里插入图片描述
说得简单一点就是先采样(也不是一般的random walk,采样K跳节点来刻画中心节点),再对采样序列应用AGGREGATE,之后便是与指点的node embedding进行CONCAT(这里的CONCAT就是GNN相关模型说的CONBINE)。当然优化是需要loss func的,这里的损失函数就是sigmoid+nagtive sampling形式的,也就是说基于节点的co-occur原理,类似于word2vec模型的处理方法。
这是篇很好的论文,我认为它最好的地方倒是它说明GraphSAGE来源于 Weisfeiler-Lehman (WL) isomorphism 算法,并且在其中对比了两者的相似性,而且在这一段中提到的了我最近才感觉出来的一个想法:“we replace the hash function with trainable neural network aggregators”,神经网络从某个角度看就是在代替传统的hash function,而且以一种可优化可训练依赖于数据的方式来替代hash function。
另外GraphSAGE用到了input features,这在其他论文中被成为side information,是辅助graph embedding的信息。但是这里利用的方式我感觉有待改进。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值