Message Passing and Node Classification

主要问题:给定一个在某些节点上有标签的网络,我们如何将标签分配给网络中的所有其他节点?
例如:在网络中,一些节点是欺诈者,而另一些节点是完全受信任的。如何找到其他欺诈者和值得信赖的节点?
在Lecture3中已经讨论了将节点嵌入作为解决这个问题的方法。今天将讨论一个可替代的框架:消息传递。
直觉上,网络中存在相关性,也即相似节点是连接的。关键概念是集体分类:将标签一起分配给网络中的所有节点。我们将介绍三种技术:

  • Relational classification 关系分类
  • Iterative classification 迭代分类
  • Belief propagation 信念传播

个人行为在网络中是相互关联的,相关性体现在附近的节点具有相同的颜色(属于同一类)。
image.png
导致相关性的主要依赖类型:
image.png
同质性Homophily:个体与相似人交往和结合的倾向。“物以类聚”,根据各种属性(如年龄、性别、组织角色等),在大量网络研究中都观察到了这一点。例如,专注于同一研究领域的研究人员更有可能建立联系(在会议上开会、在学术讲座中互动等)。
同质性例子:在线社交网络,节点=人,边=关系,节点颜色=兴趣(如运动、艺术等),兴趣相同的人由于同质性而联系更紧密。
image.png
影响Influence:社会关系可以影响一个人的个性特征。如,我向我的朋友推荐我的音乐偏好,直到他们中的一个渐渐喜欢上我最喜欢的类型。
我们如何利用网络中观察到的这种相关性来帮助预测节点标签?
image.png我们如何预测灰色节点的标签?
Motivation1,相似节点在网络中通常相近或直接连接

  • Guilt-by-association:如果我连接到带有标签的节点05 Label Propagation for Node Classification - 图5, 那么我很可能会有标签05 Label Propagation for Node Classification - 图6
  • 例子:恶意/良性网页,恶意网页相互链接,以提高可见性,看起来可信,并在搜索引擎中排名更高

Motivation2,网络中节点05 Label Propagation for Node Classification - 图7的标签分类依赖于

  • 05 Label Propagation for Node Classification - 图8的特征;
  • 05 Label Propagation for Node Classification - 图9的邻居节点的标签;
  • 05 Label Propagation for Node Classification - 图10的邻居节点的特征。

    半监督学习

    给定图,一些带有标签的节点,找到余下节点的类别。主要假设是网络中存在同质性。
    image.png
    例子:
    05 Label Propagation for Node Classification - 图1205 Label Propagation for Node Classification - 图13个节点的05 Label Propagation for Node Classification - 图14邻接矩阵,05 Label Propagation for Node Classification - 图15为标签向量,05 Label Propagation for Node Classification - 图16表示属于类1,05 Label Propagation for Node Classification - 图17表示属于类0。目标:对余下的没有标签的节点分类。

    Collective Classification方法

    应用:

  • 文件分类

  • 词性标注
  • 链路预测
  • 光学字符识别
  • 图像/三维数据分割
  • 传感器网络中的实体解析
  • 垃圾邮件和欺诈检测

直觉上,使用相关性对互连节点进行同时分类。使用概率框架,Markov假设一个节点05 Label Propagation for Node Classification - 图18的标签05 Label Propagation for Node Classification - 图19依赖于其邻居05 Label Propagation for Node Classification - 图20的标签。Collective classification包括3个步骤:

  • step1: 局部分类,分配初始标签。基于节点特征预测标签,属于标准的分类任务,没有使用网络信息。
  • step2: 关系分类,捕获节点之间的相关关系。基于节点标签或节点邻居的特征来学习一个分类器进行分类,用到了网络信息。
  • step3: 集体推断,通过网络传播关系。对每个节点迭代地运用关系分类,迭代至邻居标签间的不一致性最小化,网络结构影响最终的预测。

对没有标签的节点05 Label Propagation for Node Classification - 图21如何预测其标签05 Label Propagation for Node Classification - 图22?每个节点05 Label Propagation for Node Classification - 图23有个特征向量05 Label Propagation for Node Classification - 图24,部分节点的标签给定,基于所给的网络和特征,找到05 Label Propagation for Node Classification - 图25
我们聚焦于半监督节点分类,直观上基于同质性,相似节点一般相近或直接相连。这里介绍三种技术:

  • Relational classification 关系分类
  • Iterative classification 迭代分类
  • Belief propagation 信念传播

    Relational Classification and Iterative Classification

    Relational Classification

    基本思想:节点05 Label Propagation for Node Classification - 图26的类概率05 Label Propagation for Node Classification - 图27是其邻居类概率的加权平均值。对于有标签的节点05 Label Propagation for Node Classification - 图28,用真实标签05 Label Propagation for Node Classification - 图29来表示初始标签05 Label Propagation for Node Classification - 图30;对于无标签的节点,初始化05 Label Propagation for Node Classification - 图31。以随机顺序来更新所有节点,直至聚合或达到最大迭代次数。
    对每个节点05 Label Propagation for Node Classification - 图32和标签05 Label Propagation for Node Classification - 图33更新:05 Label Propagation for Node Classification - 图34
    若边有权重信息,则05 Label Propagation for Node Classification - 图35可以为05 Label Propagation for Node Classification - 图3605 Label Propagation for Node Classification - 图37的边权重。05 Label Propagation for Node Classification - 图38表示节点05 Label Propagation for Node Classification - 图39有标签05 Label Propagation for Node Classification - 图40的概率。
    挑战:
  1. 聚合没有保障;
  2. 模型没有使用节点的特征信息。

    例子

    初始化

  • 所有有标签的节点,用其标签;
  • 没有标签的节点,标签设为0.5(属于class 1的概率为0.5)

05 Label Propagation for Node Classification - 图41
image.png

1st Iteration, Update Node 3

image.png

1st Iteration, Update Node 4

image.png

1st Iteration, Update Node 5

image.png

After 1st Iteration

image.png

After 2st Iteration

image.png

After 3st Iteration

image.png

After 4st Iteration

image.png

Convergence

image.png

Iterative Classification

关系分类器不使用节点属性,那要如何利用它们呢?
迭代分类的主要思想是基于节点05 Label Propagation for Node Classification - 图51的属性05 Label Propagation for Node Classification - 图52和其邻居集合05 Label Propagation for Node Classification - 图53的标签05 Label Propagation for Node Classification - 图54,来对节点05 Label Propagation for Node Classification - 图55分类。
输入:图。05 Label Propagation for Node Classification - 图56表示节点05 Label Propagation for Node Classification - 图57的特征向量,部分节点05 Label Propagation for Node Classification - 图58有标签为05 Label Propagation for Node Classification - 图59
任务:预测无标签节点的标签。
方法:训练两个分类器,05 Label Propagation for Node Classification - 图60=基于节点特征向量05 Label Propagation for Node Classification - 图61来预测节点标签,05 Label Propagation for Node Classification - 图62=基于节点特征向量05 Label Propagation for Node Classification - 图63和总结05 Label Propagation for Node Classification - 图64的邻居的标签05 Label Propagation for Node Classification - 图65来预测节点标签。
我们要如何summary节点05 Label Propagation for Node Classification - 图66的邻居05 Label Propagation for Node Classification - 图67的标签05 Label Propagation for Node Classification - 图68
image.pngimage.png
迭代分类的框架:
Phase1: 基于节点属性单独分类

  • 在训练集上,训练分类器(如线性分类、神经网络等)
  • 05 Label Propagation for Node Classification - 图71用来基于05 Label Propagation for Node Classification - 图72预测05 Label Propagation for Node Classification - 图73
  • 05 Label Propagation for Node Classification - 图74用来基于05 Label Propagation for Node Classification - 图75和summary 05 Label Propagation for Node Classification - 图76 的邻居的标签05 Label Propagation for Node Classification - 图77预测05 Label Propagation for Node Classification - 图78

Phase2: 迭代至聚合

  • 在测试集上,基于分类器05 Label Propagation for Node Classification - 图79设置标签05 Label Propagation for Node Classification - 图80,计算05 Label Propagation for Node Classification - 图81和用05 Label Propagation for Node Classification - 图82预测标签
  • 重复每个节点05 Label Propagation for Node Classification - 图83,(1)对所有05 Label Propagation for Node Classification - 图84,基于05 Label Propagation for Node Classification - 图85更新05 Label Propagation for Node Classification - 图86;(2)基于新的05 Label Propagation for Node Classification - 图87更新05 Label Propagation for Node Classification - 图88
  • 迭代,直到类标签稳定或达到最大迭代次数

注:不保证收敛。

例子:网页分类

输入:网页的图。
节点:网页。
边:网页间的超链接。有向边:从一个网页指向另一网页。
节点特征:网页描述。为了简单起见,我们只考虑2 binary 特征。
任务:预测网页的主题。
Baseline:基于binary 节点属性,训练一个分类器(如线性分类)来对网页分类。
image.png
每个节点维护邻居标签的向量05 Label Propagation for Node Classification - 图9005 Label Propagation for Node Classification - 图91表示进入的邻居标签信息向量,05 Label Propagation for Node Classification - 图92表示出去的邻居标签信息向量。
05 Label Propagation for Node Classification - 图93如果至少有一个传入页面标记为0,类似定义05 Label Propagation for Node Classification - 图94
image.png
在不同训练集上,训练两个分类器:

  • 绿圈,仅有节点属性:05 Label Propagation for Node Classification - 图96
  • 红圈,节点属性和链接向量:05 Label Propagation for Node Classification - 图97

image.png
在测试集上,使用训练的节点特征向量分类器05 Label Propagation for Node Classification - 图99来设置05 Label Propagation for Node Classification - 图100
image.png
image.png
对所有节点更新05 Label Propagation for Node Classification - 图103
image.png
对所有节点重新用05 Label Propagation for Node Classification - 图105分类:
image.png
image.png
image.png

Summary

Relational classification

  • 基于节点邻居,迭代更新节点属于某一类标签的概率

Iterative classification

  • 改进集合分类以处理属性/特征信息
  • 基于特征信息和邻居的标签来对节点分类

    Belief Propagation

    信念传播是一种动态规划方法,用于回答图的概率查询(例如节点05 Label Propagation for Node Classification - 图109属于第1类的概率)。相邻节点相互“交谈”,传递消息的迭代过程。
    image.png
    达成共识后,计算最终信念。
    任务:计算图中节点的数量。
    条件:每个节点只能与其邻居交互(传递消息)。
    算法:

  • 定义节点顺序(形成路径)

  • 边方向根据节点顺序确定,边方向定义节点的消息传递顺序
  • 对于节点05 Label Propagation for Node Classification - 图111,从1到6:计算从节点05 Label Propagation for Node Classification - 图11205 Label Propagation for Node Classification - 图113的消息(到目前为止统计的节点数);从节点05 Label Propagation for Node Classification - 图11405 Label Propagation for Node Classification - 图115传递消息。

image.png
解决方法:每个节点都会侦听来自其邻居的消息,对其进行更新,并将其传递。05 Label Propagation for Node Classification - 图117表示消息。
image.png
我们不仅可以在路径图上执行消息传递,还可以在树结构图上执行消息传递。定义从叶节点到根节点的消息传递顺序:
image.png
在树结构中更新信念:(descendant 后代,子孙,后裔)
image.pngimage.png

Loopy BP Algorithm

什么样的信息会从05 Label Propagation for Node Classification - 图122传递到05 Label Propagation for Node Classification - 图123

  • 取决于05 Label Propagation for Node Classification - 图124从邻居那获取到的是什么
  • 每一位邻居都会给05 Label Propagation for Node Classification - 图125传递一条它对05 Label Propagation for Node Classification - 图126所处状态信仰的信息

符号:

  • Label-label potential matrix 05 Label Propagation for Node Classification - 图127:节点与其邻居之间的依赖关系。05 Label Propagation for Node Classification - 图128是基于邻居05 Label Propagation for Node Classification - 图129属于类05 Label Propagation for Node Classification - 图130时,节点05 Label Propagation for Node Classification - 图131属于类05 Label Propagation for Node Classification - 图132的概率比例。
  • Prior belief 05 Label Propagation for Node Classification - 图13305 Label Propagation for Node Classification - 图134是节点05 Label Propagation for Node Classification - 图135属于类05 Label Propagation for Node Classification - 图136的概率比例。
  • 05 Label Propagation for Node Classification - 图13705 Label Propagation for Node Classification - 图138的信息,用来估计05 Label Propagation for Node Classification - 图139属于05 Label Propagation for Node Classification - 图140
  • 05 Label Propagation for Node Classification - 图141是所有类/标签的集合。

image.png

  1. 初始化所有信息为1
  2. 对每个节点重复:

image.png
汇聚后:05 Label Propagation for Node Classification - 图144=节点05 Label Propagation for Node Classification - 图145 belief 为类05 Label Propagation for Node Classification - 图146
image.png

例子

现在我们考虑一个带循环的图,不再有节点排序。我们采用与前面相同的算法:从任意节点开始,沿着边更新邻居节点。
image.png image.png
来自不同子图的消息不在独立,但我们仍然可以运行BP,只是它会在循环中传递消息。

  • 信念可能不会聚合。信息05 Label Propagation for Node Classification - 图150是基于05 Label Propagation for Node Classification - 图151的初始belief,不是05 Label Propagation for Node Classification - 图152的单独证据。05 Label Propagation for Node Classification - 图153的初始belief(可能不是正确的)被循环强化,05 Label Propagation for Node Classification - 图154
  • 然而,在实践中,对于包含许多分支的复杂图,循环BP仍然是一种很好的启发式方法。

image.png

  • 消息不断循环:2, 4, 8, 16, 32, … 越来越多的节点相信这些变量是T!
  • BP错误地将此消息视为变量为T(true)的单独证据。
  • 将这两条消息相乘,就好像它们是独立的一样。但它们实际上并不来自图的独立部分,通过循环一方影响另一方。

这是一个极端的例子。在实践中,循环影响往往很弱。(由于周期较长或至少包含一个弱相关性。)

Advantages of Belief Propagation

优点:

  • 易于并行化和编程
  • 概述:适用于具有任何形式potentials的任何图模型,potential可以是高阶的,如05 Label Propagation for Node Classification - 图156

挑战:

  • 停止时不保证收敛,尤其是当有许多闭合回路时

potential函数(参数):

  • 需要训练来估计

    Summary

    我们学习了如何利用图中的相关性对节点进行预测。
    关键技术:

  • 关系分类

  • 迭代分类
  • 循环信念传播