前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >蚂蚁金服论文

蚂蚁金服论文

原创
作者头像
轻吻晴雯
发布2018-04-20 20:58:48
1.8K4
发布2018-04-20 20:58:48
举报
文章被收录于专栏:杂文共赏杂文共赏

图特征传播:图表征学习的新视角

蚂蚁金服的一篇论文,发表在arxiv。

摘要

图(Graph)的特征传播,也就是图中表征的学习过程。

文献研究了:

  1. 定义了图特征传播和特征传播的收敛条件
  2. 研究了现有方法,诸如:node2vec 和 structure2vec
  3. 我们把节点表示扩展到了边,并且用真实的交易欺骗数据进行了实验

介绍

通常,图表征学习的目标是学习一个函数:f(\mathcal{X},\mathcal{G}) ,利用\mathcal{G}空间中附加的图结构,而不是传统的只考虑f(\mathcal{X}) 。图表征学习过程主要涉及在表征在图上的传播。 GCN Kipf and Welling, 2016 or structure2vecDai et al., 2016 的传播形式:

H^{(t+1)}=\phi(A)H^tW

H\in \mathbb{R}^{N,K}表示在向量空间\mathbb{R}^K 中学习N个节点的嵌入关系,t表示第t次迭代,\phi(.) 表示图邻接矩阵A\in \{0,1\}^{N,N}的操作。W\in \mathbb{R}^{K,K} 是传播参数。

我们把模型扩展为edge2vec,每条边都是一个向量,这样可以存储2个节点之间的多条变(即2个用户间的多笔交易)

问题定义

图定义为\mathcal{G}=(\mathcal{V},\mathcal{E}) ,其中\mathcal{V} 是节点集合,\mathcal{E} 是边集合,邻接矩阵A=\begin{bmatrix}a_{ij}\end{bmatrix}_{n*n} ,如果(i,j)\in \mathcal{E}那么a_{ij}=1,否则为0。图的对角线元素D=diag(d_1,d_2,...,d_n) 。节点特征集合为\mathcal{} \mathcal{X}=\{x_1,x_2,...,x_n\} ,其中x_i=[x_{i1},x_{i2},..,x_{id}]^T 对应节点v_i的特征。如果存在(可能不存在),我们把边的特征集合定为\mathcal{X}^{(e)}=\{x_1^{(e)},x_2^{(e)},...,x_m^{(e)}\} 其中x_i^{(e)}=[x_{i1}^{(e)},x_{i2}^{(e)},...,x_{id}^{(e)}]^T ,可以写为X^{(e)}=[x_{1}^{(e)},x_{2}^{(e)},...,x_{m}^{(e)}]^T 。如果标签在节点中,标签向量表示为Y=[y_1,y_2,...,y_n]^T ;如果标签在边中,标签向量表示为Y^{(e)}=[y_1^{(e)},y_2^{(e)},...,y_m^{(e)}]^T

对于传统的模型,构建模型的方式为:

Y=f(X;\theta)Y^{(e)}=f(X^{(e)};\theta)

然而,这种方式只使用了边或点。而特征邻居的邻居也可能是有用的。例如,在一个社交网络中,假设一个人没有填写年龄,那么我们就不能利用这个信息;但是如果我们利用他邻居的特征的平均数或中位数来作为他的特征。我们定义来自特征XX^{(e)}的扩展特征为\widetilde{X}\widetilde{X^{(e)}}

定义1(扩展特征)

\widetilde{X}=\varphi(X,X^{(e)};\theta_p)\widetilde{X^{(e)}}=\varphi(X^{(e)},X;\theta_p)

我们把\widetilde{X}\widetilde{X^{(e)}} 称为扩展特征,\varphi 称为扩展特征函数。

模型将变为:

Y=f(\widetilde{X};\theta)=f(\varphi(X,X^{(e)};\theta_p);\theta)

Y^{(e)}=f(\widetilde{X^{(e)}};f(\theta)=\varphi(X^{(e)},X;\theta_p);\theta)

其中,参数\theta_p 是扩展特征参数;\theta 用于最终标签的拟合参数。扩展特征的学习步骤:

  1. 初始化\theta_p\theta
  2. 通过\varphi(X,X^{(e)};\theta_p)函数把X扩展到\widetilde{X}
  3. 计算预测值\widehat{Y}=f(\widetilde{X};\theta)
  4. 反向传播loss(Y,\widehat{Y}) 更新\theta\theta_p
  5. 重复2-4步直到loss最小

图中,扩展特征一般通过图的拓扑结构,节点或边的特征扩展是通过其邻居。

定义2:(特征传播)

图中原始边和节点特征为X=[x_1,x_2,...,x_n]^TX^{(e)}=[x_1^{(e)},x_2^{(e)},...,x_n^{(e)}]^Ti \in [1,n] \text{ and } j \in [1,m]

\widetilde{x_i}=\varphi({x_i,\underset{\text{k is i's neighbor}}{\{\widetilde{x_k}\}},\underset{e_k\text{ is ad joint to node i}}{\{\widetilde{x_k^{(e)}}\}});\theta)}

\widetilde{x^{(e)}_i}=\varphi{(x^{(e)}_j,\underset{\text{node k is related to }e_j}{\{\widetilde{x_k}\}};\theta_p)}

我们把\widetilde{X}\widetilde{X^{(e)}} 称为传播扩展特征,\varphi{} 函数为特征传播函数。

虽然每一个节点/边的特征仅能利用它邻居,但是通过定义2迭代可以获得邻居的邻居信息。

经典特征传播公式

\widetilde{x_i}=W_1^Tx_i+W_2^T\sum_\limits{j\in N(i)}^{}\widetilde{x_j} i=1,2,..,n

通过公式证明(具体不推导了)得出一个定理:

定理1

  • 条件1:W_2 非负
  • 条件2:max\{W_2^Te\}<1

满足这两个条件可以保证特征传播(公式8)收敛。

\widetilde{X}=XW_1+D^{-1}A\widetilde{X}W_2 \tag{$8$}

数据集描述

#Nodes

#Edges

#Fraud

#Normal

Training Data

626,003

1,720,180

31,737

1,668,441

Testing Data

1,355,824

4,034,962

86,721

3,984,241

结果

总结和未来工作

  1. 提出了定义和设计了结构
  2. 判断了收敛条件
  3. 思考了其他方法
  4. 进行了实验

stru2vec数值溢出问题,我们虽然指出了这个问题却没有解决。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 图特征传播:图表征学习的新视角
  • 摘要
  • 介绍
  • 问题定义
    • 经典特征传播公式
    • 总结和未来工作
    领券
    问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
    http://www.vxiaotou.com