IJCAI19–Semi-supervised User Profiling with Heterogeneous Graph Attention Networks
引言
当前用户画像任务大多视为分类任务,利用文本或行为信息分类用户的个性化画像,如性别、年龄等,在这之中,将每一个用户看作是个体实例,但这存在两个问题:
- 只有一种类型的信息被用于推断用户画像,并且其他类型的数据无法自然地集成。极少地研究触及多类型用户画像问题。需要设计手工制作地特征或混合方法。
- 仅利用到了个体自己的特征,一些相同特征则被忽视掉,例如共同点击、共同购买,社交网络中用户的关系也可看做一种半监督信号用于提升用户画像构建。
本文贡献:
- 提出了异构图中半监督的用户画像构建方法,为开发多种类型数据集成的解决方案提供了思路。
- 我们开发了一个异构的图注意力网络框架HGAT,充分利用图结构和节点特性,从有限的标记数据中学习用户画像。
相关研究
用户画像
逻辑回归、支持向量机、梯度提升决策树对用户性别等信息进行预测
利用深度神经网络和注意力机制等进行预测,但是需要手工设计特征或混合方法。
图注意力网络
GAT是GCN的扩展,使用一个遮盖的自组伊利层,能够分配给不同邻居不同权重。
问题形式化T
异构图
如图1,异构图G(V,E)中V包含用户、项目、属性,边包含用户间的关系 E u u E_{uu} Euu,用户项目的交互 E u i E_{ui} Eui,以及项目具有的属性 E i a E_{ia} Eia。
例如在电商场景中,item就是产品,属性可能就是商品标题中包含的词,每一个产品包含一些属性(词),每一名用户可能购买了一些产品。 E u u E_{uu} Euu表示用户有共同购买或是共同点击。
异构图中的子图
根据边的不同可以分为三个子图,即用户-用户子图、用户-项目子图、属性-项目子图
半监督的用户画像
一个用户画像问题是推断用户性别和年龄标签。
论文的目标是使用一些用户的标签和大量的异构图中的非监督信息,例如用户、项目、属性间的交互。
定义3.1半监督的用户画像问题
半监督用户画像旨在基于一些用户的监督标签和大量的异构图中的非监督信息推断用户标签。
异构图注意力网络(HGAT)
输入层和嵌入层
输入层是异构图中节点和边的信息。
属性嵌入使用Fast-Text利用整个项目标题语料库学习词嵌入。这些嵌入向量被看作属性的低维表示。
异构图注意力层
异构图表示学习的两个问题:
-
如何更新节点嵌入向量
-
信息如何在异构图中传播
对于问题一,使用3异构图注意力操作进行嵌入向量更新。对于问题二,提出源路径感知的图传播定义异构图中信息传播方法
异构图注意力操作
异构图注意力操作基于邻居节点信息更新节点的嵌入向量。将节点嵌入向量矩阵从 H ∈ R ∣ V ∣ × F \mathbf{H} \in \mathbb{R}^{|V| \times F} H∈R∣V∣×F转换为 H ′ ∈ R ∣ V ∣ × F ′ \mathbf{H}^{\prime} \in \mathbb{R}^{|V| \times F^{\prime}} H′∈R∣V∣×F′。这些操作的不同点在于计算方式。
论文中使用了三种异构图注意力操作: Vanilla Attention Operation,图卷积操作和图注意力操作
Vanilla Attention Operation
给定一个节点 i i i和他的邻居 N i \mathcal{N}_{i} Ni,它的新嵌入向量 h i ′ \mathbf{h}_{i}^{\prime} hi′被如下步骤计算:
e i j = c T tanh ( W h j + b ) α i j = exp ( e i j ) ∑ k ∈ N i exp ( e i k ) h i ′ = ∑ j ∈ N i α i j h j \begin{array}{l} e_{i j}=\mathbf{c}^{T} \tanh \left(\mathbf{W h}_{j}+\mathbf{b}\right) \\ \alpha_{i j}=\frac{\exp \left(e_{i j}\right)}{\sum_{k \in \mathcal{N}_{i}} \exp \left(e_{i k}\right)} \\ \mathbf{h}_{i}^{\prime}=\sum_{j \in \mathcal{N}_{i}} \alpha_{i j} \mathbf{h}_{j} \end{array} eij=cTtanh(Whj+b)αij=∑k∈Niexp(eik)exp(e