文章目录
- 摘要
- 1.Introduction
- 2. 介绍两个概念
- 2.1 Dynamic Heterogeneous Network Model动态异构网络模型
- 2.2 时间随机游走
- 3NODE2BITS:基于散列的Emdedding框架
- 3.1 采样时间随机游动和定义时间上下文
- 3.2 基于多维特征的时态语境(上下文
- 3.3基于特征的上下文聚合和散列
- 4.EXPERIMENTS
摘要
在真实的web服务中,识别和匹配各种在线引用(例如,在不同设备和时间段上的会话)到同一用户的任务对于个性化和推荐是至关重要的。然而,传统的用户拼接方法(如分组或阻塞)需要对大量用户活动进行两两比较,从而对计算和存储都造成了挑战。最近的作品,往往是应用特定的,启发式地寻求减少比较的数量,但他们遭受低精度和回忆。为了以与应用程序无关的方式解决这个问题,我们采用了一种基于异构网络的方法,其中用户(节点)与内容(如会话、网站)交互,并且可能具有属性(如位置)。我们提出了node2bits,这是一种使用二进制哈希码表示节点上下文多维特征的高效框架。node2bits利用基于特征的时间步来封装异构web网络中节点之间的短期和长期交互,并采用SimHash来获得紧凑的二进制表示,避免了相似度搜索的二次复杂度。在大型真实网络上的大量实验表明,node2bits的性能比传统技术和现有工作都要好,后者在用户拼接方面的F1分数最高可达5.16%,而存储空间只占1.56%。
1.Introduction
个性化和推荐通过提供相关体验和处理新闻、web搜索、娱乐等方面的在线信息过载来提高用户满意度。随着时间的推移,准确地建模用户行为和偏好是个性化的核心。然而,追踪用户在线活动是一项挑战,因为用户每天都要与来自不同地点的数十台联网设备进行交互,导致用户档案支离破碎。如果没有统一的配置文件,所观察到的用户数据将是稀疏的、不具有代表性的,并且对于驱动业务成功的准确预测是不够的。
- 追踪用户的挑战
- 用户每天都要与来自不同地点的数十台联网设备进行交互,导致用户档案支离破碎。
在这项工作中,我们解决了身份或用户拼接的问题,其目的是识别和分组在不同渠道、平台、设备和浏览器[30]上发生的相同用户的登录和匿名会话。这个问题是实体或身份解析的一种形式[13,2],也称为实体链接、记录链接和重复检测[6,21,2]。在实体解析中,每个用户的文本信息(例如,姓名、地址)是可用的,而身份拼接仅依赖于用户与在线内容和web元数据的交互。虽然cookie可以帮助同一用户缝几个不同的会话,但许多用户有多个cookie(例如,每个设备或web浏览器的一个cookie)[8],而且大多数cookie在短时间内就会过期,因此不能帮助缝用户。类似地,IP地址在不同位置的变化会导致在不同时间拥有相同IP地址的用户(例如,机场)之间产生碎片甚至错误的拼接。与此同时,指纹识别方法基于设备或浏览器配置捕获用户相似度,而不是基于跨设备或浏览器保持一致的行为模式。另一方面,实体解析的穷举解决方案需要所有实体对之间的二次比较,这对于大型web服务在计算上是难以处理的。这可以通过阻塞[24]的启发式来部分处理,它将类似的实体描述分组到块中,并且只比较同一块中的实体。
-
本文做
- 实体链接
- 记录链接
- 重复检测
-
实体解析
- 每个用户的文本信息(例如,姓名、地址)是可用的,
- 身份拼接仅依赖于用户与在线内容和web元数据的交互
-
使用cookie–不可用
- cookie可以帮助同一用户缝几个不同的会话,
- 但许多用户有多个cookie
- 大多数cookie在短时间内就会过期,因此不能帮助缝用户
-
使用IP地址–不可用
- P地址在不同位置的变化会导致在不同时间拥有相同IP地址的用户(例如,机场)之间产生碎片甚至错误的拼接。
-
指纹识别方法
- 基于设备或浏览器配置捕获用户相似度,而不是基于跨设备或浏览器保持一致的行为模式。
- 不可能用跨设备或浏览器
-
穷举方案–分块处理
- 实体解析的穷举解决方案需要所有实体对之间的二次比较,这对于大型web服务在计算上是难以处理的。
- 这可以通过阻塞[24]的启发式来部分处理,它将类似的实体描述分组到块中,并且只比较同一块中的实体。
-
解决方案的思想:
- 相似用户::相同的用户跨平台访问相似的内容,并且随着时间的推移具有相似的行为。
- 动态异构网络中随时间变化的不同内容和平台的用户交互进行建模,其中用户将映射到对应于相同现实实体的节点的标识。
- 在节点表示学习成功的激励下,我们的目标是在这个丰富的交互网络中找到随时间变化的用户配置文件的嵌入。
-
挑战:
- 大型图数据–太大了
-
目标:
- 有效地找到稀疏的二进制表示
- 和基于相似活动的链接实体,同时
- 避免对所有用户配置文件进行两两比较
-
问题1(临时的、基于哈希的节点嵌入)。给定一个图G (V, E),基于散列的网络嵌入的目标是学习函数χ:V d{0,1}这样派生的二进制采用嵌入
- (1)在交互空间中保持相似性在G
- (2)有效利用空间
- (3)准确地捕获时间信息和底层网络的异构性。
-
Node2BITs:
- 它捕获网络中节点间的临时有效交互,并
- 基于拓扑特征和
- (可选)参与交互的实体侧信息。
-
本文的贡献:
- 基于嵌入的公式:超越传统的阻塞技术,我们将用户拼接的问题表述为在异构网络中寻找临时的、基于散列的嵌入的问题,以便它们在用户交互之间保持随时间的相似性。
- 节省空间的嵌入:我们提出node2bits,这是一个实用、直观、快速的框架,可以生成适合用户拼接的紧凑的二进制嵌入。我们的方法结合了上下文的随机步进抽样、基于特征的直方图表示和局部敏感哈希来保持上下文随时间的异构等价性。
- 广泛的经验分析:我们在真实网络上的实验表明,node2bits输出一种节省空间的二进制表示,比基线少使用63到339个空间,同时在用户拼接任务中获得了可比较或更好的性能。此外,node2bits对于大型的现实世界、时间和异构网络是可伸缩的
- https://github.com/GemsLab/node2bits.
2. 介绍两个概念
动态异构网络模型和时间随机游动
2.1 Dynamic Heterogeneous Network Model动态异构网络模型
- 我们将用户与内容、网站、设备等的交互建模为异构网络
- 异构网络:异构网络G = (V, E,ψ,ξ)
- V:节点集合
- E:边集
- 映射ψ:V→τV\tau_VτV节点类型
- (iii)映射ξ:E→TE\Tau_ETE边集类型
- 许多图类型是异构网络的特例:
- 同构图:∣τV∣=∣τE∣=1|\tau_V|=|\tau_E|=1∣τV∣=∣τE∣=1
- k部图: ∣τV∣=k,∣τE∣=k−1|\tau_V|=k,|\tau_E|=k-1∣τV∣=k,∣τE∣=k−1
- signed network:∣τV∣=1,∣τE∣=2|\tau_V|=1,|\tau_E|=2∣τV∣=1,∣τE∣=2
- labeled graph: a single label per node/edge.
- 建模为连续时间的动态网络
- (连续时间动态网络):一个连续时间动态、异构网络G = (V, Eτ,ψ,ξ,τ)
- Eτ:时间边
- τ:E→R+\tau:E\rightarrow R^+τ:E→R+将每条边映射到对应时间戳的函数
2.2 时间随机游走
- 图上的行走是节点序列,其中每对连续节点由一条边连接。目前流行的网络嵌入方法是使用随机化的过程生成游动[25,14]来构造节点ids或节点上下文的语料库。在连续时间动态网络中,时间上有效的遍历被定义为一组节点序列,这些节点由具有非递减时间戳的边连接(例如,表示用户内容交互发生的顺序),并且首次被提出并用于嵌入
- 定义:temporal walk:
- L:长度v1->vL在图G = (V, E,ψ,ξ)
- 路径:v1,v2,…,vL
- <vi,vi+1>∈Eτ,1≤i≤L时间顺序排列:τ(vi,vi+1)≤τ(vi+1,vi+2),1≤i≤L−1<v_i,v_{i+1}>\in E_\tau ,1\leq i\leq L\\ 时间顺序排列:\tau(v_i,v_{i+1})\leq\tau(v_{i+1},v_{i+2}),1\leq i\leq L-1<vi,vi+1>∈Eτ,1≤i≤L时间顺序排列:τ(vi,vi+1)≤τ(vi+1,vi+2),1≤i≤L−1
3NODE2BITS:基于散列的Emdedding框架
- 任务:用户拼接
- 目的:在实际交互的上下文中简洁地描述每个节点/实体(问题1)
- 要求
- 支持异构网络
- 保证数据中事件和交互的时间有效性;
- 在运行时扩展到具有数百万个节点/边的大型网络;
- 内存需求的规模与空间效率,但强大的二进制嵌入式可以捕获id无关的相似性。
- 我们详细介绍了node2bits的三个主要步骤:
- (3.1)采样时间随机游动和定义时间上下文;
- (3.2)基于多维特征构建时态语境;
- (3.3)将上下文聚合和散列成稀疏嵌入。我们在图2和算法1中给出了node2bits的概述
3.1 采样时间随机游动和定义时间上下文
node2bits的第一步是捕获节点上下文中的交互,这对于用户拼接任务非常重要:它不是简单的交互,而是通过随机漫步对更复杂的交互序列进行采样。但与许多现有的表示学习方法不同[25,14],我们的方法通过Lstep时间随机游走(定义3[23])对现实交互进行采样,从而满足需求R2。node2bits将节点u在时间距离t处的时间上下文CuΔtC_u^{\Delta t}CuΔt定义为采样的随机游走中时间距离Δt\Delta tΔt,距离为Δt\Delta tΔt的实体集合为u的上下文。
- 通过随机游走对更复杂的交互序列进行采样
- 上下文:CuΔt={v:∣wK[v]−wL[u]=Δt,任意wL∈W}wL[‘]是随即游走中对应节点的索引上下文:C_u^{\Delta t}=\{v:|w_K[v]-w_L[u]=\Delta t,任意w_L\in W\}\\w_L[`]是随即游走中对应节点的索引上下文:CuΔt={v:∣wK[v]−wL[u]=Δt,任意wL∈W}wL[‘]是随即游走中对应节点的索引
通常,小的时间距离值可以捕捉到实体间更直接的交互作用和相似性。在静态图中,∆t仅仅对应于采样序列中节点之间的距离,没有捕捉到任何时间信息。
时间局部性。上面定义的上下文没有明确地包含连续采样的交互之间经过的时间。然而,在建模临时用户交互时,区分短期转换和长期转换非常重要。受[23]的启发,node2bits解释了连续上下文之间的紧密性或局部性(例如,CuΔt和CuΔt+1C_u^{\Delta t}和C_u^{\Delta t+1}CuΔt和CuΔt+1)通过不同的偏置时间步长策略。例如,在短期策略中,节点u到v的
转移概率为softmax函数
- short-term transitions
- 转移概率:p(v∣u)=exp(−τ(u,v)/d)Σi∈Tτ(u)exp(−τ(u,i)/d)p(v|u)=\frac{exp(-\tau(u,v)/d)}{\Sigma_{i\in \Tau_\tau(u)}exp(-\tau(u,i)/d)}p(v∣u)=Σi∈Tτ(u)exp(−τ(u,i)/d)exp(−τ(u,v)/d)softmax
- d=maxe∈Eττ(e)−mine∈Eττ(e)d=max_{e\in E_\tau}\tau(e)-min_{e\in E_\tau}\tau(e)d=maxe∈Eττ(e)−mine∈Eττ(e) 所有时间戳的总持续时间,
- Tτ(u)\Tau_\tau(u)Tτ(u)时间邻域的集合:从节点u通过时间有效边到达。
- long-term transitions
- 转移概率同上
- 同样,在长期政策中,节点u到v的转移概率如式(2)所示,但分子分母上都有正的符号。
3.2 基于多维特征的时态语境(上下文
式(1)中的上下文取决于节点标识(IDs)。然而,在多平台环境中,单个实体可能有多个节点id,因此可能导致看起来不同的上下文。为了生成与身份无关的适合用户拼接的上下文,我们通过假设相应或相似的实体具有相似的特征,使时态上下文具有属性感知或特征感知(R1)。正式,我们假设一个网络可能有一组输入节点属性(如IP地址,设备类型),以及一组导出拓扑特性(例如,学位,PageRank),所有这些都存储在一个N
x|F
|特性矩阵F(图2中,步骤1)。然后,我们推广我们的随机漫步不仅依据时间(R2)[23],还捕获这个特性信息使用的概念认为/特点走在[1提出
- 与id无关的上下文:我们通过假设相应或相似的实体具有相似的特征,使时态上下文具有属性感知或特征感知(R1)
- 基于特征的时间随机游走:(通用的
3.3基于特征的上下文聚合和散列
用户缝合的关键点是,随着时间的推移,每个用户都通过类似的关系与类似类型的实体进行交互:例如,在在线销售日志中,用户可能在登录和匿名会话中浏览类似类型的商品;在在线社交网络中,分享几乎相同的互动模式(如回复或分享)的账户可能来自同一个人。基于这一认识,node2bits使用节点类型(以及隐含的对应关系或边缘类型)增强了先前生成的时间、多维特征上下文,这是异构网络(R1)的一个关键属性。随后,它将它们聚合起来,并通过对位置敏感的哈希得到保持相似性和节省空间的二进制实体表示(R4)。
- 关键点:行为相似的用户是同一个人。
- node2bits:上下文(节点类型+时间+多维特征)->聚合->位置敏感的hash保持相似性,二进制实体表示
context聚合。与现有的将上下文特征聚合成单个值(如平均值或最大值)的工作不同[15,29],node2bits将它们聚合成更低损耗的表示形式:通过区分节点类型(R1)为异构网络定制的直方图。具体地,通过进一步将式(4)中的导出上下文条件设置在节点类型pi∈Tvp_i\in\Tau_vpi∈Tv(即,每个时态上下文只包含一个节点类型的特征)。我们将基于特征和节点类型的时间上下文表示为CuΔt∣f,pC_u^{\Delta t}|f,pCuΔt∣f,p。节点u在时间距离t处的最终直方图表示由t处条件上下文上的直方图连接组成(图2,步骤3)。
在这种表示法中,特征被对数地结合起来,以解释结构特征(如度)的经常偏态分布。我们注意到,直方图可以进一步扩展到[19]中所示的边缘类型,例如,通过区分由多种类型的边缘连接的节点对。
- simHash:保持相似性的hash表示(也保证了空间效率
- 余弦相似度也被映射过去了
- 余弦相似度也被映射过去了
4.EXPERIMENTS
- 标准
- 有效吗?
- 比以前好嘛
- 可扩展吗
- 空间需求低否
- 任务构建
- 用户链接–二元分类任务,每一对节点,是否是一个人?
- 用户链接–二元分类任务,每一对节点,是否是一个人?