摔!在线视频看到关键时刻,突然卡住了!
你遇到过这样的情况么?有时候是卡住了,有时候是画质猛降。出现这种情况,因为现在的算法把视频分解为小块,边播放边加载。如果网速不过给力,视频网站就会尝试降低分辨率,更严重的情况就是卡顿(等缓冲)。
比方YouTube就用了这种自适应比特率(ABR)算法。不过,问题在于很多用户不会从头到尾看完视频,所以有非常多的缓冲数据都被浪费了。
另外,由于需要在视频质量和缓冲频率之间做出平衡,Netflix和YouTube等视频网站渐渐变得不能满足用户的观看期望。视频质量不佳,用户就会走掉,这会进一步影响广告收入。因此,视频网站必须找到创新的方法。
麻省理工学院(MIT)的Mohammad Alizadeh教授,和他在人工智能实验室(CSAIL)的团队为此研发出一套新的AI系统:Pensieve。
这套系统使用机器学习的方法,根据不同的网络条件,选择不同的算法。Pensieve被证明可以比现有的系统提供更高质量的视频观看体验。实验数据表明,Pensieve可以减少10-30%的缓冲,而用户体验的评分要高出10-25%。
Pensieve可以根据网络条件进行调整。比如,一位地铁上的用户即将进入没有网络的区域时,会自动降低视频的码率,以便提前加载足够的视频,这样即便没有网络支持,用户也能不间断的继续观看视频。
“我们的系统在优化方面非常灵活”,博士生Hongzi Mao表示,这套系统可以个性化订制视频体验,比方是否让缓冲的优先级高于画质。Mao也是此次研究论文的第一作者,同时署名的还包括Alizadeh和博士生Ravi Netravali。
这篇论文将在下周的SIGCOMM会议上发表,代码也将开源。
一般来说,ABR有两种算法:基于码率的算法,会根据网速传输数据;基于缓冲的算法,会保证总有一定的数据处于被缓冲状态。
这两种算法的限制在于,他们没有同时兼顾网速和缓冲。因此,这些算法时常会产生比较差的比特率决策,并且依赖人工专家进行仔细的调整。
也有研究人员试图将这两种方法进行结合,CMU的学者就开发出模型预测控制(MPC)系统,这个方法通过预测环境如何随时间变化来优化决策。这是一个重大的提升,但仍然受困于网速等难以建模的因素。
(插播:MPC的介绍可以查看网页 https://users.ece.cmu.edu/~vsekar/mpcdash.html)
而这次提出的Pensieve把ABR算法变成一个神经网络,而且在各种不同的缓冲和网速条件下进行了测试。
这套系统通过奖励和惩罚系统调整算法。研究表明,刚开始看视频时,用户更容易接受缓冲,所以可以据此调整奖惩系统。
目前Pensieve仅仅基于一个月的下载视频进行了训练,Alizadeh表示如果有更多Netflix或者YouTube的数据,这套系统的效果会更好。
接下来,这个团队会在VR场景下测试Pensieve。“4K画质的VR视频,所需要要的码率可能轻松达到数百兆比特每秒,而今天的网络根本无法支持”,Alizadeh说。