深入剖析机器学习框架平台Pegasus

来源:公众号“Morketing”公众号“”

如何从日益庞大的广告库中,选择恰当的广告内容并推荐给不同的受众群体?基于Pegasus的Avazu个性化广告推荐算法是如何解决这一问题的?

希望通过这篇深入剖析机器学习框架平台Pegasus的技术文章,能够为我们解决这些疑问。

平台简介

Pegasus是DotC United Group(以下简称DUG)推出的以DUG广告业务算法模块为原型而演化出的智能机器学习框架平台,不仅满足了广告核心业务对机器学习平台的各方面需求,同时可支撑热点推荐、个性化推荐、作弊检测、人脸识别、目标检测、目标跟踪、语义理解、篇章分析、情感分析以及其他计算机视觉与自然语言处理等相关的业务需求。目前,DUG已有超过20个主要产品都在使用Pegasus。随着DUG在广告、风控、文本、图像、语音等业务的快速增长, Pegasus机器学习平台的功能也在日益强大。

平台架构

Pegasus以DUG超大规模分布式系统为基石,专注于充分利用大规模分布式系统和高效智能GPU集群的性能,为分布式环境的并行计算进行加速,能够更快速地利用大规模数据进行AI 训练和推理。

快速、简单、易用是Pegasus机器学习平台的目标和特点,可以为不同行业提供完整的数据流接入、大规模分布式训练集群和优化的算法解决方案。

在广告点击率预测、风险控制、个性化推荐等机器学习相关业务中,Pegasus平台提供了LR、SVM、GBDT、FM、FFM、MLR、WDN等表现良好的算法组件,为其在线实时预测、评估以及实时数据服务提供了强大的基础。此外,在图像、语音、文本等计算机视觉任务和自然语言处理任务中,Pegasus平台可提供了多种深度学习模型,为CV中的人脸识别、目标检测、目标跟踪及NLP中的文本自动摘要、语义理解、篇章分析、情感分析等不同的技术领域,提供了AI通用解决方案以及强有力的支撑。

Pegasus控制中心

Pegasus控制中心在Pegasus机器学习平台中扮演着至关重要的角色,它是底层分布式计算集群和上层业务应用的调度交互中心。也正是因为Pegasus控制中心的作用,才使得Pegasus成为一个面向商业业务、能应对超大规模数据集的、高性能的机器学习框架,其功能简单易用,同时又能做到用户友好化。

Pegasus控制中心可基于DAG进行任务依赖调度,并支持任务的自依赖以及优先级调度,包含了对数据管理、特征提取、特征存储、特征服务、模型训练、模型评估、自学习服务、模型服务等流程的资源调度控制。在进行大规模机器学习、深度学习和实时处理的过程中,由于需要各种不同框架的配合使用共同完成一个任务,用户只需要通过Pegasus控制中心对业务类型、数据、输出位置进行选择,即可生成一个用于自身业务的作业。

即使业务本身数据量每天按T级增长,模型和数据在不同集群之中,Pegasus控制中心仍能高效地将数据同步到模型训练的集群。Pegasus的数据管理服务会在完成模型训练后,自动根据训练结果作出评估,对训练数据进行删除。

Pegasus数据挖掘

数据是算法和业务的基石。Pegasus机器学习平台拥有整套高效的数据挖掘流程,其百亿乃至千亿规模的特征工程生成能力确保了样本对真实问题空间的匹配程度,从而进一步保证了业务的精准建模。

基于大量的业务模型实践与调优,Pegasus优化出了一套数据挖掘及特征处理函数从而提升开发效率和业务效果。平台支持一系列特征自动处理函数,包括piecewise、pickcat、descartes、combinehash等映射函数,可对特征进行归一化、离散化、ID化和组合等特征处理。然而,特征选择以及参数调优是一项繁琐但却至关重要的任务,Pegasus的特征选择、参数调优模块可以有效帮助算法工程师解决这个难题。

算法模型设计和选择是至关重要的一步,是一个反复迭代不断逼近的过程,需要不断地尝试,进而达到最优状态。算法模型通常会发生过拟合、欠拟合问题,二模型判断不可避免的问题,Pegasus针对过拟合、欠拟合提供了交叉验证、计算准确率、召回率、F值、AUC值、绘制ROC曲线等各种专业工具,从而保证算法的正确选择。

模型在线预测服务是Pegasus智能机器学习框架平台的一个重要功能。通常情况下,模型在线预测服务并发量大,对延时、可用性要求极高。

Pegasus平台上打造了一系列千亿特征流式学习系列算法,包括MLR—FTRL线性模型+千亿级宽特征的代表算法,充分发挥了高维度线性模型的优势。另外,HDM-SVD是千亿规模Embedding向量召回模型,MTDFM也是千亿特征深度学习算法,具备了从线性到浅层Embedding再到深层DNN网络的算法建设,实现了模型设计组件化,使其在构建模型时,可以更多的关注业务本身,真正做到实现时像搭积木一样进行网络结构的设计和搭建。

Pegasus平台对于参数更新模式进行了相应改进,不间断实时模型更新算法优化。以算法HDM-FTRL为例,当样本量累积到很大时,很容易遇到数值稳定性问题和参数抖动问题,可用动态梯度平均策略和正则策略来弥补甚至消除动态抖动的影响。此外,还需对特征进行高频增删,通过特征权重动态衰减策略,及时从模型中剔除,以保证模型始终是正向更新的。

算法服务

Pegasus机器学习框架平台可以为各种不同的业务提供了成熟算法组件,以满足不同业务需求。

在普通的机器学习任务中,算法组件不仅包括LR、RF、GBDT,CNN,LSTM、WDL等经典的算法模型,还加入了MLR、ESM-DSSM、MTDFM、ESDRL等优化改进的算法,同时也为了满足其它不同业务算法的优化需要,提供了包括但不限于SGD、LBFGS、OWLQN、FTRL等优化算法。在计算机视觉任务中,Pegasus平台不仅提供了图像去噪、滤波、边缘检测等基础功能,还特别提供了Face Recognition,Object Detection,Object Tracking等特定领域的算法。在自然语言处理任务中,Pegasus平台也为情感分析,语义理解、文本摘要、机器翻译等任务提供了强劲的支持。

在Pegasus的帮助下,模型设计将变得简单容易,设计师只需关注模型的高层结构,而无需担心任何琐碎的底层问题。Pegasus可以大幅降低了对硬件的要求,缩短了研发的周期,让端到端的深度学习变得更为简单快速。

下面对某些算法组件进行介绍:

1)MLR

即混合逻辑回归,MLR模型是对线性LR模型的推广,它利用分片线性方式对数据进行拟合。基本思路是采用分而治之的策略:如果分类空间本身是非线性的,则按照合适的方式把空间分为多个区域,每个区域里面可以用线性的方式进行拟合,最后,MLR的输出将变为多个子区域预测值的加权平均。

2)ESM-DSSM

ESM-DSSM即使基于全空间多任务学习的Deep Structured Semantic Model。其核心思想是在全特征空间下,将query/doc中的关键信息(Term Vector)提取出来进行简单的Word Hashing之后,将 query/doc域分别投影到固定维的子空间去。Query里的每个word都对应一个固定维的向量,一个query里也会有多个向量,可用sum求和操作得到一个汇总的固定维向量。

3)MTDFM

MTDFM即是Multi-task Deep FM模型,模型基础的部分与GwEN和WDL模型类似,即Group-wise Embedding。MTDFM在多任务学习模式下,引入了代数式的先验pattern,如FM模式,比较简单直接,可给MLP提供先验的结构范式。

4)DI2YOLO

DI2YOLO是Pegasus为人脸识别任务提供的一种多任务联合训练方法,算法能够进行人脸检测、人脸自动对齐和跨人种识别。DI2YOLO能够在不同方向和角度的光照影响下,保持人脸识别正确率的稳定,并且在人脸遮挡的情况下,比以往算法有更大概率的识别出人脸。目前,DI2YOLO算法已率先应用到DUG旗下的相册应用中,它能够根据不同需求,对自拍获得的图片进行去噪、滤波、美颜、智能识别出人脸位置、智能瘦脸等功能。

5)XNNSC

XNNSC是Pegasus为自然语言处理任务中的情感分析任务提供的一种深度学习算法,算法能够对文本进行褒义、贬义、中性的判断。XNNSC的关键思想是利用形容词和名词性文本描述,把它们看作两个(弱)监督信号以学习两个中间情感表征,然后结合学习的表征并用于情感分类。比如,电商类应用可根据Pegasus提供的情感分析算法,提取正负面的评价关键词,形成商品的标签。基于这些标签,用户可以快速知道大众对这个商品的看法;新闻类应用可根据Pegasus提供的情感分析算法对新闻的评论进行分析后,用户便可知晓这个新闻的热点情况,是积极导向,还是消极导向。

Pegasus案例

目前,Pegasus平台上已有很多成功的案例及应用,其中一个最为典型案例便是—Avazu个性化广告推荐。值得一提的是,Avazu的广告业务面向全球,体量巨大,为Avazu用户提供广告推荐会是一项非常具有挑战性的任务。

Avazu的底层数据处理流程如下所示,Pegasus为其提供了大规模计算集群和大规模分布式存储集群用来计算和存储Avazu的全球广告数据,同时也完成了数据挖掘的流程。

Avazu个性化广告推荐算法使用了Pegasus提供的两个深度神经网络模型,一个用于候选广告集生成,一个用于广告排序。

候选生成网络可以显著减小可推荐的广告数量。首先,从庞大的广告库中选出一组最大可能被用户点击的广告,这样生成的候选广告集与用户的相关性最高,也会对用户评分进行预测。之后,便可得到一组规模更小但相关性更高的广告集,系统将仔细分析这些候选内容,以便做出最佳的选择,这项工作将由Pegasus提供的排序神经网络完成。它将根据广告描述数据和用户行为信息及其他信息,使用设计好的目标函数为每个广告计算点击概率,点击概率最高的广告将会被推荐出去。

基于Pegasus的Avazu个性化广告推荐算法可以从非常庞大的广告库中选择广告,推荐给全球各个国家及地区的不同爱好的用户,并面向用户进行有针对性的推荐。这个方法还可扩展,将其他来源的内容也容纳进来。

总结及展望

Pegasus面对的是海量用户,需要瞬时的反应时间,这对于在常规平台上的实时处理用户行为带来了巨大的挑战。

DUG在以下方面做出了重大的创新:

1)更高的平台框架兼容性 (包括但不限于Tensorflow、Mxnet、Pytorch等)

2)更灵活的编程模式

3)更简单便捷的可视化系统操作

4)更低的交易成本

5)更快速的响应时间

6)更高的TPS处理能力

7)通过POI (Power of Identification) 平衡数据商业化价值与用户隐私

Pegasus打造了一个开源的开发平台,是人工智能行业参与者基础设施,将提升他们的效率和投入产出比。作为企业级的智能机器学习框架平台,Pegasus为大规模互联网业务而生,其技术架构已达到一线大型互联网公司的水平,代表着业内领先的一流水准。

智连世界,探索不同。DotC United Group始终致力为全球用户创造更多的价值,提供更优质的用户体验。聚焦全球化过程中客户(企业和用户)的痛点,提供有竞争力的,差异化的产品和解决方案,为客户创造价值,实现多赢。未来,DotC United Group将在技术迭代和颠覆创新的过程中不断提升自己,而Pegasus平台也会在伴随着业务发展过程不断推进和演化。

微信公众号微信公众号