Slope One 推荐算法
来源:互联网 发布:eclipse java 反编译 编辑:程序博客网 时间:2024/05/16 10:58
Slope One 推荐算法是 2005 年在香港的 WWW 会议上提出来的。可以Google检索会议论文集看原著,不过还是建议看原著之前,看完本文!
Slope One是一个基于Item的个性化推荐算法,股票上有个说法是平均值可以掩盖一切异常波动,所以股票上的各个技术指标都是不同时间段的平均值的曲线图或者柱状图等。同样的,Slope one算法也认为:平均值也可以代替某两个未知个体之间的打分差异。
Slope One算法的核心思想非常的简单,举例如下:
用户对商品的打分,或者从购买记录中,通过某些算法,折合成打分,得到矩阵如下:
User 二胡 现在购物车里买了索爱手机和大宝,或者 二胡同学以前买过这两个商品,当二胡再次来到网站购物,我们要推荐什么给他呢?亚都加湿器和阿凡达DVD 二胡同学喜欢吗?或者喜欢的程度有多大呢?
来看看Slope One的做法:从二胡同学已经打过分的商品出发
索爱手机对亚都加湿器的平均差是: ((4-4) + (3-4) + (2-5)) / 3 = -1.3 (这说明什么?)
大宝SOD蜜对亚都加湿器的平均差是:((3-4) + (2-4) + (3-5)) / 3 = -1.67(这又说明什么?)
那么二胡同学对亚都加湿器的可能打分是:(3*(5+1.3) + 3*(4+1.67)) / (3+3) = '''5.985'''
二胡同学对阿凡达的打分计算方法雷同,省去不写了。
够清楚吗?给出公式如下:
有 n 个人对商品 A 和商品 B 打分了,R(A->B)表示这 n 个人对 A 和对 B 打分的平均差,有 m 个人对商品 B 和商品 C 打分了,R(C->B)表示这 m 个人对C和对B打分的平均差,注意都是平均差而不是平方差,现在某个用户对 A 的打分是 ra,对 C 的打分是 rc,那么 A 对 B 的打分 rb 是:
rb = (n * (ra - R(A->B)) + m * (rc - R(C->B)))/(m+n)
- Slope One 推荐算法
- 推荐算法--slope one
- 推荐系统:Slope One 算法
- 推荐系统:Slope One 算法
- 推荐系统:Slope One 算法
- 协同推荐Slope One算法
- Slope one推荐算法原理
- [推荐算法]Slope One算法
- 推荐算法之 slope one 算法
- 推荐算法之 slope one 算法
- 推荐算法之 slope one 算法
- Slope one:简单高效的推荐算法
- Slope one:简单高效的推荐算法
- mahout推荐算法之slope one
- Slope one:简单高效的推荐算法
- Slope One个性化推荐算法核心思想
- Slope one:简单高效的推荐算法
- 同类事物推荐算法Slope one
- system idle process是什么进程?cup占用显示100%
- 为Android JNI开发环境安装Cygwin选择必要的包
- WebService复杂类型数据传输(dom4j方式)
- Ubuntu12.04 网络应用软件简介
- Android 关于inflate
- Slope One 推荐算法
- DOS下类似LINUX下的tail -f 功能的命令
- sleep和wait有什么区别
- CommonUA.exe是什么进程?导致cup100%
- EditText字数限制
- ExtJs ComboBox 获得焦点 自动弹出下拉列表
- 数据同步算法研究
- 离职引发的思考
- [jQuery]使用jQuery.Validate进行客户端验证——不使用微软验证控件的理由-目录及简介