推荐系统相关
2015-11-06 15:43
162 查看
推荐:
定位你的偏爱,然后引导你去选择符合你个人的愿望与需要的产品距离,相似(性)度
协同过滤(collaborative filtering)与基于内容(content-based)的推荐引擎
相似性(度)算法
算法 | 定义 |
皮尔逊相关系数 | 两个序列协方差与二者标准差乘积的比值权重 |
欧氏距离 | 各纬坐标之差的平方和的平方根 |
余弦相似性变量 | 从原点出发的两条射线之间的夹角 |
斯皮尔曼相关系数 | 相对排名的皮尔逊计算 |
忽略偏好值基于谷本系数计算相似度 | 两个偏好物品集合的交集大小与并集大小的比值 |
基于对数似然比更好地计算相似度 |
推荐引擎
1、基于相似用户的推荐2、基于相似条目的推荐
3、基于内容的推荐
实现
Mahout有很多推荐的实现,各有特点,在这里一并记录。GenericUserBasedRecommender: 基于用户的推荐,用户数量相对较少时速度较快。
GenericItemBasedRecommender:基于物品的推荐,物品数量较少时速度较快,外部提供了物品相似度数据后会更加有效率。
SlopeOneRecommender:基于slope-one算法(想想那个填空的表格吧)的推荐,在线推荐或更新比较快,需要先下大量的预处理运算。物品数量相对较少时使用比较合适。
SVDRecommender:效果不错,和slope-one一样,事先需要大量的预处理运算。
KnnItemBasedRecommender:基于最近邻算法的推荐器,物品数量较小时表现良好。
TreeClusteringRecommender:基于聚类的推荐器,在线推荐较快,同时也需要事先大量预处理运算,用户数量相对较少时表现良好。
参考:
推荐系统,第 1 部分: 方法和算法简介 http://www.ibm.com/developerworks/cn/opensource/os-recommender1/index.html推荐系统,第 2 部分: 开源引擎简介 http://www.ibm.com/developerworks/cn/opensource/os-recommender2/index.html
个性化推荐系统 http://baike.baidu.com/link?url=j5v5nsCSbzDM1XEV4SYq-dPhNVaODnn6miewNXAjI6vP7NfrxXg5RnalHvcuBXrtsSemSUpdoL_IfC36b8Rum_
《智能Web算法》 <第3章 推荐系统>
个性化推荐 http://www.cnblogs.com/liqizhou/category/379678.html
个性化推荐十大挑战 http://www.cnblogs.com/liqizhou/archive/2012/07/08/2581829.html
计算广告与推荐系统有哪些区别? http://www.zhihu.com/question/19662693
Mahout推荐算法API详解 http://blog.fens.me/mahout-recommendation-api/
Mahout推荐算法API详解 http://blog.csdn.net/zhoubl668/article/details/13297663
Mahout的taste推荐系统里的几种Recommender分析 http://blog.csdn.net/zhoubl668/article/details/13297583
计算广告与推荐系统有哪些区别? http://www.zhihu.com/question/19662693
推荐系统中所使用的混合技术介绍 http://www.52ml.net/318.html
Netflix 推荐系统:第一部分 http://www.douban.com/note/247017189/
Netflix 推荐系统:第二部分 http://www.douban.com/note/247017269/
Netflix公布个性化和推荐系统架构 http://www.infoq.com/cn/news/2013/04/netflix-ml-architecture
相关文章推荐
- DATATABLE的操作
- Lightoj 1231 - Coin Change (I) (裸裸的多重背包)
- Java 7 Fork/Join 并行计算框架概览
- Java语言基础之String类
- AndroidStudio插件-GsonFormat快速实现JavaBean
- WIFI 的 传输信道 与标准 WIFI的频道 传输能力
- 自己的理解JVM
- Extjs中一定时间间隔调用方法
- 解决U盘在mac air下格式化后在windows上无法显示
- Hive 参数
- 偏移注入payload构造技巧实战+Access注入
- verilog HDL中wire和reg的区别
- nyoj60谁获得的奖学金最高
- 根据枚举HashCode转换为对应枚举值
- 给空签名包进行签名以及找不到keystore证书链问题的解决方案
- 干净退出0MQ
- 设计模式案列
- linux设备驱动之输入(input)子系统——核心层实现
- string.Split()的用法
- Fork and Join: Java也可以轻松地编写并发程序