Mowgli: Passively Learned Rate Control for Real-Time Video¶
核心议题: 为实时视频会议设计一种实用、高效且无损用户体验的 Data-driven 速率控制算法
(1) 背景与现有痛点
-
传统规则算法的局限性:
- 目前视频会议主要依赖于基于规则的启发式算法,如 Google 拥塞控制(GCC)
- 这类算法在面对动态波动的网络环境(如蜂窝网络)时表现不佳,常常无法快速响应带宽变化,导致网络过度拥塞(引发卡顿)或利用率不足
-
在线强化学习(Online RL)的代价:
- 尽管数据驱动的 RL 方法性能显著优于传统算法,但它们在实际生产环境中几乎未被采用
- 原因在于: 这类算法的 试错训练过程 会严重破坏真实用户的视频体验
-
离线仿真训练的缺陷:
- 尝试在模拟器中训练模型以避免干扰用户,会因 simulation-to-reality gap 导致部署到生产环境时性能严重崩溃
- 回顾: learning in situ
(2) Mowgli 的核心创新点
Mowgli 是一个端到端的系统,它开辟了一条新的学习路径: 直接从生产环境中现有的 GCC 遥测日志(Telemetry logs)中进行被动学习
-
核心洞察:
- GCC 虽然反应迟钝或过于保守,但其最终做出的方向性调整通常是正确的
- Mowgli 发现,不需要通过在线探索全新的、有风险的动作,只需将 GCC 日志中已有的决策在时间线上进行提前或重新组织,即可找到更优的控制策略
-
纯离线训练:
- 模型的训练完全在 offline 基于日志完成,不需要进行视频回放或模拟交互
- 从而彻底避免了对实际用户体验的破坏,生成的轻量级模型随后会被直接推送到客户端部署
Tip
听起来其实非常的 straightforward
逻辑很清晰:
- GCC的数据准
- Online对用户影响大
- 模拟效果不如真实
我们选择: 真实 + 基于 GCC 数据 + Offline 训练 => Mowgli
(3) 解决的两大关键技术挑战
为了在没有实时反馈的日志中进行有效学习,Mowgli 采用了以下两种机器学习技术来管控不确定性:
-
应对缺乏反馈:
- 在没有反馈的情况下推断新策略是非常危险的
- Mowgli 采用了保守 Q 学习(Conservative Q-Learning, CQL),当模型需要评估一个在日志中未曾见过的“状态-动作”对时,它会保守地降低预估回报,从而引导模型规避盲目推断带来的风险
-
应对环境方差:
- 由于网络条件极速变化以及应用层编解码逻辑的干扰,采取相同的动作可能产生截然不同的结果
- 为了更全面地捕捉这种随机性,Mowgli 采用了分布式强化学习(Distributional RL),不再预测单一的标量期望值,而是学习并输出所有可能结果的概率分布
Warning
有点黑魔法
(4) 实验评估结果
-
整体性能提升:
- 在多种网络环境(模拟与真实的 3G、4G、5G 及宽带网络)下,Mowgli 始终优于 GCC,将平均视频比特率提高了 15% 到 39%,同时将卡顿率降低了 60% 到 100%
-
媲美在线 RL:
- Mowgli 在纯离线训练的情况下,不仅避免了 QoE(体验质量)下降,还达到了与最先进的在线强化学习算法极其相近的性能水平