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. 基于内容 ...
随机推荐
- css尖角
.market-nav-arrow { ; ; ; border-style: solid; border-width: 7px 0px 7px 7px; border-color: transpar ...
- contentProvider-联系人的CURD
1.联系人的查找 返回一个ArrayList<HashMap<String, String>>类型 //通过管理联系人的URI获取游标对象 Cursor cursor= ge ...
- linux中FTP自动备份VPS脚本
服务器多了,网站也越来越多,总觉得不整个备份心里放不下心,并且有好几次rm的操作失误,造成难以挽回的损失.并且大多数的VPS提供商是不提供自动备份功能或者此功能收费价格略高.所以自己还是有必要把这个工 ...
- C#对象XML序列化
1.Xml序列化操作类 .Net Framework提供了对应的System.Xml.Seriazliation.XmlSerializer负责把对象序列化到XML,和从XML中反序列化为对象. 以下 ...
- OpenCV基本架构[OpenCV 笔记0]
最近正在系统学习OpenCV,将不定期发布笔记,主要按照毛星云的<OpenCV3编程入门>的顺序学习,会参考官方教程和文档.学习工具是Xcode+CMake,会对书中一部分内容更正,并加入 ...
- apache重写
---- 本文旨在提供如何用Apache重写规则来解决一些常见的URL重写方法的问题,通过常见的实例给用户一些使用重写规则的基本方法和线索. 一.为什么需要用重写规则 ---- 网站的生命在于不断地进 ...
- C#获取“所有用户桌面”的路径
想用C#得到The All Users Desktop(Public\Desktop)的路径. 原来以为很简单,然而 Environment.GetFolderPath(Environment.Spe ...
- RequireJS入门与进阶
RequireJS由James Burke创建,他也是AMD规范的创始人. RequireJS会让你以不同于往常的方式去写JavaScript.你将不再使用script标签在HTML中引入JS文件,以 ...
- google map 点击获取经纬度
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- php入门变量之数字
在介绍变量时,我明确指出PHP具有整型和浮点型(小数)数字类型.但是,依据我的经验,这两种类型都可以归类到一般的数字之下(在极大程度上是这样的). 下面列举下PHP中有效的数字类型的变量: 8 3.1 ...