一、提出动机
不同的用户在他们的兴趣方面是不同的,并且同一用户也可能对各种项目感兴趣。
1.1、之前模型的缺点
- 基于协作过滤的方法:通过历史交互项或隐藏因素来表示用户兴趣,这会受到稀疏性问题或计算要求的影响。
- 基于DNN的方法:通常用低维嵌入向量来表示用户兴趣,如YouTube DNN通过从用户过去的行为转换的一个固定长度的向量来表示每个用户,这可能是建模不同兴趣的瓶颈,我们必须将与用户多样化兴趣相关的所有信息压缩到一个表示向量中。 因此,有关用户不同兴趣的所有信息混合在一起,导致匹配阶段的项目检索不准确。而且它的维度必须很大才能表达用户的不同兴趣,从而增加很多参数可能会导致过拟合。
- DIN:通过注意力机制使用户表示在不同的候选项目上有所不同,以捕捉用户兴趣的多样性。然而,注意力机制的采用也使得其很难应用在计算上对于具有十亿级的大规模项目,因为其需要针对每个项目重新计算用户表示,使得DIN仅适用于排名阶段。
1.2、本文主要工作
在召回阶段建模表示用户的不同兴趣,通过使用多兴趣提取器层和新提出的标签感知注意力层产生的用户表示向量,构建一个用于个性化推荐任务的深度神经网络。
多兴趣提取器层:利用动态路由自适应地将用户的历史行为聚合到用户表示中。动态路由的过程可以被看作是软聚类,它将用户的历史行为分组到几个簇中。每个历史行为聚类还用于推断与一个特定兴趣相对应的用户表示向量。
对于特定用户,MIND输出多个表示向量,这些表示向量共同表示用户的不同兴趣。这样,在匹配阶段就分别考虑了用户的不同兴趣,从而能够针对各个兴趣方面进行更准确的项目检索。
用户表示向量只计算一次,可以在匹配阶段用于从十亿级项目中检索相关项目。
- "胶囊"的概念是由欣顿在2011年首次提出的,它是一小群神经元组装起来输出一个完整的向量。
- 代替反向传播,动态路由用于学习胶囊之间连接的权重,通过利用期望最大化算法进行改进,以克服几个缺陷并实现更好的准确性。
- 这两个与传统神经网络的主要区别使得胶囊网络能够编码部分与整体之间的关系,胶囊可以成功地比传统CNN更好地建模对象的空间关系。
二、模型介绍
2.1、任务背景
每个实例可以由元组