本文是对论文Rank and Rate:Multi-task Learning for recommender Systems阅读笔记。
基于评分和基于排序是推荐系统中常见的两种推荐算法。其中基于评分的需要用户的显式反馈数据,也就是评分,基于排序可以基于用户的各种隐式反馈数据。两种方式各有优缺点。
论文提出了一种结合两种算法的多任务学习框架。闲话少述,直接上模型结构图:
用P表示评分预估算法,
LP(P,D;U,I)表示算法P在数据集D上的损失,U,I分别表示用户和物品embeding矩阵。类似的,R表示排序算法,R的损失表示为为
LR(R,D;U,I).
模型同时进行两任务的学习,同时优化P和R的参数,以及共享的embedding矩阵U和I。
其中排序算法R依赖原始的embedding矩阵U和I,评分估计算法P除了依赖U和I之外,还依赖一个物品偏差矩阵(deviation matrix)
Id,偏差矩阵是用户对物品消费后的态度的建模。具体来说,对于每个物品
i,偏差矩阵中的向量
qid,加上物品embedding矩阵中的向量
qi,得到向量
qipost,反映了物品被消费后的用户的态度。然后将用户和更新后的物品向量映射到一个新的特征空间,在此特征空间做评分预估。
另外补充一下模型的目标函数:
O=minU,I,Id,θ(αLR(R,D;U,I)+(1−α)LP(P,D;FCθ(U),FCθ(I+Id))+λ(∣U∣2+∣I∣2+∣Id∣2+∣θ∣2))
其中
α,λ是超参。
参考论文:https://arxiv.org/pdf/1807.11698.pdf