Google News Personalization:Scalable Online Collaborative Filtering

这篇论文探讨了谷歌新闻推荐系统的设计,面对大量用户和新闻数据的挑战,提出了利用MapReduce、Bigtable等技术优化算法,以及结合内存和模型算法的混合模型。文章详细介绍了MinHash、PLSI模型及其分布式EM算法的训练,旨在实现实时更新和高效推荐,以应对新闻的快速变化和用户兴趣的个性化需求。
摘要由CSDN通过智能技术生成

Abstract

这篇论文介绍了google news推荐系统的实现。在用户量很大的前提下,原有的推荐算法适用性较差,需要对其进行改进,例如使用mapreduce,bigtable等技术提高运算速度,综合考虑多种推荐算法等等。

google news的特点

处理google news的一些难点

  • scalability:google news访客较多,新闻数据也较多
  • item churn:物品(新闻)会动态变化,模型需要不断重建,这是一个非常费时的任务,对于google news来说,每分钟都会产生很多新闻,模型超过一段时间后效果会变差

google news的一些假设

这里假设用户点击某一条新闻即表示对该新闻感兴趣,之所以可以这样假设,因为google news前端页面已经显示了文章的摘要,用户能够了解这篇文章的大概信息,如果点击该新闻即可证明对此新闻感兴趣。

问题表述

对于N个用户,u={u1,u2,...uN}和M个物品(文章)S={s1,s2...sm},给定一个用户的浏览记录集合Cu,{s1,s2...si|cu|},推荐K个用户感兴趣的文章。 同时要求服务器的响应时间要短,服务器要做的事情如下:对新闻聚类;针对HTTP请求返回HTML内容;推荐系统产生推荐列表

相关工作

基于内存的算法

根据用户过去的评价进行推荐,为此需要计算用户之间的相关性,w(ui,uj)矩阵衡量的就是任意两个用户的联系性,对于一个用户u_a,他对于文章s_k的评分如下: $r_{u_a,s_k} = \sum_{i\neqa} I_{(u_i, s_k)}w(u_a, u_i)$

I(ui,sk)为1表明用户u_i点击过s_k。当计算得到的评分超过一定阈值后就可以假定用户u_a喜欢文章s_k。但是这个方法最大的问题就是可拓展性较差,由于所有数据要放入内存,当数据量较大值无法使用此方法。

基于模型的算法

此方法依据用户之前的评分为该用户建立模型,使用模型预测那些未被评价过的物品(协同过滤就是这种方法)。这种方法的缺陷是把每一个用户划分到一个指定的类别中,实际情况是用户对于不同的主题可能有不同的喜好,无法划分到一个指定的类别。

模型

本文中涉及的模型是一个混合模型,将上述两种模型进行线性加权结合。 I(u_i,s_k) is 1 if the user u_i clicked on the story s_k and 0 otherwise.话说将来可以使用SVM算法学习不同algorithm之间的比重。

MinHash

PLSI

PLSI was introduced in [3], where Hofmann developed probabilistic latent semantic models for performing collaborative filtering.The relationship between users and items is learned by

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值