目录
RS中深度学习的两类方法:表示学习和匹配函数学习
在搜索中,query和document由相同的术语组成,对他们的术语直接进行匹配至少是有意义的。在推荐中,用户和项来自不同语义的空间,不能直接匹配。CF的方法有:矩阵分解、基于神经网络的、基于图的。
为了使用更多的side info,许多模型提了出来。这些模型可以用到re-ranking阶段,比如用到CTR预估上。
用于RS的基于深度学习匹配方法分为两类:
- 表示学习,神经网络用于生成用户和物品的表示。
- 匹配函数学习,神经网络用于对用户和物品(或者content)产生交互作用,生成匹配信号,聚合这些信号为最终的一个匹配得分。
1 基于表示学习
两个表示函数,分别将用户空间和物品空间映射到一个新的空间。
根据输入数据的类型分为四类:
- 无序交互
- 序列交互
- 多模态内容
- 链路图
1.1 无序交互
一个one-hot向量只能表示一个ID的信息,可以用用户交互过的物品来表示此用户。那么用户就可以用交互过的物品向量来表示,[0,0,0,1,1,0,1,0],即用多个one-hot物品来表示此用户。相当于用交互矩阵R的每一行来表示用户,每一列来表示物品。
MLP
DeepMF,采用 DSSM 双塔结构。以multi-hot向量为输入,相当于把[交互id集合]看作特征,用来表示用户和物品。
- 用户的layer1结果为交互过的物品的嵌入求和,那么用户侧layer1的参数 W W W 就相当于物品的嵌入,第一层的作用相当于从multi-hot中选出该用户交互的物品,进行lookup操作,求sum。
- 物品侧layer1的参数 W W W 就相当于用户的嵌入,第一层的作用相当于从multi-hot中选出交互过此物品的用户,进行lookup操作,求sum。
由于用户和物品的空间不同,DeepMF使用两个MLPs来得到用户和物品的表示。但是也不是强制使用双塔,可以只对用户使用MLP,对物品使用id嵌入lookup操作。
自动编码器AE
AE可以将输入数据转化为隐藏表示。
item-based AutoRec:以用户历史记录向量(对每个物品的评分)为输入,重构向量为预测结果,重构向量是一个 N N N 维向量,它表示用户 u u u 对所有物品的预测匹配分。
也可以使用交叉熵、hinge loss,pair-loss等。
可以将AutoRec看作(1)在交互历史上使用MLP学习用户的表示;(2)使用嵌入查表来获取物品表示。
主要是 W W W V V V y u y_u yu y ^ u \hat y_{u} y^u 的理解:
- y u : N × 1 y_u:N×1 yu:N×