基于SparkMLlib平台的协同过滤算法---电影推荐系统又好一阵子没有写文章了,阿弥陀佛...最近项目中要做理财推荐,所以,回过头来回顾一下协同过滤算法在推荐系统中的应用。说到推荐系统,大家可能立马会想到协同过滤算法。本文基于SparkMLlib平台实现一个向用户推荐电影的简单..
分类:
编程语言 时间:
2015-06-16 01:27:03
阅读次数:
44881
本文测试的Spark版本是1.3.1本文将在Spark集群上搭建一个简单的小型的电影推荐系统,以为之后的完整项目做铺垫和知识积累整个系统的工作流程描述如下:
1.某电影网站拥有可观的电影资源和用户数,通过各个用户对各个电影的评分,汇总得到了海量的用户-电影-评分数据
2.我在一个电影网站上看了几部电影,并都为其做了评分操作(0-5分)
3.该电影网站的推荐系统根据我对那几部电影的评分,要预测出...
分类:
数据库 时间:
2015-05-27 22:56:56
阅读次数:
377
Slope one 是一个简单,效率较高的协同过滤推荐算法。
Slope One 算法是由 Daniel Lemire 教授在 2005 年提出.距今已经10年。
基于如下五点被设计出来:
1. 算法容易实现和维护
2. 对新的评分应该立即给予响应
3. 查询速度要快(虽然可能以牺牲存储量为代价)
4. 对新的用户也要能给出有效的推荐
5. 精度...
分类:
编程语言 时间:
2015-05-22 21:16:55
阅读次数:
153
基于用户的协同过滤,基于的假设是:喜欢相同物品的用户具有相似性。相同物品越多,用户相似性越大。(有点基于统计的意思) 基于用户的协同过滤推荐机制和基于人口统计学的推荐机制都是计算用户的相似度,并基于“邻居”用户群计算推荐,但它们所不同的是如何计算用户的相似度,基于人口统计学的机制只考虑用户本身的.....
分类:
其他好文 时间:
2015-05-16 20:01:49
阅读次数:
193
一.算法实现 基于p-stable分布,并以‘哈希技术分类’中的分层法为使用方法,就产生了E2LSH算法。 E2LSH中的哈希函数定义如下: 其中,v为d维原始数据,a为随机变量,由正态分布产生; w为宽度值,因为a?v+b得到的是一个实数,如果不加以处理,那么起不到桶的效果,w是...
分类:
编程语言 时间:
2015-05-06 10:55:56
阅读次数:
222
在推荐系统众多方法中,基于用户的协同过滤推荐算法是最早诞生的,原理也较为简单。该算法1992年提出并用于邮件过滤系统,一直到2000年,该算法都是推荐系统领域最著名的算法。 本文简单介绍基于用户的协同过滤算法思想以及原理,最后基于该算法实现园友的推荐,即根据你关注的人,为你推荐博客园中其他你有可能感...
分类:
编程语言 时间:
2015-04-30 06:19:35
阅读次数:
209
个人评价:很有意思的一个话题,我在实际工作中也遇到过,不过这本书写的一般,有点儿“掉书袋”,太学术化、太YY、前提假设条件太强。姑且看看做借鉴吧。
通常推荐系统利用用户数据的时候,是假定用户是善良的、诚实的。而攻击,就只值认为设法影响系统的结果、性能。
攻击的维度:1. 针对某个物品,抬高或者降低其评分;2. 针对特定的用户群;3. 针对某个系统,然系统推荐不准确,甚至系统崩溃...
分类:
其他好文 时间:
2015-01-17 18:02:35
阅读次数:
222
一、 基于PHP实现的webshell攻击
二、 不用或少用else语句
三、 单页面结构(Single-page application)
四、 让搜索引擎抓取ajax的内容
五、 CURL_MULTI_INIT()
六、 PHP strstr()函数
七、 论规范化的重要性
八、 HHVM
九、 PHP源码签名收集器
十、 协同过滤推荐算法...
分类:
Web程序 时间:
2015-01-12 17:35:43
阅读次数:
256
一、协同过滤推荐技术一般传统的协同过滤推荐技术都是采用最近邻技术:根据系统中用户对共同评分的商品项目的历史评分信息,从而找到他们之间的相似性,生成一个最近邻居用户集合,邻居集合里的邻居和当前用户兴趣爱好相似;再利用邻居集合里的用户的评分信息,推断当前用户对推荐的目标商品的喜好程度;最后根据预测的喜好...
分类:
编程语言 时间:
2015-01-06 22:48:24
阅读次数:
196
协同过滤是当今最流行的推荐系统。其流行的最重要原因是:有实际环境作为改进的基准,而且用于分析生成推荐的数据结构(用户物品评分矩阵),非常简单。其他算法,就不会这么简单,比如通过会话交互的推荐应用会在会谈中询问用户的偏好,并且还会融入一些额外的领域知识。
协同过滤不可能应用于每个领域:例如一个没有购买历史的汽车销售系统,或需要更多用户偏好细节的系统。同样,协同过滤技术要求用户社区处于某个特定规模,这意味着即使在书籍和电影领率,如果没有足够的用户或评分数据,也无法应用这些技术。...
分类:
其他好文 时间:
2014-12-14 22:46:00
阅读次数:
282