狙击GNN打败deepmind的Graphormer内核情景分析
-
Agent的潜意识
2021-06-20 13:11:41
-
数据库开发技术
-
原创
1、今年KDD图数据挖掘有三个赛道,Graphormer 夺冠的其中之一,另两个赛道还是GNN的天下。不过话说回来,也许是Graphormer 派的人没有时间去finetune 调参去另两个赛道比赛。 2、夺冠的Graphormer是18个model ensemble的结果。比分也是微弱优势领先。MAE领先0.004.
但看了下,发现百度的模型是73个model 集成的,deepmind的模型是20个model集成的。从这个角度看,Graphormer的底层核心信号提取能力确实是有些提升的。 但你细看下论文会发现,他的底层model其实有两个,一个是graphormer,还有一个是ExpC*(扩展卷积model)。不过ExpC*的效果比graphormer的效果要差一些,但两个模型(你可以多训练几个ckpt)做融合后,效果变好,说明还有一些信号没有被graphormer提取到。说明graphormer还有提升的的空间。
赢得比赛他们做了很多特征工程的工作,这里就不分析。不过插一句话,很多人问我,研究模型结构有意义么?实际工作中,模型结构大差不差,核心还是样本数据集的清洗构建,深入理解业务的特征工程,这样拿业务结果比优化模型结构快的多。这里我统一做一个回复:这个问题也是第四范式的戴文渊曾经在交大读博时候的疑惑,然后他毅然放弃攻博转工业界了。但你不要忘记了,在百度凤巢的时候,是他第一个用深度学习的model来解广告算法问题的。 从根本上说,样本和特征的构建,是食材;你食材不好,当然烧不好饭菜;而模型结构则是工具,要庖丁解牛一样,工具越好,才能得到更好的效果。拿学习考试来举例,样本和特征相当于拿到了很多跟高考一样的题目集,如果你很聪明,学得更好,分数更高。人的学习能力就是model架构。这一节的idea有点类似谷歌最早期的pagerank算法,他又两个维度:图中一个节点,你从多少个节点获取信息,这个就是图的入度;同理,你影响多少个节点,这个就是图的出度。这两个数是被训练过程中模型学的。源代码在这里:
他有一个初始值,然后被编码成一个可以学的节点,生成的embedding一起表征节点的特征。 他们一开始用的是欧式距离来表征节点之间的距离,而不是最短路径,后来发现欧式距离的泛化性能不好,然后优化成了高斯径向基(Gaussian Radial Basis Function (RBF)kernel)函数。来改进这个距离编码的泛化能力。源码中很明显写了一层RBFlayer。
边就是两个节点之间的连线,他在图中有具体的物理含义的。但是,他有一个缺点,就是只代表了两个节点之间有连线的物理意义,而不是整个图的表征信息;而transformer是要打破边界的,他要从更大范围去考虑节点与节点之间的关系。 白话一点解释,两个人住在同一个小区,他们之间的物理意义是连在一条边上的,但他们老死不相往来,两个人的互相影响基本是0;而反而A跟他在海外的共同论文作者W经常Zoom沟通,他们之间的关系更紧密;再进一步,A不认识W的导师,他们之间没有边,但W的脑回路都是他导师刷的,那么其实A更被W的导师影响。 你有了这个认识后,就是怎么把这样的信号学到的问题了。文章给了一个很好的建模思路,他构建了一个边的bias 权重,这个权重是在模型里学的。 整个模型结构其实就是一个基本的tranformer。他只有一个优化点就是加了一个层归一化。
总结一下,整个graphormer可以看成是为了让tranformer能够解决图数据挖掘的问题,在边、节点、距离表征上做了一层预处理。 之所有要做这一层预处理与tranformer的机理与图网络天然不兼容有关系。图网络是一个考虑邻居节点的结构,而tranformer更多的是考虑全局的注意力机制,你们是不是邻居节点他不关心。因而需要做一些改进才可以充分挖掘出隐藏的信号。 更进一步说,这样的改变是从根本上重构了GNN,他打碎了老图中边的概念,构建了一个“地球村”一样的真实新图。 18年初的时候,我一直分享注意力机制的文章,那个时候的注意力机制还比较零散,现在已经run进模型结构中了。当初说过,注意力机制跟人眼、人脑的运行机制类似。一个让模型“活”起来的方法。详见: 目前来看,tranformer确实是一个表达力更强的架构。但graphormer编码的还不是真实的人类社会。人类社会应该是一个多智能体合纵连横的模型才可以。目前的graphormer还是一个单一目标的优化器。1、https://zhuanlan.zhihu.com/p/48508221详解tranformer:Attention Is All You Need2、https://arxiv.org/abs/2106.05234 DoTransformers Really Perform Bad for Graph Representation?3、FIRST PLACE SOLUTION OF KDD CUP 2021 OGB LARGE-SCALE CHALLENGEGRAPH-LEVEL TRACK