千亿级在线学习框架:工程实践与挑战
版权申诉
41 浏览量
更新于2024-06-21
收藏 2.68MB PDF 举报
"该文档是关于千亿级在线学习框架的工程实践分享,主要涉及大规模稀疏训推框架在OPPO的应用。作者肖超是OPPO自研机器学习框架的负责人,具有丰富的广告推荐系统建设经验。文档内容涵盖在线学习面临的挑战、架构优化、上线效果以及问答环节。"
在大规模稀疏训推框架中,面临的主要挑战包括性能、易用性和实时性。性能方面,由于单样本拥有5000个键,每次请求100个候选,导致推理服务的拉取embedding流量高达3GB/s,这对系统的处理能力提出了极高的要求。为了解决易用性问题,框架需要实现batch训练和流式训练的无缝切换,同时还要应对错误样本的快速恢复和不同组件(如worker、train-ps、serving-ps)的故障恢复。实时性方面,参数同步需要达到秒级延迟,并且每次请求的embedding需要实时从serving-ps拉取。
在线学习的架构设计至关重要。文档中提到了一种实时样本处理流程,包括延迟转化FN纠编,以提高预测的准确性。训练过程中,通过特定的纠编公式调整logits,以适应在线学习的特性。此外,还介绍了一种基于Flink的解决方案,其优点是降低了开发成本,利用Flink生态处理样本,且训练和推理可以共用代码。然而,Flink方案也存在不足,如算法工程师通常习惯于Python,而编写Flink代码有一定难度,且使用TensorFlow进行推理可能性能不佳。
为了提高实时性,worker从Kafka读取实时样本数据并积累到一定数量后开始训练,train-ps则记录最近修改的embkey并将embedding发送到Kafka,serving-ps从中获取最新embedding并更新。对于故障恢复,train-ps和serving-ps的节点down机都有相应的恢复流程,确保系统的高可用性。
上线效果部分虽然没有详细展开,但可以推测经过一系列的架构优化和问题解决,系统在性能、稳定性和用户体验上都得到了显著提升。最后的Q&A环节可能涉及到实际操作中的具体问题和解决方案,进一步加深了对大规模稀疏训推框架的理解。
这份文档深入探讨了千亿级在线学习框架在大规模数据处理、实时学习、容错恢复等方面的工程实践,对于理解如何构建高效、可靠的在线学习系统具有重要参考价值。
2022-03-18 上传
2021-08-23 上传
2021-09-23 上传
2022-03-18 上传
2023-08-30 上传
2024-06-02 上传
2023-09-10 上传
2023-02-22 上传
Build前沿
- 粉丝: 743
- 资源: 2120
最新资源
- Java集合ArrayList实现字符串管理及效果展示
- 实现2D3D相机拾取射线的关键技术
- LiveLy-公寓管理门户:创新体验与技术实现
- 易语言打造的快捷禁止程序运行小工具
- Microgateway核心:实现配置和插件的主端口转发
- 掌握Java基本操作:增删查改入门代码详解
- Apache Tomcat 7.0.109 Windows版下载指南
- Qt实现文件系统浏览器界面设计与功能开发
- ReactJS新手实验:搭建与运行教程
- 探索生成艺术:几个月创意Processing实验
- Django框架下Cisco IOx平台实战开发案例源码解析
- 在Linux环境下配置Java版VTK开发环境
- 29街网上城市公司网站系统v1.0:企业建站全面解决方案
- WordPress CMB2插件的Suggest字段类型使用教程
- TCP协议实现的Java桌面聊天客户端应用
- ANR-WatchDog: 检测Android应用无响应并报告异常