使用特征传播重构缺失数据进行图机器学习
大多数图神经网络通常在所有节点都可用的特征假设下运行。但是在现实世界的中,特征通常只有部分可用(例如,在社交网络中,只有一小部分用户可以知道年龄和性别)。本文种展示的特征传播是一种用于处理图机器学习应用程序中缺失的特征的有效且可扩展的方法。它很简单,但效果出奇地好。
图神经网络 (GNN) 模型通常假设每个节点都有一个完整的特征向量。以一个 2 层 GCN 模型 [1] 为例,它具有以下形式:
Z = A σ(AXW₁) W₂
该模型的两个输入是编码图结构(归一化的)邻接矩阵 A 和作为行的节点特征的特征矩阵 X,输出为节点嵌入 Z。GCN 的每一层执行节点特征变换(参数化可学习矩阵 W₁ 和 W₂),然后将转换后的特征向量传播到相邻节点。这里面一个重要的概念是:GCN 假设 X 中的所有条目都被观察到。
但是在现实世界的场景中,经常会看到一些节点特征可能会缺失。例如,年龄、性别等人口统计信息可能仅对一小部分社交网络用户可用,而内容特征通常仅对最活跃的用户呈现。例如在推荐系统中并非所有产品都有与之相关的完整描述,这使得情况变得更加严重,随着人们对数字隐私的认识不断提高,越来越多的数据只有在用户明确同意的情况下才能获得。
根据上面的描述,特征矩阵都有缺失值的,大多数现有的 GNN 模型都不能直接应用。最近的几项工作派生了能够处理缺失特征的 GNN 模型(例如 [2-3]),但是这些模型在缺失特征率很高(>90%)的情况下受到影响,并且不能扩展到具有超过几百万条边的图.
在 Maria Gorinova、Ben Chamberlain (Twitter)、Henry Kenlay 和 Xiaowen Dong (Oxford) 合着的一篇新论文 [4] 中,提出了特征传播 (FP) [4] 作为一种简单但高效且令人惊讶的有效解决方案。简而言之,FP 通过在图上传播已知特征来重构缺失的特征。然后可以将重建的特征输入任何 GNN 以解决下游任务,例如节点分类或链接预测。
特征传播框架。输入是缺少节点特征的图(左)。在初始步骤中,特征传播通过迭代地扩散图中的已知特征来重构缺失的特征(中)。随后,图和重建的节点特征被输入到下游 GNN 模型中,然后产生预测(右)。
传播步骤非常简单:首先,未知特征用任意值初始化[5]。通过应用(归一化的)邻接矩阵来传播特征,然后将已知特征重置为其真实值。我们重复这两个操作,直到特征向量收敛[6]。
特征传播是一种简单且令人惊讶的强大方法,用于在缺少特征的图上进行学习。特征的每个坐标都被单独处理(x 表示 X 的一列)。
FP 可以从数据同质性(“平滑性”)的假设中推导出来,即邻居往往具有相似的特征向量。同质性的水平可以使用Dirichlet energy来量化,这是一种测量节点特征与其邻居平均值之间的平方差的二次形式。Dirichlet energy[7] 的梯度流是图热扩散方程,以已知特征作为边界条件。FP 是使用具有单位步长的显式前向 Euler 方案作为该扩散方程的离散化获得的 [8]。
动画展示了随着特征传播的更多迭代应用而标量节点特征的演变示例。未知特征被初始化为零,但很快收敛到使给定图上的Dirichlet energy最小化的值。
完整文章
https://www.overfit.cn/post/f6b25ef08a94498f905c5ce69bf13f4d