系统优化与进阶之道:大规模复杂场景下的技术创新实录
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

项目背景

机器学习现在已经在广告行业有了十分广泛的应用,特别是被用在预测视频网站流量上。在采访的开始,FreeWheel的研发人员叶博睿为我们简单阐述了这一技术解决方案的痛点。

FreeWheel的客户大多拥有大量高品质的内容,诸如:直播体育赛事、美剧、电影等。由于这些内容大多是在固定时段播出,其流量会呈现出一定的周期性,但多方面因素的存在导致这种周期性并非严格。

比如,美剧《摩登家庭》在每年的九月底更新一季,那么在这个时期的视频流量就会上涨,不过并非每年九月份的观看量都一模一样。通常,非机器学习的传统流量预测方法会有以下三个痛点:

(1)基于采样的预测方法难以捕捉周期性信息,从而预测精度会低;

(2)不同的客户拥有很多不同的视频,这个量级多达百万,而每个视频的周期却不尽相同,如果对每个不同的视频人工处理无疑是非常困难的;

(3)数据不具有严格的周期性,使得传统统计模型ARMA、ARIMA难以得到满意的结果。

此外,研发人员表示,对于很多客户来说,他们的季节性赛事流量难以用算法预测,只能自己手工调整,这给运营带来了很多压力。如果手工预测的结果不好,还会影响广告的售卖等。

为了解决以上问题,FreeWheel采用了机器学习的方法去自动判别一个视频的流量是否有周期性,并且从历史数据中提取周期特征进行流量预测。

团队是从2017年开始这一项目的。在此之前,团队进行过很多其他非机器学习的尝试,比如使用采样方法来预测,效果并不理想。在深入理解和分析了客户的业务场景和数据特点后,团队提出了用机器学习来解决的想法。

2017年上半年,团队经过反复实验,确定了视频流量季节性判定算法和流量预测算法。在上线之后改进了算法效果评估准则、新增视频分类算法;下半年,团队优化了预测逻辑,客户也从最初的2个增长到11个。

2018年,团队开始尝试基于深度学习的一系列方法,其中包括基于卷积神经网络(Convolutional Neural Networks)的季节性判定算法和基于循环神经网络(Recurrent Neural Networks)的序列到序列(Sequence-To-Sequence)模型的流量预测算法。据介绍,这些工作还在持续的进行当中。

发展至今,这一项目已取得了不错的成果。我们了解到,目前,FreeWheel主要客户60% 的流量预测都已迁移到了该解决方案且运行稳定,并得到了客户的积极反馈。有些客户还专门发来邮件致谢,例如Channel 4就曾说:“We can see dips in forecast results when we expect to see dips. Thank you for your hard work! ”

下面展示他们部分线上预测结果图:

其中,绿色线为客户的实际流量,蓝色线为机器学习算法预测出的流量,红色线为采样预测的流量。可以看到机器学习算法的预测结果和实际流量贴合得非常好。

利用机器学习,团队已经解决了前文中提到的痛点,新的算法已经可以准确捕捉季节性信息,适配不同的客户,并且极大地降低各方面的运营成本等。