Angel:深度学习在腾讯广告推荐系统中的实践

导读: Angel是腾讯自研的分布式高性能的机器学习平台,支持机器学习、深度学习、图计算以及联邦学习等场景。Angel的深度学习平台已应用在腾讯的很多个场景中。所以今天会为大家介绍Angel:深度学习在腾讯广告推荐系统中的应用实践,介绍的内容会围绕着下面几点展开。

  • Angel机器学习平台
  • 广告推荐系统与模型
  • 模型训练和优化
  • 优化效果

01 Angel机器学习平台

1. Angel机器学习平台架构

Angel机器学习平台是腾讯自研的基于传统Parameter Server架构的高性能分布式的机器学习平台如图1所示,详细架构图如图2所示。它是一个全栈机器学习平台,支持特征工程、模型训练、模型服务、参数调优等,同时支持机器学习、深度学习、图计算和联邦学习等场景。已经应用在众多业务如腾讯内部广告、金融和社交等场景,吸引了包括华为、新浪、小米等100多家外部公司的用户和开发者。

Fig1 Angel机器学习平台

Fig2 Angel机器学习平台架构图

Angel机器学习平台设计时就考虑到了很多问题,首先是易用性,Angel机器学习平台编程接口简单,可快速上手使用,支持训练数据和模型的自动化切分,减少用户的干预,简单易用。然后是可扩展性方面,Angel提供了PsFun接口,继承特定的类可实现自定义参数更新逻辑和自定义数据格式和模型切分方式等。之后是灵活性,Angel实现了ANGEL_PS_WORKER和ANGEL_PS_SERVICE两种模式,ANGEL_PS_WORKER模式下模型的训练和推理服务由Angel平台自身的PS和Worker完成,这种模式主打速度。而ANGEL_PS_SERVICE模式下,Angel只启动Master和PS,具体的计算交给其他计算平台(如Spark,TensorFlow)负责,Angel只负责提供Parameter Server的功能,主打生态来扩展Angel机器学习平台的生态位。Angel通信模式支持BSP、SSP、ASP等通信协议,满足各种复杂的实际通信环境的要求。最后是稳定性,Angel的PS容错采用CheckPoint模式,Angel每隔一段时间会将PS承载的参数写入到分布式存储系统中,如果某个PS实例挂掉,PS会读取最后一个CheckPoint重新进行服务。Angel的Worker容错方面,如果Work挂掉,Master会重新启动一个Work实例,该实例会从Master上获取挂掉时参数迭代信息。Angel的Master任务信息也会定期存储到分布式存储系统中,如果Mater挂掉,会借助Yarn Master重启机制重新拉起一个Master并加载信息从之前的断点开始任务。Angel还有有慢work检测机制,如果某个Work运行过慢其任务会被调度到其他的Work上进行。

原文链接:【https://www.infoq.cn/article/INYH6QNt6xpusrhr3wAE】。未经作者许可,禁止转载。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章