作者:Xu, Xovee and Zhou, Fan and Zhang, Kunpeng and Liu, Siyuan
链接:CCGL: Contrastive Cascade Graph Learning | IEEE Journals & Magazine | IEEE Xplore
(1)如何以对比、自我监督和任务无关的方式学习图级联的通用知识,特别是如何利用大量未标记的级联数据
(2)如何在对比学习框架中构建正、负样本对,同时捕捉数据的变化和级联的动态扩散特性
(3)如何以半监督和任务特定的方式对下游级联预测任务的预训练模型进行微调
(4)如何对模型进行知识蒸馏
(1)设计了一种数据增强策略,通过模拟图中的信息扩散来捕捉变化和不确定性
(2)自监督对比学习图级联任务
(3)使用有标签的数据,微调模型,来学习特定于任务的级联模型
(4)使用teacher-student架构进行知识蒸馏,进一步增强了模型
主要分三类:(1)基于特征的模型,在不同的人工设计的特征上进行特征信息级联
(2)时间模型,主要研究时间序列数据,并加入额外的全局信息。
(3)基于深度学习的模型,用深度神经网络去学习级联特征表达,缺点是监督学习需要大量标签
利用数据本身作为监督,利用大量未标记数据来改善表征学习和下游任务。
主要通过(1)代理任务;(2)对比学习
数据增广在自监督学习中非常重要。与文本和图像不同,图谱数据通常是非欧氏的、稀疏的和复杂的。
最简单的图增广方法就是增加\减去节点\边,但如何选择点\边,如何选择增\减,如何给新的图打上标签等等都是存在的阻碍。现有的方法:随机移除边并且覆盖节点;基于模型预测,增加\删除两点之间的边;使用图自编码器作为一个边预测器去增\减边。GCC设计了一种子图的实例区分代理任务。
本文设计了一种针对图级联的数据增强方式,同时移除边和节点,不学习节点\图谱的分类
给定一个信息项,比如一个推特或是一篇论文,在时刻发布,在经过一段时间后,收到M个引用或转发,然后这些序列组成一个信息级联,其中用户在时刻收纳了项。级联图可以定义为扩散树,其中代表一组在中的用户,代表用户之间吸收的关系。本文中关注信息级联的时间-结构建模,即给定一个级联图序列,在学习下游级联应用中学习级联图的有效表示。
给一个在时刻观察到的级联图,流行度预测目的是预测该级联(图)在预测时间到时的未来流行度(或大小) 。
为了探索和理解无监督学习框架的哪些部分可以有利于级联表示的学习,本文集中回答以下三个问题。
传统的预测模型中,这些图都是简单的从训练和评估过程中过滤出来。自监督学习强调了从大量无标签的数据中学习有效的特征表达的重要性。
图谱结构与图片和文本不同,是非欧式的结构。前人的图谱数据增广往往是聚焦于图神经网络以及节点\图谱分类,它们中的大多数只考虑边缘和特征操作,而忽略节点处理。
本文提出了一个级联图谱的增广操作:我们模拟社交网络(或其他类似的网络,如新闻和学术)中的信息扩散机制,首先采用时间顺序遍历图中每个节点,然后计算每个节点的吸引力概率。根据它们在级联图中的优先级,当前节点可以吸引新的吸引者(?大概意思是有新的关注),也可以失去现有的追随者。
目前暂未有将对比学习应用于级联模型学习的。本文提出了CCGL,其中级联图形编码器的主干网络是可以随意选择的。任何图表示学习模型和图神经网络,或其他专门设计的级联学习模型都可以用作级联图编码器。
CCGL主要由3个部分组成:
(1)级联图谱数据增广
(2)自监督预训练
(3)模型精调和数据蒸馏
在典型的信息级联预测中,无标签的数据往往都被排除在外。未标记的级联也应该被考虑,并以无监督的方式学习标记级联和未标记级联的表示。
现有的数据增广方法无法直接应用于级联学习,原因如下:
(1)针对文字\图像的数据增广手法无法直接应用在图谱上
(2)一个树形结构的级联图从一个根节点(例如,一篇新发表的文章或论文)开始,然后扩散并动态演化到更大的受众(例如,转发或引用)。以任意方式添加/删除节点或边可能会极大地改变级联图的结构。级联图中的节点具有时间特征,即节点的采用时刻对级联图建模至关重要,因为节点数量相近甚至结构相同的级联图,可能在不同时刻有不同的表现。
本文提出了一个新的级联图谱增广方法:AugSIM
在获取图拓扑或节点/边缘特征具有一定相似性的基础上,提出了一种简单而有效的基于用户影响和采用时间的增强方法。在级联图谱中的每一个用户,计算其吸引概率去控制结点增加的过程,计算公式为
其中, 增广强度代表了级联的超参,用来控制增加的结点数目。其实就是结点的度最高的最容易被增加。新增的结点与相连,应该以分配一个采用时间作为一个结点的特征。一个项的采用时间可以看作是人类反应时间的一个例子(类似于做出反映的时间)。本文同时计算一个局部的采用时间和一个全局的采用时间,新增节点的采用时间计算公式为:
其中,是平衡两个采用时间的权重参数,是级联平均采用时间,是从指数分布中获得的全局采用时间,指数分布如下:
其中,是一个速率参数,它可以从数据集的所有采用次数中经验拟合。
以及结点特征,以及边,添加进图谱,并且每一个结点都与其父母结点相连。在中增加的预期节点数由控制,的计算公式为
相应地,增加的边数与增加的节点数相同。相似的,我们遍历增广过后的结点集合中的每一个叶结点。对每一个叶结点,计算其的删除概率,公式如下
其中, 是的父母结点。其实就是父母结点的度最高的最容易被删除。对于删除结点\边的数目为。为了简化流程,结点删除过程只在叶子结点上执行,使得图谱的主要级联结构可以保持。
然而,可以使用其他更复杂的策略来模拟信息扩散,例如:
(1)新增结点对新的结点吸引力更大
(2)不仅移除叶子结点还移除他们的父母结点
(3)考虑更多的特征
(4)采用泊松过程、Hawkes自激励过程等随机点过程
本文使用节点度和采用时间来增强级联图,创建不同但相似的图视图,以便稍后进行对比建模。AugSIM策略可以看作是信息在网络中再扩散的一个实例,它保留了扩散的基本模式,并引入了一些变化和不确定性。
数据增广:首先用数据增广来构建视图。对一个给定的,对图谱增广两次得到两个不同但相似的视图,记作和,这两个视图构建一个正例对。
级联图谱编码:对级联图进行编码,将其表示为矢量,同时在图中捕捉时间和结构信息。本文使用级联预测模型VaCas,主要含有两个部分:(1)基于谱图小波的图嵌入和(2)双向的基于GRU的网络,以学习级联数据中的情境化用户行为。这两个部分将级联图谱映射到一个定长特征表示。为了进一步了解潜在因素之间的关系,避免表征中可能出现的噪声,添加了一个MLP作为预测头,将映射到。
对比损失:衡量正样本对和的相似性,常见的对比损失计算公式。
针对下游任务的级联预测的CCGL微调和知识蒸馏:
精调:根据具体的任务对模型进行精调。给级联图谱添加标签精调模型,对比学习的映射头可以完全抛弃了,只对级联图谱编码器进行精调,使用均方误差计算损失
其中,和分布代表预测的概率和真实的概率。
知识蒸馏:使用老师-学生网络对模型进行知识蒸馏。老师网络复制了经过微调的预测器,学生网络则从零开始。强行使得学生网络的预测尽可能的与老师网络的预测一致,通过下列损失函数
其中,N表示有标签样本的数目,和分别是老师网络和学生网络的预测结果。老师网络的参数是固定的,学生网络的参数根据更新
互信息最大化:理论上来说,学习级联图谱特征表示的过程就是一个互信息最大化的过程。用公式可以表示为,其中表示神经网络。神经网络由一个将级联图谱映射到的图编码器,以及一个将映射到MLP投影头构成。模型需要学习区分正对以及边缘概率分布构成的负对,公式为:
投影头深度对模型效果的影响
模型大小和预训练轮次的影响
带有标签和无标签的级联模型蒸馏比微调模型带来了额外的改进
超参敏感度
个人觉得最核心的创新点是对图谱的增广手法,精调模型和知识蒸馏真的能算入这个模型中吗?