揭秘短视频推荐系统的技术架构及四大模块
导读:推荐系统的基础原理。
作者:张哲
来源:大数据DT(ID:hzdashuju)
01 推荐系统技术架构
下面来看下短视频社区平台的推荐系统架构是如何划分的,由底层往上分别是日志信息层、模型策略层、数据计算层、数据结果层与用户交互层,如图2-5所示。
▲图2-5 推荐系统技术架构
1. 日志信息层
该层主要分为两部分,一部分是静态数据,例如用户数据与内容数据,用户的年龄、性别、地区,稿件内容的标题、时长、作者,在很长一段时间内都是固定数据,系统每天取其增量存入日志信息层;另一部分是行为数据,例如推荐请求日志,记录哪些内容曝光给了哪些用户;推荐点击日志,哪些用户点击了哪些内容;用户浏览时长日志信息、用户LBS地点信息等等。
2. 模型策略层
该层主要是决定采取何种模型、策略来分析与解读日志信息层的静态数据和行为数据,例如在召回阶段是更多地进行热门内容召回,还是根据用户行为进行协同过滤的召回;在排序阶段采用何种机器学习模型来进行精排等策略。
3. 数据计算层
该层是基于模型策略层定下召回排序策略和模型后,采取离线大规模计算与在线实时计算两种方式,计算出模型训练的结果。离线计算是由于机器数量与性能的限制,大量数据需要采取离线方式计算出结果,在线计算是针对线上用户的实时反馈行为,系统快速做出回应,改善用户体验。
4. 数据结果层
该层作用是在不同数据应用系统中存储数据计算层得出的相应计算结果,例如用户画像与内容特征可以存储在ElasticSearch(搜索数据库)中,因为这些数据只需要批量查询读取;而用户行为数据则需要存储在Redis(内存应用)中,方便快速响应前端界面的用户反馈。
5. 用户交互层
该层的交互逻辑分为两部分,第一部分是展现由各层最终计算出的推荐结果给用户,第二部分是记录用户对于推荐结果的反馈行为,例如浏览行为(时长/路径)、点击行为(点击哪些内容/完播率等)、负反馈行为(不感兴趣/投诉等不同程度的负反馈)。
02 推荐系统四大模块
基于以上描述,我们了解了推荐系统技术架构的整体框架,但还是给人感觉太复杂、太技术范儿了。归根结底来说,推荐系统要做的不就是从海量内容库里选出几十个用户可能感兴趣的优质视频吗?我们将推荐系统抽象成一个信息过滤系统,分为审核、召回、排序、规则四个模块,层层递进地过滤内容,如图2-6所示。
▲图2-6 推荐系统技术架构简化
- 审核模块将符合短视频社区规则与价值观的视频过滤出来,输出量级大致在百万左右;
- 召回模块将根据用户行为与热门等规则,快速找到一小部分优质内容,输出量级大致在十万左右;
- 排序模块分为粗排与精排,采用比较复杂的模型,融入较多特征,输出量级在百个视频数量左右;
- 规则模块,也叫ReRanker(重排序)模块,会在排序模块结果的基础上附加人工干预、规则限制等,最终将结果呈现给用户,输出结果在几十个左右。
本文摘编自《短视频社区:产品、运营与商业化》(ISBN:978-7-111-70525-3),经出版方授权发布。
相关文章
- SAP MM 物料移动平均价的修改历史
- SAP MM事务代码S_P00_07000139可以用于跟踪物料移动细节
- 大数相加-cpp
- 用vscode写c/c++代码
- 学习小组Day1---刘
- day01—大姚
- 生信课程note-2
- NLP经典书籍鱼书笔记2-单词的分布式表示
- NLP经典书籍鱼书第3章-基于计数方法的改进
- 蓝桥杯题目——翻硬币无需修改‘*’与’o‘的特殊解法及其所包含的思想
- Studio One6.0最新版新增功能介绍
- FLStudio21Mac版水果新增M2/M1芯支持
- 每个程序员必学的10个Git命令
- 8000字34张图史诗级介绍同轴电缆、双绞线、光纤等线缆,超级详细!
- R语言豆瓣数据文本挖掘 神经网络、词云可视化和交叉验证
- 数据分享|R语言逻辑回归、Naive Bayes贝叶斯、决策树、随机森林算法预测心脏病|附代码数据
- R语言使用随机技术差分进化算法优化的Nelson-Siegel-Svensson模型|附代码数据
- 加油站智能视频分析盒
- 【原创】淘宝关键词搜索爬取与解析
- Okhttp 如何构建一个 Get 的 URL