从分类,排序,top-k多个方面对推荐算法稳定性的评价

原创 2016年04月23日 13:44:57

介绍

论文名: “classification, ranking, and top-k stability of recommendation algorithms”.
本文讲述比较推荐系统在三种情况下, 推荐稳定性情况.
与常规准确率比较的方式不同, 本文从另一个角度, 即推荐算法稳定性方面进行比较.

详细

参与比较的推荐算法

包括:

  1. baseline
  2. 传统基于用户
  3. 传统基于物品
  4. oneSlope
  5. svd

比较方式

比较的过程分为两个阶段:

阶段一, 将原始数据分为两个部分, 一部分为已知打分, 另一部分为未知打分, 用于预测.
阶段二, 在用于预测打分那部分数据中, 取出一部分数据, 加入到已知打分部分, 剩余部分仍然为预测部分.

比较阶段一中的预测结果和阶段二中预测结果的比较.
数据划分情况如图所是.

数据划分

比较的方式

预测稳定性

预测性的评价方式有以下几种:
MAE, RMSE

分类稳定性

分类型的评价方式有以下几种:
准确率, 召回率, F-分数.

排名稳定性

排名型的评价方式有以下几种:
排名相关性, Spearman的ρ评价, Kruskal的γ评价, Kendall的τ评价.

前K项稳定性

前k项的评价方式有以下几种:
点击率稳定性(hit-rate), NDCG(normalized discounted cumulative gain).

比较的场景

稀疏性冲击

改变数据的稀疏性, 从几个方面比较这些推荐算法的稳定性.

结果如图所是.

这里写图片描述

基于内存的推荐算法和slopeone算法表现出强烈的不稳定性和对数据敏感性.
svd和baseline算法相对稳定.

评价数量冲击

改变第二阶段中新加入数据的数量, 比较两次实验的差异.

结果如图所是:

这里写图片描述

横坐标为比例, 即已知打分数据的倍数, 从10%到500%.

从图中可以看出, 在新加入的数据较少时, 各个推荐算法表现出高度的稳定性.

当新加入的数据较多时, 基于内存的推荐算法的稳定性不断下降.
相反, 基于模型的方法相对稳定.

打分分布冲击

除了新加入的数据外, 新加入的数据的数据分布也一定程度上影响了推荐算法的稳定性.

下表显示了修改数据分布的策略:

这里写图片描述

实验的结果如下:

这里写图片描述

从图中可以看出, 当加入的数据为随机时, 各个推荐算法都表现出相对较高的稳定性.
但是, 当添加的数据出现歪斜时, 基于内存的推荐算法的稳定性降低较快, 基于模型的推荐算法的稳定性基本保持不变.

算法参数冲击

对于推荐算法而言, 除了数据的因素外, 还有算法本身参数对算法稳定性的影响.

对于基于内存的算法, 相似用户/物品的数量影响着推荐算法的效果,
对于svd算法, 隐含属性的数量影响着推荐算法的结果.

实验通过修改推荐算法参数的方式进行比较, 结果如图所时:

这里写图片描述

对于top-K的比较, k值的大小也影响推荐算法的稳定性.
通过修改k的大小, 实验的结果如图所时:

这里写图片描述

实验结果表示:

对于修改算法的参数, 对svd算法的影响较少, 对于基于内存的算法影响较大.

修改top-k中k的大小, 对基于模型的推荐算法影响较小, 对于基于内存的推荐算法的稳定性影响较大.

总结

对于上面多种情况的比较.
基于模型的推荐算法在多种情况下, 稳定性较高, 特别时svd算法.
基于内存的推荐算法稳定性较差.

160824--推荐系统中的排序学习

1、推荐系统 2、排序学习 2.1排序算法分类 2.2存在的问题 2.3解决方案 3、总结...
  • mdxiaobai
  • mdxiaobai
  • 2016年08月24日 09:10
  • 497

5类系统推荐算法

最近因为PAC平台自动化的需求,开始探坑推荐系统。这个乍一听去乐趣无穷的课题,对于算法大神们来说是这样的:     而对于刚接触这个领域的我来说,是这样的:   ...
  • imail2016
  • imail2016
  • 2016年06月29日 19:23
  • 12789

Top-N Recommendation——基于用户的推荐实验

无论是在实体商店还是在网络上,都会有Top-N推荐的情况。基于客户或者基于商品做出推荐。本实验基于Movielens、Ratings的电影数据集,对用户做出Top-N 推荐。主要目的是基于User-B...
  • woshimalingyi
  • woshimalingyi
  • 2016年03月04日 12:16
  • 3747

排序算法系列之算法性能评价标准与算法选择标准

一些用于理解的概念: 内排序和外排序 在排序过程中,所有需要排序的数都在内存,并在内存中调整它们的存储顺序,称为内排序; 在排序过程中,只有部分数被调入内存,并借助内存调整数在外存中的存放顺序排...
  • u010025211
  • u010025211
  • 2015年06月24日 17:35
  • 830

机器学模型评价与优化(学习笔记)

说明:对于模型的参数最优问题,没有很明确很清晰的思路,因此在这里总结有关模型评价和模型优化的有关知识,这个过程中在网上搜索一些文章,并对这些资料进行简单的整理,作为我学习的笔记,记录在这里,希望对志同...
  • xx19901314
  • xx19901314
  • 2016年08月10日 09:22
  • 2648

模型预测控制(MPC)的稳定性证明——终端约束

作为一种在有限时域内进行滚动优化求解的控制算法,模型预测控制(Model Predictive Control,MPC)的稳定性更引入关注。自从上世纪80年代后期MPC在工业界的成功应用倒逼学术界进行...
  • dymodi
  • dymodi
  • 2015年06月03日 11:34
  • 2565

推荐系统(基本方法+评估指标+工具)

基本方法 Neighborhood-based item-item Model-based 矩阵分解 针对隐式反馈的矩阵分解方法 评估指标 Error Percentile-rank Hit Radi...
  • sinat_21645561
  • sinat_21645561
  • 2017年03月17日 15:19
  • 827

top-N推荐中以recall为指标的实验设计

如何很亮top-N推荐的性能,是个重要的问题。其中,recall的计算并非那么直观的。下面,先看几个paper里不同的计算方法,然后做个总结。 [27]的实验方法: 记处理后的(隐式)评分矩阵为S,...
  • u013166160
  • u013166160
  • 2014年01月08日 16:39
  • 1144

【方法】搜索排序评估方法

在策略相关的产品如搜索、排序、推荐等功能的评估中,除了一般性数据分析方法之外,还有有一些特有的且相对比较固定的评估工具,这些评估工具都取之于信息检索科学的常用评估方法。要了解这些首先要了解策略产品的效...
  • dengxing1234
  • dengxing1234
  • 2017年06月09日 10:06
  • 23383

位排序(今天看到的排序算法 正确性是X级)

#include   #define BITSPERWORD 32 #define SHIFT 5  #define MASK 0x1F #define N 10000000 ...
  • zsc2014030403015
  • zsc2014030403015
  • 2015年03月16日 14:34
  • 428
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:从分类,排序,top-k多个方面对推荐算法稳定性的评价
举报原因:
原因补充:

(最多只允许输入30个字)