原因:
1、推荐系统生成Topk列表展示给用户,导致只有系统预测出高评分的项目才会被用户看到,预测评分较低的不会被用户看到。
2、由于预测的评分不会直接显示给用户,只用来生成Topk列表,那预测的精度就没有那么重要了,而项目的正确排序才是关键。
LTR在推荐领域的难点:1、用户和项目难以用精确的属性来表示;
2、有的算法不能直接应用于推荐。
算法思路:
1、假设评分矩阵具有局部低秩性,建立加权化的矩阵分解模型,用来描述用户和项目的属性特征;
2、使用排名指标top one probability作为矩阵分解模型的优化目标。
算法原理:
local low-rank matrix approximation
1、随机选取以q个锚点为中心的q个近邻空间,通过最小化平方差,在每个近邻空间计算一个低秩矩阵;
2、将由q个锚点定义的q个局部模型用线性组合的方式预测得出最终的评分。
listed local collaborative ranking
top one概率,表示一个评分在所有评分中排第一位的概率,分数越高排在第一的概率越大
1、采用矩阵分解模型中的项目排序与训练集中真实的项目排序两者的top one概率的互熵作为损失函数;
2、通过最小化该函数,得到矩阵分解模型的结果U,V。
问题:
算法的大致过程明白,但具体的细节还没有看懂,例如U,V的具体求解过程。
损失函数的设计原理,代码的实现等
reference:
[1]刘海洋, 王志海, 黄丹,等. 基于评分矩阵局部低秩假设的成列协同排名算法[J]. 软件学报, 2015(11):2981-2993.