https://blog.csdn.net/shijing_0214/article/details/50996434算法
推荐系统近几年来一直十分火热,目前几乎全部的电子商务系统、社交网络,广告推荐,搜索引擎等等,都不一样程度的使用了各类形式的推荐系统。想知道电商如何向你发送广告的?想了解社交网络怎么推荐好友的?想本身搭建一个推荐系统?想了解一些算法或架构从而将本身的推荐系统作得更好?InfoQ为你整理了一系列的有关推荐系统的算法文章,以及主要从电商和社交网络方面选取了一些优秀的案例,来看看这些关于推荐系统的优秀文章吧。微信
1.推荐系统算法综述网络
推荐系统在各类系统中普遍使用,推荐算法则是其中最核心的技术点, 为推荐系统选择正确的推荐算法是很是重要的决定。每一种推荐算法都有其优势和缺点,固然也有其限制条件,在做出决定以前,必需要一一考量。在实践中,你可能会测试几种算法,以发现哪种最适合你的用户,测试中你也会直观地发现它们是什么以及它们的工做原理。架构
InfoQ策划了系列文章来为读者深刻介绍。推荐算法综述分为五个部分,本文做为第一篇,主要介绍了推荐算法的主要类型。第二篇涵盖了不一样类型的协同过滤算法,突出他们之间的一些细微差异。以后的三篇会陆续发表出来。第三篇详细介绍了基于内容的过滤算法。第四篇主要介绍了混合引荐技术和基于流行度的推荐方法。第五篇,在回顾了全部基本的推荐算法以后,介绍了如何选择最合适的推荐算法。这一系列的做者是 Maya Hristakeva 和 Kris Jack ,英国的数据科学家,具备丰富的构建推荐系统的经验,他们共同为世界建立出了一些出色的推荐系统。框架
2.一次算法的普及型讨论机器学习
虽然也曾从事过技术研发相关的工做,可是对算法这类很“高深”和数学关系又比较紧密的技术来讲,要真正地了解起来确实是一个难度很大的动做。可是在笔者参加了一些和算法以及推荐系统相关的活动以后,发现这一高深的学问已经被从事软件开发的朋友应用的很是普遍。特别是在电商火爆的今天,各类和推荐相关的网站风起云涌,算法进入日常百姓家也就是水到渠成了。本文讨论了算法和推荐引发关注的缘由,算法、架构、策略、机器学习之间的关系,学习推荐算法的几点经验等。分布式
如今网上处处都有推荐。好比亚马逊、Mint.com之类的财务规划网站、谷歌这些知名公司使用推荐提供情境化的、有相关性的用户体验,以提升转化率和用户满意度。这些建议原来通常由天天晚上、每周或每个月生成新推荐的批处理做业计算提供。然而对于某些类型的推荐,响应时间有必要比批量处理做业所需的时间更短。本文将会介绍如何使用Kiji框架,它是一个用来构建大数据应用和实时推荐系统的开源框架。经过这篇文章能够了解到如何用Kiji整合数据,模型和算法来开发一个能够实时刷新推荐的推荐系统。学习
4.百分点推荐引擎–从需求到架构测试
百分点推荐引擎是国内领先的推荐技术平台,专一于为电子商务和资讯网站提供SaaS模式的个性化推荐服务,提升网站的整站转化率和用户黏度。本文将从电子商务网站的实际需求出发,介绍百分点推荐引擎架构设计和搭建。百分点的架构设计包含了存储层,算法层,业务层,管理层。算法层里包含在线算法和离线算法。在线算法包括协同过滤(UserBased/ItemBased CF),基于内容的推荐(Content Based),热扩散(Heat Diffusion),用户行为模式分析(Behavior PatterAnalysis)等等。离线算法包括KNN聚类,基于FP Tree的关联规则挖掘,基于上下文统计的关联规则挖掘,序列模式算法,文档建模算法等等。
Netflix的推荐和个性化功能向来精准,他们公布了本身的系统架构。主要从在线,接近在线,离线处理三个方面来说解。
而且他们指出构建一个好的推荐系统须要具有使用复杂机器学习算法的能力,这些算法要能够适应高度复杂性,能够处理大量数据。还要可以提供灵活、敏捷创新的架构,新的方法能够很容易在其基础上开发和插入。并且,须要推荐结果足够新,能快速响应新的数据和用户行为。找到这些要求之间恰当的平衡并不容易,须要深思熟虑的需求分析,细心的技术选择,战略性的推荐算法分解,最终才能为客户达成最佳的结果。
个性化推荐引擎已经在雅虎的首页、新闻、体育、财经等不少频道,以及雅虎的Email、用户订阅的邮件内容等方面使用。个性化推荐引擎推荐的内容有雅虎编辑原创的内容,也有雅虎购买版权的内容,还有从Web上抓取的内容,包括新闻、图片、博客、轻博客等形式。如今已经在欧洲等地方作全球化的推广,而且统计发现个性化推荐引擎对于用户粘性的提高已经超过了100%。本文从数据收集,新模型/算法的评估上线,关于用户粘度三个方面讲解了雅虎推荐引擎的系统架构。
与传统的推荐引擎不一样,人人网的社会化推荐考虑了人与人之间的关系,经过真实的人际关系,提升推荐结果的精准度。例如,好友推荐的目的是帮助用户找到好友,迅速构建用户社交图谱,造成可持续发展的网络生态圈。社会化推荐对传统的推荐引擎提出了新的需求和挑战,具体体如今其个性化和复杂性上。本文从社交图谱的创建和社会化过滤方法的应用两个方面讲解了人人网社会化推荐框架。
为了保证用户体验和使用效果,推荐系统中的机器学习算法通常都是针对完整的数据集进行的。然而,随着推荐系统输入数据量的飞速增加,传统的集中式机器学习算法愈来愈难以知足应用需求。所以,分布式机器学习算法被提出用来大规模数据集的分析。做为全球排名第一的社交网站,Facebook就须要利用分布式推荐系统来帮助用户找到他们可能感兴趣的页面、组、事件或者游戏等。Facebook就在其官网公布了其推荐系统的原理、性能及使用状况。在工做原理方面,Facebook推荐系统采用的是流行的协同过滤(Collaborative filtering,CF)技术。具体读者能够自行看看文中的叙述。
9.微博推荐架构演进
微博(Weibo)是一种经过关注机制分享简短实时信息的广播式社交网络平台。微博用户经过关注来订阅内容,在这种场景下,推荐系统能够很好地和订阅分发体系进行融合,相互促进。微博两个核心基础点:一是用户关系构建,二是内容传播,微博推荐一直致力于优化这两点,促进微博发展。
在微博推荐发展的过程当中遇到体系方向的变化、业务的不断更迭、目标的从新树立,其产品思路、架构以及算法也随之进行变迁。本文讲了微博推荐架构的演进过程:独立式的1.0版本,分层式的2.0版本和平台式的3.0,架构组成分为应用层,计算层,数据层和基础服务,并在3.0中解决了推荐候选/排序/训练的算法最重要的问题。具体能够点击连接阅读。
随着移动互联网迅速发展,大数据技术为企业带来了史无前例的发展机遇,然而中小企业和传统行业因为其数据量缺少且单一,技术投入不足的劣势,面对大数据技术发展带来的红利只能望洋兴叹。本文介绍微信即将推出的微信斑马系统,该系统旨在为中小企业和传统行业提供基于微信大数据分析技术的受众分析,精准推广,激活留存和商业智能决策的全套解决方案。