In this paper, we seek to answer what-if questions - i.e., given recorded data of an existing deployed networked system, what would be the performance impact if we changed the design of the system (a task also known as causal inference). We make three contributions. First, we expose the complexity of causal inference in the context of adaptive bit rate video streaming, a challenging domain where the network conditions during the session act as a sequence of latent and confounding variables, and a change at any point in the session has a cascading impact on the rest of the session. Second, we present Veritas, a novel framework that tackles causal reasoning for video streaming without resorting to randomised trials. Integral to Veritas is an easy to interpret domain-specific ML model (an embedded Hidden Markov Model) that relates the latent stochastic process (intrinsic bandwidth that the video session can achieve) to actual observations (download times) while exploiting control variables such as the TCP state (e.g., congestion window) observed at the start of the download of video chunks. We show through experiments on an emulation testbed that Veritas can answer both counterfactual queries (e.g., the performance of a completed video session had it used a different buffer size) and interventional queries (e.g., estimating the download time for every possible video quality choice for the next chunk in a session in progress). In doing so, Veritas achieves accuracy close to an ideal oracle, while significantly outperforming both a commonly used baseline approach, and Fugu (an off-the-shelf neural network) neither of which account for causal effects.
翻译:在本文中,我们试图解答哪些问题――即,根据已部署的网络系统记录的数据,如果我们改变系统的设计(一个也称为因果推断的任务),那么业绩影响会如何。我们做出了三项贡献。首先,我们暴露了适应性比特率视频流背景下因果推断的复杂性,这是一个具有挑战性的域,会议期间的网络条件是潜伏和混乱变量的序列,在届会的任何时刻的变化都会对届会的其余部分产生连锁影响。第二,我们介绍Veritas,这是一个新颖的框架,它解决了视频流的正常因果推理,而不必采用随机测试。我们通过Veritas集成一个容易解释特定域ML模型(一个嵌入的隐藏马尔多夫模型),该模型将潜伏的沙变过程(视频会议能够实现的精度带带宽)与实际观测(下降时间)联系起来,同时利用TCP状态(例如挤压窗口)等控制变量,在视频库开始下载时观察到的直径直径直的直线推结果,而在视频库中,我们通过一个图像流的测试实验,在每次测试时会中都显示一个磁盘中进行一次测试。