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. 基于内容 ...
随机推荐
- asp.net post方法;对象转json
[System.Web.Services.WebMethod()] public static string GetPoints(string userId) { st ...
- Android Support v4,v7,v13
Android Support v4 是最早(2011年4月份)实现的库.用在Android1.6 (API lever 4)或者更高版本之上.它包含了相对V4, V13大的多的功能. 例如:Frag ...
- 第五十三篇、OC利用AFN上传视频到服务器
整体思路已经清楚,拿到视频资源,先转为mp4,写进沙盒,然后上传,上传成功后删除沙盒中的文件. 本地拍摄的视频,上传到服务器: //视频转换为MP4 //转码操作... _hud.mode = MBP ...
- XCode中的特殊快捷键图标
⌘——Command () ⌃ ——Control ⌥——Option (alt) ⇧——Shift ⇪——Caps Lock fn——功能键就是fn
- OC10_数组的内存管理
// // main.m // OC10_数组的内存管理 // // Created by zhangxueming on 15/6/18. // Copyright (c) 2015年 zhangx ...
- ASP.NET MVC 之控制器与视图之间的数据传递
今天,我们来谈谈控制器与视图之间的数据传递. 数据传递,指的是视图与控制器之间的交互,包括两个方向上的数据交互,一个是把控制器的数据传到视图中,在视图中如何显示数据,一个是把视图数据传递到控制器中, ...
- (转)优化tomcat,提高网站运行速度
网站优化方案: 网站优化有很多方面,这里我们先主要讲讲 tomcat优化.[主要针对tomcat6.0及以上版本] 1. 为jvm增加更多的内存,tomcat安装时,默认为126M,可以设置. To ...
- [GeekBand] C++11~14
一.关键字decltype 由对象得到对象的数据类型,例如 Complex a(1, 2); decltype(a) b(3, 4); declare type是让编译器去找到 ...
- MySQL页面打捞工具使用方法
MySQL数据打捞工具 0.1 windows版 下载 一,选择数据源与输出目录 数据源可以是分区或物理物理磁盘,如\\.\D: 或\\.\PhysicalDrive0; 二,参数设置 请设置扫描参数 ...
- 使用轻量级Spring @Scheduled注解执行定时任务
WEB项目中需要加入一个定时执行任务,可以使用Quartz来实现,由于项目就一个定时任务,所以想简单点,不用去配置那些Quartz的配置文件,所以就采用了Spring @Scheduled注解来实现了 ...