graph kernel 与 Wassertein distance


最近读了两篇将 OT 应用于 graph kernel 的论文,有一些收获,在此总结一下。1999年 David Haussler 等人写的论文 Convolution Kernels on Discrete Structures 是介绍核函数的定义以及机器学习中经典核函数的经典论文,可以阅读此文章了解核函数的基础知识。同时,核函数在机器学习中的应用可以参考论文 核方法在分类、回归于聚类方面的研究及应用。对机器学习比较了解的同学们可以从论文的2.2看起。
话不多说,直接上干货。

Wasserstein Weisfeiler-Lehman Graph Kernels

解决的问题

提出一个更好的 graph kernel 来度量两个图之间的相似度,可用于图分类问题。目前的graph kernel 大部分是基于 R-Convolution kernel,它们存在一些问题:

  1. 目前大部分的 graph kernel 使用的是子结构集合的 naive aggregation (e.g. sum or average),这样会丢掉个体分布的重要信息。
  2. 仅仅有一小部分 graph kernel方法可以扩展到连续的 attributed graph 中(大部分的 graph kernel 只能用于 labeled graph)。

本文的贡献

  1. 基于两个图 node feature representations,提出了两个图之间的 graph Wasserstein distance。
  2. 受 Weisfeiler-Lehman 启发,并且融入了 Wasserstein distance(两个 graph 的 node feature vector distribution 之间),提出了图嵌入方案(对于 categorically labelled graph 和 continuously attributed graph 都有用),改进了图分类任务的预测性能。
  3. 对于带 continuous attributes 的图分类问题,建立了一个新的 graph kernel。

我们的方法依赖于以下几步:
(1) 将每个图像转化为 node embedding 集合;
(2) 度量每对图之间的距离;
(3) 计算可以用于后续学习算法的相似度矩阵;

符号说明及定义

一个图可以表示为 G = ( V , E ) G=(V, E) G=(V,E)。其中 V V V 为点集, E E E 为边集。
n G = ∣ V ∣ n_G=\vert V \vert nG=V m G = ∣ E ∣ m_G=\vert E \vert mG=E
A graph is labelled if its nodes have categorical labels. 也就是说图上每个节点都有一个函数 l : V → Σ l: V \to \Sigma l:VΣ,其中 Σ \Sigma Σ 是有限的标签集。
A graph is attributed if for each node v ∈ V v \in V vV there exists an associated vector a ( v ) ∈ R m a(v) \in R^m a(v)Rm.
A graph has weighted edges if it has the function w : E → R w: E \to R w:ER
a ( v ) a(v) a(v) 为节点的 attributes,为一个整数, l ( v ) l(v) l(v) 为节点的分类标签,为高维的连续向量。

Wasserstein distance on graphs and graph kernel

在图中,每个点的嵌入向量为有限维,在两个向量集合 X ∈ R n × m X \in R^{n \times m} XRn×m X ′ ∈ R n ′ × m X' \in R^{n' \times m} XRn×m 之间的 Wassertein distance 为
W 1 ( X , X ′ ) = min ⁡ p ∈ Γ ( X , X ′ ) < P , M > W_1(X,X')=\min_{p \in \Gamma(X,X')} <P, M> W1(X,X)=pΓ(X,X)min<P,M>
其中 M M M 为 distance matrix, P ∈ Γ P \in \Gamma PΓ 为 transport matrix。
假设 需要被运输的 mass 之和为1,并且在 X X X X ′ X' X 上均匀分布,因此 P P P 的行和与列和分别为 1 / n 1/n 1/n 1 / n ′ 1/n^{'} 1/n

我们的方法依赖于以下几步:
1. 将每个图像转化为 node embedding 集合;
在这里插入图片描述
对于 labelled node 可以借用 Weisfeiler-Lehman(WL) scheme 来获得节点嵌入。WL scheme 是通过聚集节点及其邻居的 label,不断迭代得到一系列字符串的过程。设 l h ( v ) l^h(v) lh(v) h h h次迭代结果,观察邻居节点集合 N h ( v ) = { u 0 h , … , u d e g ( v ) − 1 h } N^h(v)=\{ u_0^h, \dots, u_{deg(v)-1}^h \} Nh(v)={u0h,,udeg(v)1h}
l h + 1 ( v ) = h a s h ( l h ( v ) , N h ( v ) ) l^{h+1}(v)= hash(l^{h}(v), N^h(v)) lh+1(v)=hash(lh(v),Nh(v))
l 0 ( v ) = l ( v ) l^0(v)=l(v) l0(v)=l(v)
对于 continuous attributes node a ( v ) ∈ R m a(v)\in R^m a(v)Rm ,对 WL scheme 进行扩展,得到适应于具有连续特征的节点嵌入 。
a h + 1 ( v ) = 1 2 ( a h ( v ) + 1 d e g ( v ) ∑ u ∈ N ( v ) w ( ( u , v ) ) ⋅ a h ( u ) ) a^{h+1}(v)=\frac{1}{2} (a^h (v) + \frac{1}{deg(v)} \sum_{u \in N(v)} w((u,v)) \cdot a^h(u) ) ah+1(v)=21(ah(v)+deg(v)1uN(v)w((u,v))ah(u))
a 0 ( v ) = a ( v ) a^0(v)=a(v) a0(v)=a(v)
如果边权重不存在,则令 w ( u , v ) = 1 w(u,v)=1 w(u,v)=1
根据上述节点嵌入后,我们可以得到图嵌入。也就是说图嵌入矩阵的每一行就是一个节点的前H次嵌入向量的拼接。
在这里插入图片描述

2. 度量每对图之间的距离;
在这里插入图片描述
首先定义两个节点对之间的 ground distance。
对于节点的分类特征,使用 normalized Hamming distance:
(两个节点的距离等于每个特征的距离的平均值)
在这里插入图片描述
对于节点的连续特征,使用 Euclidean distance:
在这里插入图片描述
将 ground distance 带入 Definition 1,使用 network simplex method 计算 Wasserstein distance。

3. 计算可以用于后续学习算法的相似度矩阵;
在这里插入图片描述
这是一个 Laplacian kernel。具体的算法如下:
在这里插入图片描述
WWL kernel 的性质如下:
(1) 用于分类特征的 WWL kernel 对于所有的 λ > 0 \lambda>0 λ>0 都是正定的。
(2) 在更一般的情况下,WWL kernel 不一定为一个正定核。
由于 WWL kernel 是不定核,我们将 WWL kernel 用于 Krein space 空间的学习算法。在使用 Krein SVM 的分类任务中 WWL kernel 表现良好。

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值