推荐系统架构及流程说明
个性化推荐系统,实现了新闻、二手信息等多种类型的信息的个性化推荐,每一个用户都会拥有属于自己的个性化推荐列表。下面简单介绍推荐架构及推荐流程。
本推荐架构参照Lambda架构,分为三层:批处理层、实时处理层和服务层。
(1)批处理层:主要组件是HDFS、Hbase和Spark MLlib。持久化的历史数据、静态数据保存于Hbase或HDFS;应用程序使用Spark MLlib机器学习算法库,批处理历史数据,建立聚类或分类模型;新数据经过流处理后输入模型,从而获得分类标签。
以新闻推荐为例:在腾讯、搜狐、新浪网等网站按类别(如体育、娱乐、教育等)爬取新闻,分词过滤,建立每篇新闻的词特征向量,并打上相应类别标签。将处理过的数据保存到Hbase中作为训练数据。编写Spark程序读取训练数据,调用MLlib的贝叶斯分类算法,训练新闻分类模型。
根据用户历史浏览情况对用户进行协同过滤,对待推荐的新闻进行聚类,都在本层实现。
(2)实时处理层:主要组件是Kafka和SparkStreaming。爬虫作为Kafka的producer,将数据推送到Kafka中暂存。持久化程序作为一个Kafka的consumer,将原始数据保存到HDFS或Hbase。需要实时流处理的程序作为另外的Kafka consumer,对数据进行实时处理,结果输出到持久化存储或模型中进行进一步处理。
以新闻推荐为例:爬虫定时爬取各个新闻网站的新文章,持久化程序从kafka中取出数据保存到Hbase;Spark Streaming实现的流处理程序对新闻进行实时分词、过滤、建立特征向量,然后输入新闻分类模型进行新闻分类,同时将特征数据保存到Hbase中持久化。打上标签的新闻保存到Redis中供服务层使用。
该层还实现用户关联访问图的维护。关联访问即在一个时间段内,一个用户看了新闻A也看了新闻B。关联访问图以每个待推荐新闻作为顶点,关联访问了两个顶点的用户数作为两个顶点的边。图根据用户的浏览情况实时更新,保存在redis里。
(3)服务层:主要组件是redis,web服务程序。redis保存各个策略得出的推荐列表,当用户从web服务界面登录时,根据redis中保存的用户偏好情况、用户聚类结果、新闻聚类结果、随机抽取结果、协同过滤结果以及关联访问结果按照组合策略给出该用户的推荐列表。
下一篇将对本文中提到的各种工具做简要介绍:推荐系统相关工具简介
推荐系统架构及流程说明相关推荐
- 推荐系统架构与算法流程详解
你知道的越多,不知道的就越多,业余的像一棵小草! 成功路上并不拥挤,因为坚持的人不多. 编辑:业余草 zhuanlan.zhihu.com/p/259985388 推荐:https://www.xtt ...
- 腾讯音乐:全民K歌推荐系统架构及粗排设计
编辑整理:张振.于洋 导读:腾讯音乐娱乐集团 ( TME ) 目前有四大移动音乐产品:QQ音乐.酷狗音乐.酷我音乐和全民K歌,总月活超8亿.其中,全民K歌与其他三款产品有明显的差异,具体表现如下:以唱 ...
- 千万级智能推荐系统架构演进!
作者:fisherman,时任推荐部门推荐系统负责人,负责推荐部门的架构设计及相关研发工作.Davidxiaozhi,时任推荐部门推荐系统架构师,负责推荐系统的架构设计和系统升级. 来自:<决战 ...
- 一线互联网智能推荐系统架构演进
作者:fisherman,时任推荐部门推荐系统负责人,负责推荐部门的架构设计及相关研发工作.Davidxiaozhi,时任推荐部门推荐系统架构师,负责推荐系统的架构设计和系统升级. 来自:<决战 ...
- 基于 Apache Flink + Hologres 的实时推荐系统架构解析
简介:<实时数仓入门训练营>由阿里云研究员王峰.阿里云高级产品专家刘一鸣等实时计算 Flink 版和 Hologres 的多名技术/产品一线专家齐上阵,合力搭建此次训练营的课程体系,精心打 ...
- 基于实时深度学习的推荐系统架构设计和技术演进
简介:整理自 5 月 29 日 阿里云开发者大会,秦江杰和刘童璇的分享,内容包括实时推荐系统的原理以及什么是实时推荐系统.整体系统的架构及如何在阿里云上面实现,以及关于深度学习的细节介绍 本文整理自 ...
- 【转载保存】大型推荐系统架构图设计图
推荐系统架构:https://www.cnblogs.com/kobedeshow/p/3569525.html 推荐系统介绍和基本架构流程:https://blog.csdn.net/LHWorld ...
- 实时数仓入门训练营:基于 Apache Flink + Hologres 的实时推荐系统架构解析
简介: <实时数仓入门训练营>由阿里云研究员王峰.阿里云资深技术专家金晓军.阿里云高级产品专家刘一鸣等实时计算 Flink 版和 Hologres 的多名技术/产品一线专家齐上阵,合力搭建 ...
- 高并发推荐系统架构设计实践
猜你喜欢 0.[免费下载]2022年1月热门报告盘点1.腾讯QQ信息流推荐业务实践2.小红书推荐中台实践3.微信视频号的实时推荐技术架构分享4.预训练模型在华为信息流推荐系统中的探索和应用5.腾讯PC ...
最新文章
- C#Windows服务程序安装常见问题解决方法
- linux 获取 基地址,linux - 每个函数加载的glibc基地址不同。 - SO中文参考 - www.soinside.com...
- TPCAST无线传输模块年底将推出 Oculus Rift 版本
- 测试自己幸运数字的软件,心理测试:4个数字哪个是你的幸运数字?测试你的心理年龄!...
- 破解打开Excel文件编辑的时候提示受保护输入密码
- CCF 201809-2 买菜
- AVR单片机项目教程 基于C语言,AVR单片机项目教程:基于C语言(第2版)
- Mac-删除自带 ABC 输入法的方法
- 5G无线技术基础自学系列 | 移动通信网络的架构
- linux lzma命令,linux lzma安装
- git 常见错误 The remote end hung up unexpectedly
- 用蚕茧表示法写简洁实用的接口文档
- spark出现crossJoin笛卡尔积报错异常解决use the CROSS JOIN syntax to allow cartesian products between these
- 英雄联盟无法开始第二局(已解决,亲测有效)
- 网站使用CDN加速的5个优势
- 无线网主域名服务器,主域名服务器和网关的关系
- 我们的Twitter帐号http://twitter.com/cosmocommerce
- 星座 member.php,计算 星座 PHP
- 163邮箱发送不出去服务器,我是网易163的免费邮箱,最近发现不能发邮件了,不知怎么回事,请热水人帮一下。...
- STM32F030 RTC内部晶振/外部晶振/闹钟
热门文章
- java读取word的插件,java word 插件
- 讲义六 之 docker 搭建测试环境以及部署项目包 created by 爱软测_bill
- 利用ffmpeg 从RTSP流 取rgb图
- 刘备和诸葛亮闹翻:无意说出蜀国灭亡的根源?
- Toronto Research Chemicals BTK抑制剂丨ACP-5197
- 教你用Python定时抓取微博评论,相当牛逼的技术
- //12、设计人民币类,其数据成员为fen(分)、jiao(角)、yuan(元)。重载这个类的加法、减法运算符,并给出主函数应用该类。
- 西门子博途系列学习笔记SCL(一)
- android如何切换主题背景图片,android主题设置与主题切换
- python 正无穷、负无穷的表示