理论教育 K值对TOP-N算法推荐结果的影响

K值对TOP-N算法推荐结果的影响

时间:2023-05-27 理论教育 版权反馈
【摘要】:在TOP-N算法中,在最终的推荐数量K的选择也会对推荐效果产生影响。因此实验测试了K的取值对于推荐结果的影响。因此K=20时能够获得最优的推荐结果,而过高的K值不仅不能持续提升推荐效果,反而会对推荐的最终结果产生不良影响。表49和图56所示是基于用户的协同过滤算法在基于满意度的隐式评分情况下,不同K值对应的推荐效果。流行度随K值增加得不明显,能较好地控制推荐的新颖度。

K值对TOP-N算法推荐结果的影响

在TOP-N算法中,在最终的推荐数量K的选择也会对推荐效果产生影响。因此实验测试了K的取值对于推荐结果的影响。实验使用的数据集为2018年6月的直点播数据,隐式评分获取方式使用公式(14),即用最直接的用户收看视频时长与视频总时长的比值代表用户对该视频的评分。评价指标采用准确率、召回率、覆盖率和流行度四项。

由于样本数据量较大,在K的取值范围难以确定的情况下,直接用全样本进行实验会极大地降低实验进程。因此,从全量数据中抽取小规模实验数据,使用基于项目的推荐方法进行实验。实验结果如图53所示:

图53 测试样本在不同K值下的推荐效果

从实验结果可以看出,各项指标在K=20时基本趋于平稳,当K>20时,随着K值的增大,评价指标结果有轻微的浮动但总体与K=20时的推荐结果接近。因此,在全样本实验中,K的取值范围在[0,20]增多采样点,对K>20的部分扩大间隔范围进行取值测试以描绘变化趋势。图54为使用基于项目的推荐方法进行的全样本实验结果,实验结果数据如表47所示:

表47 项目基础隐式评分协同过滤在不同K值下的推荐效果

续表

图54 项目协同过滤基础隐式评分在不同K值下的推荐效果

由实验结果可见,基于项目的协同过滤算法随着K值的增加,准确率和召回率都随之上升,且增长率持续下降,数据趋于收敛。K的取值在[0,10]时,上升幅度较大。其中,覆盖率由于受到推荐个数的直接影响,变化幅度最大。在K>10后覆盖率的值趋于平稳,不再有大范围波动。

表48和图55表示的是在加入长度标量的隐式评分方法情况下,基于项目的协同过滤算法在不同K值下的推荐效果。在前面的实验中已经得出,增加长度标量的隐式评分能够获得更好的推荐效果,因此观察此方法在不同K值时的表现,以获得更优的推荐效果。(www.daowen.com)

表48 项目协同过滤长度标量隐式评分在不同K值下的评价结果

图55 项目协同过滤长度标量隐式评分在不同K值下的推荐效果

根据实验结果,在优化了隐式评分方式后,伴随K值增加,准确率、召回率和覆盖率都经历了由升到降的变化趋势,在K=20时三项指标都达到最高,此时推荐效果最好;而流行度随着K值的升高持续增大,这表明K值的增高使得推荐结果向更热门的节目偏移。因此K=20时能够获得最优的推荐结果,而过高的K值不仅不能持续提升推荐效果,反而会对推荐的最终结果产生不良影响。

表49和图56所示是基于用户的协同过滤算法在基于满意度的隐式评分情况下,不同K值对应的推荐效果。

表49 用户协同过滤在不同K值下的推荐效果

续表

图56 用户协同过滤在不同K值下的推荐效果

根据实验结果,基于用户的协同过滤算法对K值的敏感度更高。随着K值的增大,准确率和召回率都不断增加,并且收敛状态更弱。流行度随K值增加得不明显,能较好地控制推荐的新颖度。覆盖率在K=10时出现了峰值,随后缓慢下降,但覆盖率始终能维持在较好的状态中。这表明在推荐数量非常大时,基于用户的推荐算法能够有较好的推荐效果。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈