推荐系统架构
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
技术架构
Nearline
用户行为收集
• 从日志服务器收集用户行为 • 基于Apache Flume进行读取分发
用户行为分发
• 近在线部分将事件发送给Kafka • 离线部分将数据存储到HDFS
技术架构
Nearline
基于Kafka + Storm • 高稳定性 • 高实时性 • 高并发度 实现分布式的实时数据计算 • 内容相关性计算 • Online Learning
推荐系统研究现状
目前推荐系统的研究内容和方向主要包括以下几个 方面: 1、推荐技术的研究 2、推荐的实时性与推荐质量 3、利用云计算提高推荐系统计算能力 4、推荐系统的可解释性
5、用户隐私问题
推荐系统组成
产品
核心
数据 算法
推荐系统组成
产品
同类或者相关商品、店铺推荐 买了还买、看来还看等 猜你喜欢 群体信息披露 热门排行榜 etc
大数据环境下的推荐系统
整个推荐系统的底层运转和计算大量依赖于 Hadoop生态系统
计算 • 超过20000个 MapReduce 任 务 • 超过100个 Spark任务 存储 • 超过200TB HDFS存储 • 超过20TB Hbase使用 • 每天新生成数 据超过1TB 数据流 • 处理超过 500GB的数据 流 • 处理超过10亿 条消息
推荐系统组成
数据
显式数据:能准确的反应用户对物品的真实喜好,但需 要用户付出额外的代价
-用户收藏 -用户评价
隐式数据:通过一些分析和处理,才能反映用户的喜好, 只是数据不是很精确,有些行为的分析存在较大的噪音
-用户浏览 -页面停留时间 -访问次数
推荐系统组成
算法
算法类型: 基于内存的算法 基于模型的算法 基于内容的算法 LR算法 计算方式: 离线:用户偏好分析、用户购买力分析、关联性分析 在线:排序、过滤、增量计算
• 基于HDFS的数据仓库 • 类SQL查询语言
大数据环境下的推荐系统
数据流
Flume
• 高可用的,高可靠的, 分布式的海量日志采 集、聚合和传输
Kafka
• 分布式消息队列 • Push & Pull
Storm
• 实时计算框架
技术架构
技术架构
Online
服务引擎 • 高并发、低延迟、高稳定 • Load Balance / Scalability 在线计算 • 数据缓存 – Couchbase / Redis • 数据加载和更新 • 运算和预测
大数据环境下的推荐系统
大数据环境下推荐系统的挑战
海量
用户
实时
实时采集
精准
用户体验
商品 行为
流量
实时计算 实时预测 业界口碑
大数据环境下的推荐系统
一个好的推荐系统
分析处理海 量数据
快速处理新 增数据和实 时交互
灵活加入和 迭代各种推 荐算法
低延迟响应 高QPS的推 荐请求
大数据环境下的推荐系统
基于云平台的推荐系统分层架构
背景
当然,如果处理不好大数据,人类可能会被大数据 “反噬”,找到自己需要的信息变得更困难,迷失 于大数据之中。有用的信息埋没于繁杂的数据中的 现象被称为“信息过载”。
在大数据时代,让用户从海量的信息中找到自己想 要的信息实在是有点强人所难。时代变了,用户获 取知识的方式也应随之改变:利用推荐技术向用户 推送个性化服务。
技术架构
Offline
数据建模 •用户兴趣建模/商品建模 •用户/商品聚类 •内容去重 推荐算法 •Item CF •矩阵分解 •基于内容的推荐
机器学习
•排序模型 •CTR预估
推荐流程
上线与迭代
理论支持
线下测试
ห้องสมุดไป่ตู้
在线A/B测试
全量上线
测试失败
大数据环境下的推荐系统
计算
Map Reduce
Spark与推荐算法
• 基于内存的数据缓存和计算
• 基于RDD的数据集逻辑结构 • Scala简洁的基于函数式的编程体验
Spark
大数据环境下的推荐系统
存储
HDFS
• 分布式文件系统
HBase
• 分布式Key-Value • Schema Free
Hive
大数据环境下的推荐系统架构
汇报人:余俊良
背景
毫无疑问,这是一个数据爆发的时代。一分钟内, 推特上有 20 万条新消息被发送;在“Facebook”上 用户浏览的信息超过 1000 万条。人们在享受网络带 来便捷的同时,产生了大量的新型多结构数据。有 人说,世界的本质就是数据,大数据将开启一次重 大的时代转型。
传统的推荐系统框架
用户行为 日志存储 系统
推荐 系统
UI
用户
日志 系统
数据反馈
传统的推荐系统框架
传统的推荐系统框架通常只能应对少量的推荐需求, 面对如今的多用户反馈,多商品信息,要求根据上 下文进行实时性推荐等是无能为力的。 通过将推荐系统部署在云平台,利用集群的计算能 力解决大数据下的推荐问题,已是大势所趋。