如何看待Pensieve:MIT基于神经网络的流媒体码率自适应策略

如何看待Pensieve:MIT基于神经网络的流媒体码率自适应策略

转自网络 周超 

写在前面

今年的SIGCOMM上, MIT CSAIL的一支研究团队,发表了一篇名为Pensieve的工作,即利用神经网络优化码率自适应算法,用于提高媒体传输质量。文章结果表明:与一般的state-of-the-art 方法相比,Pensieve能平均提升QoE高达12%–25%。之所以介绍这篇文章,基于以下几方面的原因:一是自己从事流媒体传输优化的研究多年,也小有成果,对这类研究自然非常感兴趣;二是文章的思路,在2015年时自己曾想过,只是当时既没有实际需求要深入,也因为确实遇到一些问题不知如何解决(没有数据集),也就不了了之,这次看到这个文章,自然眼前一亮;三是这个工作是一个很好的引子,给出了如何将当前热的发紫的深度学习,用于流媒体传输优化上,先不管其是否完美(research永无止境,没有完美的),起码开了一个好头,有兴趣的同行,深入下去应该也能有所小成。此外,该文的一作和其团队还是非常牛的,当别人还在因为中了个mm、infocom就觉得多牛时,他们团队在sigcomm, mobicom上跟玩一样,而且非常务实,基本每篇文章都把代码放出来,惭愧~

在阅读之前,建议熟悉下DASH(Dynamic Additive Streaming over HTTP)或NN(Neural Network)的基本概念和原理,不然有的概念估计不好理解。

开始正题

以下分四个部分介绍下Pensieve:Motivation,Dataset,Network,Results

1、Motivation

Pensieve的动机,即解决传统码率自适应方法面临的两大难题:复杂多变的网络环境和QoE指标。

举例说明,如下图,其中MPC (Model Predictive Control)是卡内基梅隆大学根据网络变化进行预测优化的码率自适应策略,robustMPC则是他的改良版本。

在图(a)中,带宽波动剧烈,robustMPC一直较为保守的估计带宽,导致其带宽利用率低,不敢请求大码率的视频,而Pensieve则不同,通过buffer来补偿带宽的波动,从而获得较大的视频码率。图(b)中,展示了另一个极端例子,即用户极端的偏好高码率,一般的算法(这里以robustMPC为例)难以适应用户的这种需求(个人觉得单独设计完全也可以达到,只是不够现实,不可能为每个人每个指标量身定制一套QoE模型),而Pensieve则能自适应的通过低码率来攒够buffer,然后用buffer来补偿带宽,从而请求最大码率。这里仅仅是两个例子,主要想说明的问题是:state-of-the-art类的策略,一般都是既定策略,难以适应复杂多变的网络和QoE需求,而Pensieve是通过神经网络自我学习,从而达到自适应的目的。

2、Dataset

无数据何来学习,该文通过模拟获取数据集(早期自己就因为没有数据集,因此没有深入下去)

实际通过视频下载,记录真实网络状态获取数据集,自然是最合理的,但是这样会特别费时费力,而且真实网络波动厉害,基本不具有可重现性,因此数据集的清洗和普适性也很难把握。因此,该工作通过模拟,获取各个chunk下载前后的状态,包括下载时长、带宽、buffer等等。模拟的网络会过于理想,是否能真的反应真实网络环境,有待商榷。不过庆幸的事,最后作者通过实验在真实环境进行了一些测试,说明了模型还是挺灵活有效的。

3、Network

先上图,分三部分,从左到右,依次为输入、模型处理、输出

模型的输入:即状态信息,包括:chunk throughput vector(下载每个片段的平均码率),chunk download time vector(下载每个片段所花的时间),next chunk size vector(可选chunk的大小,即可用码率集合),buffer size(当前buffer),chunks left(剩余未下载的片段数量),last chunk bit-rate(上一个请求片段的码率)。

工作流程:在给定上述状态S时,执行操作A,从而得到结果B,即输出下一个片段的码率,此时状态从S迁移到S’,如此循环。整个过程是不是觉得很眼熟,没错,马尔科夫决策的基本步骤,本人的一篇best paper http://ieeexplore.ieee.org/document/7457843/,采用的就用马尔科夫决策来解决DASH中的ABR问题,具体的细节可以看扩展后的长文 http://ieeexplore.ieee.org/document/7393865/,发表在Trans. Multimedia上。不过,在传统马尔科夫决策中,转移概率矩阵、代价函数等都是事先分析好的,整个系统按照既定规则运转。而在Pensieve中,代价函数、决策模型等是通过数据训练出来的,按照作者的观点,其适应性会更强。

值得注意的是,上图中包含两个网络模型,一个是Actor,一个是Critic,其中Critic主要是训练cost function的,类似马尔科夫决策中的代价函数,用于辅助Actor网络,Actor是真正的决策模型,输出下一个片段的码率。

模型参数细节:Actor网络,对于前三个vector,利用滑动窗口,取8个历史值组成一个vector作为输入,分别经过一个1*4的一维卷积网络,该网络具有128个filters,后三个因素,则取当前状态值,经过一个1*1的卷积网络,将所有的输出经过一个全连层得到一个1*128的vector,最后经过softmax进行判决,得到一个vector,描述了不同码率被选中的概率。Critic网络与Actor基本一致,不同的是最后的输出是一个单值,而不是一个vector。

4、Results

学术论文的结果都是非常好的,不然也不会放在论文上,这一般需要读者有自己的判断能力。这篇文章的实验还是非常完善的,从各个维度都进行了详细的说明和比较,这里只选择几个结果简单说明,具体的可以参见论文本身 http://web.mit.edu/pensieve/content/pensieve-sigcomm17.pdf

首先要提一下的是其QoE model,其QoE模型如下:

即考虑了码率大小、卡顿、码率平滑性三个方面,其中,针对其中第一项,即码率的大小,又分为如下几个case:

总体来说,该模型还是比较简单的,而且在某种程度上,不能真正的反应流媒体传输的质量(目前这个领域的研究工作很多,但是流媒体主观质量这个问题,基本谁都能说自己是对的,也都不对,依据场景需求建立最合适的model,才是最实际的)。最开始我以为该文解决了流媒体领域的这一大难题,即如何定义一个靠谱的QoE模型,然而到最后,还是比较失望的,因为该文章的需要针对不同的QoE模型,训练不同的network,也就是在QoE上,并没有任何的创新突破。

以下是分别在FCC和HSDPA两个数据集上的QoE结果和CDF,可以看出,Pensieve的优势还是很明显的。

QoE performance over FCC & HSDPA

CDF Performance over FCC dataset

CDF Performance over HSDPA dataset

最后的一张图比较有意思,该图说和Offline optimal(知道未来网络状态,做全局优化,这个实际不可能提前知道,所有只是为了实验比较),性能仅仅相差9.1%,但是和Online optimal相比,性能只相差0.2%,某种程度上是在说,哥要么不出手,出手就基本已经做到最优了,你们不用再多想了,对于这点,不做评论,大家自己去脑洞。

写在最后

这篇文章无疑是一篇经典,一方面因为他的性能,但我觉得更多的是开辟了一个思路,虽然该思路在以前的文章有很多影子,但是这算是第一个这么完善的给做出来了 https://github.com/hongzimao/pensieve。当然,还有一些问题,也是值得同行们一起去研究和探讨的(个人观点,不代表权威),例如:

1、基于学习的model,其灵活性较高,但与针对特性场景设计的algorithm相比,其性能是否也能较好,毕竟实际系统都是有特定应用场景的

2、模拟生成的数据集,肯定无法反应真实网络的所有case,如何更好的构建数据集,是一个大难点

3、QoE model,如果更灵活,而不用分别train,可以考虑。毕竟,千人千面最难,在给定QoE model的前提下,整个问题的挑战也就没那么大了。

4、网络结构非常简单,复杂的结构会怎样(作者做了很多实验,包括网络深度、数据集的窗口大小等)?例如什么CNN、ResNet、DenseNet之类的(需要这么复杂的网络么,我也不知道,纯属脑洞)

5、流媒体传输的其他方向能否也采用learning的方法,例如jscc、uep等

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 216,163评论 6 498
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 92,301评论 3 392
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 162,089评论 0 352
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,093评论 1 292
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,110评论 6 388
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,079评论 1 295
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,005评论 3 417
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,840评论 0 273
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,278评论 1 310
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,497评论 2 332
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,667评论 1 348
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,394评论 5 343
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,980评论 3 325
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,628评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,796评论 1 268
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,649评论 2 368
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,548评论 2 352

推荐阅读更多精彩内容