1、微博在线机器学习和深度学习实践目录1.推荐篇2.平台篇3.总结篇1目录推荐场景推荐在线机器学习深度学习平台背景平台架构平台效果微博技术里程碑微博业务生态推荐篇APPLICATION推荐场景、在线机器学习和深度学习1 11 推荐场景 信息流热门流视频流关系流 推荐流图片推荐流正文推荐流视频推荐流1 推荐场景 推荐在特定场景下,根据用户行为和特点,向用户推荐感兴趣的对象集模型:趋势实时化:在线机器学习深度化:深度学习平台化:机器学习平台2 推荐 实时化特征实时化:更及时反馈用户行为,更细粒度刻画用户模型实时化:根据线上样本实时训练模型,及时地反映对象的线上变化模型推理预测服务实时特征实时数据3 在
2、线机器学习实时样本实时模型训练实时更新参数Task训练预处理Node实时样本拼接Node在线模型训练Node离线样本拼接Node在线模型评估Node模型上线Node实时特征处理Node离线特征处理TaskKafka输入inputprocessprocessoutputWeiFlow工作流Task模型训练Task模型训练TaskMetrics输出3 在线机器学习-工作流互动行为日志数据处理点击行为日志阅读行为日志曝光行为日志数据过滤样本拼接定时轮询KafkaHdfs样本输出3 在线机器学习-实时样本生成 多流拼接曝光,互动,点击,真实阅读等多种数据流接入并多流拼接 如何解决日志延时问题延迟等待机
3、制,先到先走定时轮寻,最长N分钟等待Kafka 堆积监控,实时报警 如何解决内存问题调整内存参数关闭多余的监控点 如何异常处理自动化监控与修复系统Checkpoint 节点异常修复3 在线机器学习-实时样本生成在线机器学习模型训练:Flink/Blink+WeiPS样本生成和特征处理1.配置化2.多标签样本3.支持高维HASH训练预处理1.标签选择2.标签UDF3.样本过滤4.特征过滤模型训练1.支持回归和分类2.支持LR、FM、DeepFM等模型3.支持SGD、FTRL、Adagrad等优化算法模型评估1.独立模型评估2.配置化3.UI展示3 在线机器学习-实时模型训练 模型选择LR:基础模
4、型,对特征工程依赖较强FM:大规模稀疏数据下的特征组合问题DeepFM 优化算法选择FTRL:调节学习率,突出低频特征,非batch优化Adagrad:调节学习率,突出低频特征,实现简单SGD:参数少,效率高,固定学习率 ID特征处理Hash:BKDRhash/CityHash,ID高维度稀疏+实时3 在线机器学习-实时模型训练servingservingserverserverserverworkerModel Serving SystemServing PSTraing PSTraing Model SystemPredict ScoreSample Dataworkerworkerwor
5、ker3 在线机器学习-参数服务器servingservingservingserverserverserverserverserverworkerworkerworkerPSschedulerPSserverPSserverPSserverPSagentPSagentzookeeperPSproxyPSproxyPSsubmitFile SystemcheckpointModel Training SystemModel registerStatus set/getModel deleteModel SaveModel LoadHAFault tolerancecheckpointLocal
6、HDFSParam Server SystemModel Serving System3 在线机器学习-参数服务器 参数规模支持百亿特征维度,千亿参数 模型版本多模型多版本:多组实验并行执行,提高实验迭代效率在线版本切换:基于ZK的版本感知机制,动态进行版本切换,实现BASE模型的热更新,实时训练与离线训练周期模型融合模型结构训练与推理兼容:在线PS与离线PS模型结构兼容,自动模型参数转换 稳定性优化模型快照:基于ps-scheduler的周期模型版本探测与保存,模型稀疏化分片存储冷备容灾:基于checkpoint机制(Local模式&Remote模式),实现参数服务的高可用,支持基于模型的异