Recommender Systems基于内容的推荐
基于内容的推荐的基本推荐思路是:用户喜欢幻想小说,这本书是幻想小说,则用户有可能喜欢这本小说
两方面要求:(1)知道用户的喜好;(2)知道物品的属性
基于内容的推荐相比协同过滤方法(个人观点):协同过滤用到了大量用户的群体行为特征,两个特点,(1)要大量用户,(2)除了用户的行为之外,不需要其他信息;基于内容的推荐,需要用户和物品的额外信息,如:用户喜好、物品属性等等,但是不需要存储、处理大量的用户数据。
基于内容的推荐和基于知识的推荐没有明确界限,两者区别:前者更侧重于提取物品属性,后者更侧重于因果关系。
基于内容的推荐一般应用在在文章、新闻推荐上面。文章的属性从文本内容中自动抽取。用户的喜好从用户从前评价过的文章中抽取。一般以关键词来表示文章和用户。
1. 内容表示和相似度
基于内容推荐的基本思路是:计算物品与用户喜欢的物品的相似度,从而确定用户是否喜欢该物品
如何获取用户的喜好?(1)明确的问用户;(2)请用户为一系列item进行打分,从而自动抽取特征
经典方法:用关键词来表示文本、tfidf表示关键词的权重、VSM模型来计算文本之间的相关度
问题:如何选取最有代表性的N个词语(特征选择)。
缺点:没法利用词语上下文信息
2. 基于内容相似度检索
协同过滤方法可以描述成为“推荐相似用户喜欢的物品”;基于内容的推荐方法可描述成为“推荐与用户过去喜欢的物品相似的物品”。这一节在上一节的基础上,讨论具体如何给用户推荐物品。
2.1 k近邻方法
对于某个用户未见的物品,找到用户从前评价过的k个与当前物品最相似的物品,根据用户对这k个物品的评分,来投票解决当前未知物品的评分。
Billsus2000,个性化移动新闻推荐:KNN用于对用户短期兴趣进行建模,用概率分类模型来对用户长期兴趣进行建模。长短两个模型共同作用,来给用户进行个性化新闻推荐。
如何组合长短兴趣模型?方法1:优先短期模型,然后长期模型;方法2,用短期模型把所有相关的item找到,然后用长期模型进行综合排序
2.2 相关性反馈 —— Rocchio方法
需要用户在使用过程中明确对item给出反馈,不实用。
在实际使用中可以考虑获取用户隐式反馈。
个性化搜索?如何把不同的相关度体系(pagerank和用户和物品相关度)融合在一起是个问题。
3 其他文本分类方法
将推荐问题转成分类问题,用分类器来做推荐,例如:朴素贝叶斯+二分类,来预测用户是否喜欢某个特定商品
还有svm、决策树等模型。涉及到特征选择,用卡方选择或者fisher判别。
4. 小结
基于内容的推荐技术,大多数方法都源于信息检索领域。
参考文献http://blog.csdn.net/xceman1997/article/details/41791651
Recommender Systems基于内容的推荐的更多相关文章
- 新闻推荐系统:基于内容的推荐算法(Recommender System:Content-based Recommendation)
https://blog.csdn.net/qq_32690999/article/details/77434381 因为开发了一个新闻推荐系统的模块,在推荐算法这一块涉及到了基于内容的推荐算法(Co ...
- elasticsearch使用More like this实现基于内容的推荐
基于内容的推荐通常是给定一篇文档信息,然后给用户推荐与该文档相识的文档.Lucene的api中有实现查询文章相似度的接口,叫MoreLikeThis.Elasticsearch封装了该接口,通过Ela ...
- 推荐系统第5周--- 基于内容的推荐,隐语义模型LFM
基于内容的推荐
- ElasticSearch java API-使用More like this实现基于内容的推荐
ElasticSearch java API-使用More like this实现基于内容的推荐 基于内容的推荐通常是给定一篇文档信息,然后给用户推荐与该文档相识的文档.Lucene的api中有实现查 ...
- 【T-BABY 夜谈大数据】基于内容的推荐算法
这个系列主要也是自己最近在研究大数据方向,所以边研究.开发也边整理相关的资料.网上的资料经常是碎片式的,如果要完整的看完可能需要同时看好几篇文章,所以我希望有兴趣的人能够更轻松和快速地学习相关的知识. ...
- C# 基于内容电影推荐项目(一)
从今天起,我将制作一个电影推荐项目,在此写下博客,记录每天的成果. 其实,从我发布 C# 爬取猫眼电影数据 这篇博客后, 我就已经开始制作电影推荐项目了,今天写下这篇博客,也是因为项目进度已经完成50 ...
- MapReduce实例-基于内容的推荐(一)
环境: Hadoop1.x,CentOS6.5,三台虚拟机搭建的模拟分布式环境 数据:下载的amazon产品共同采购网络元数据(需FQ下载)http://snap.stanford.edu/data/ ...
- 基于内容的推荐 java实现
这是本人在cousera上学习机器学习的笔记,不能保证其正确性,慎重參考 看完这一课后Content Based Recommendations 后自己用java实现了一下 1.下图是待处理的数据,代 ...
- Recommender Systems移动互联网个性化游戏推荐
对于在线商店,主要关心两方面:1. 提升转化率(将不消费的用户转变为消费用户):2. 提升消费额(已经花钱的人,花更多的强). 对比了6种方法:1. 协同过滤:2. slope one:3. 基于内容 ...
随机推荐
- javascript对象初读
<script type="text/javascript"> function baseClass() { this.showMsg = function() { a ...
- ios Swift ! and ?
swift ?和!之间区别: Swift 引入的最不一样的可能就是 Optional Value 了.在声明时,我们可以通过在类型后面加一个? 来将变量声明为 Optional 的.如果不是 Opti ...
- java 调用bash shell脚本阻塞的小问题的解决
java 调用bash shell脚本阻塞的小问题的解决 背景 使用java实现的web端,web端相应用户的界面操作,使用java调用bash实现的shell脚本进行实际的操作,操作完成返回执行结 ...
- springMVC学习篇 - 搭建环境及关键点
springMVC是spring家族中一个重要的组件,和struts一样作为一套前台框架被广泛的应用于各种项目. 之前在很多项目组都用到springMVC,只感觉很强大,但是对这套框架的知识了解比较少 ...
- 生成随机字符串(UUID方法)
这是另一种用UUID生成随机字符串的方法. public class RandomGenerator{ private int length; public void setLength(int le ...
- xposed系列教程
转载说明 本篇文章可能已经更新,最新文章请转:http://www.sollyu.com/xposed-series/ 说明 这是一篇XPOSED开发系列教程, 个人开发者,开发不容易.QQ群: 73 ...
- 阅读《Oracle内核技术揭秘》的读书笔记
阅读<Oracle内核技术揭秘>,对oracle的内存结构.锁.共享池.undo.redo等整理成了如下的思维导图:
- php parallel
http://www.phpied.com/simultaneuos-http-requests-in-php-with-curl/ http://stackoverflow.com/question ...
- 将XML文件保存到DataGridView中
#region get护理单记录信息XML //将XML文件保存到DataTable private DataTable FromXML2DataTable(string XMLStr,string ...
- Excel数据复制到Winform控件ListView
先给窗体添加一个右键菜单contextMenuStrip 加一个下拉项[粘贴] 粘贴事件: private void tsmiPaste_Click(object sender, EventArgs ...