Py学习  »  机器学习算法

ICML 2023 | y域码率控制:深度学习时代视频码率控制的新范式

将门创投 • 2 年前 • 247 次点击  

我们提出了一种基于梯度下降的码率控制方法,并证明了其与使用准确码率失真依赖模型的  域码率控制的等价性。经验结果表明我们的方法可以将深度学习视频压缩的性能提升15-30%。该论文由清华大学智能产业研究院,商汤科技研究院合作完成,已被ICML 2023接收。

论文链接:
https://arxiv.org/abs/2209.09422
代码链接(已开源):
https://github.com/tongdaxu/Bit-Allocation-Using-Optimization

一、背景:λ 域码率控制

考虑我们对 N 个视频帧 进行压缩。我们假设 的顺序为解码依赖顺序而非时间顺序。这意味着,第 i 帧 会参考前面的 帧。非常明显地,若我们将 帧每一帧的率失真 拉格朗日乘子 设置为相同的值,其结果为次优的。直觉地,为了达到平均最优的率失真性能,多次被参考的区域,编码简单的区域应当被分配更多的码率。较少被参考的区域,编码复杂的区域应当被分配更少的码率。因此,码率分配 (bit allocation) 算法对视频编码来说是必要的。
具体而言,我们希望在总体拉格朗日乘子 给定的前提下,通过控制每一帧/区域的拉格朗日乘子 ,达到总体的率失真损失最小的效果。该问题可被描述为如下的优化问题:
上述优化问题中,核心的变量为拉格朗日乘子  。因此,我们将其称为  域码率分配。根据拉格朗日乘子法的一次最优条件与率失真函数的最优条件 (Li et al., 2016) (Tishby et al. 2000),我们得到如下的最优条件:
在如HEVC,VVC等传统编码器中,编解码器本身不可导,使得直接优化公式7,8的复杂度为指数级别。为了近似解决公式(6)的优化问题,(Li et al., 2016)引入了如下的码率依赖模型和失真依赖模型:
更具体的,(Li et al., 2016)假设不同帧之间的码率没有相互依赖关系。且第 i 帧对其后所有帧的失真影响为线性关系。其中线性斜率为编码中更新的参数。将近似模型公式9带入公式7的最优码率分配条件,我们得到如下中间结果:
进一步地,将公式10的中间结果带入公式8的率失真最优条件,我们可以解得每一帧的拉格朗日乘子
公式11即为经典的 λ 域码率分配 (Li et al., 2016),该方法为HEVC官方参考软件的码率分配方法,也广泛的用于其他传统编码标准中。然而,注意到该方法正确性很大程度上取决于公式9中的近似码率依赖模型和失真依赖模型的正确性。如真实情况偏离模型较大,该方法可能会导致次优的结果。

二 、y域码率控制:针对深度学习视频压缩的码率控制新范式

对于深度学习视频压缩方法而言, 域码率分配同样适用。(Li et al., 2022b) 将HEVC上的 λ域码率分配迁移到了深度学习方法中并取得了不错的效果。然而,相比传统视频压缩而言,深度学习视频压缩具有端到端可导性。我们有没有办法利用这种可导性,更加直接地解决公式6的码率分配呢?
答案是肯定的。
我们考虑将视频帧 编码为隐变量 。隐变量由编码器 初始化。初始化后,我们直接对隐变量的值进行梯度下降,目标与公式6相同,即最小化总体GoP(Group of Picture) R-D损失:
公式12的方法即为半均摊变分推断(Semi-Amortized Variational Inference, SAVI)(Kim et al., 2018; Marino et al., 2018),最早被用于减少变分自编码器中的均摊差距 (Cremer et al., 2018),被广泛用于提升图像编码的R-D性能 (Yang et al., 2020b)。自然而然地,公式12可用于提升深度视频编码器的R-D性能。然而,并不明显的是,公式12可被认为是一种码率分配。
为了理解为什么公式12是一种码率分配,我们考虑构建一个码率分配结果  ,使得该  的单帧R-D损失梯度等同于GoP R-D损失梯度:
那么,我们称  为公式12方法的等效   域码率分配。即,公式12的方法等效于结果为  的 域码率分配。对于  ,我们有如下两个主要结论:

定理3.1告诉了我们的显示解,其中两部分累加即为准确的码率依赖模型和失真依赖模型。我们注意到这两部分模型是由深度学习视频压缩的解码器所定义的。当我们的解码器端到端可导时,理论上我们可以利用解码器梯度的雅可比矩阵对准确的码率依赖模型和失真依赖模型进行求解:

另一方面,定理3.2告诉我们当公式9当中简化的码率依赖模型和失真依赖模型被替换为公式28的准确模型后,其结果即为  域码率分配的最优解。换而言之,我们有如下重要结论:
公式12的方法等效于使用准确码率依赖模型和失真依赖模型的 λ 域码率分配,且该准确依赖模型由深度学习视频压缩的解码器隐式地定义。
类比 λ 域码率分配,该方法的核心变量为隐变量  ,故我们将其称为  域码率分配。 域码率分配是深度学习视频压缩独有的码率控制新范式。相比其他方法,  域码率分配不需要任何近似模型,可以达到像素级码率分配。且在梯度下降可达到全局最优解的前提下,  域码率分配是最优码率分配。

三 、y 域码率控制:朴素半均摊变分推断的实现

  为单层隐变量时,朴素半均摊变分推断(SAVI)即可解决问题。首先我们初始化隐变量,接下来我们直接用GoP级别R-D cost对隐变量进行梯度下降优化:
然而,当为视频帧的隐变量时,我们需要考虑视频帧的帧间依赖结构。考虑一个两帧问题,我们要解决的其实是一个嵌套优化问题:
自然而然地,该嵌套优化问题需要嵌套梯度下降求解:
而非使用朴素同时梯度下降求解。

四 、y 域码率控制:基于梯度下降的梯度下降进行的实现

为求解公式20的嵌套梯度下降问题,我们以两个隐变量,一步梯度下降的最简单情况为例:

其中倒数第二步即为关键步骤,我们需要对梯度下降后的结果再次求导,并将梯度反向传播回梯度下降前的值,该方法被称为梯度下降的梯度下降(back-prop through gradient descent) (Samuel & Tappen, 2009; Domke, 2012)。
从两个隐变量,一次梯度下降的例子开始,我们可以递归地多次应用梯度下降的梯度下降。进而,我们可以求解任意多个有向无环图依赖的隐变量,任意多次梯度下降的半均摊变分推断问题,算法如下:

理论上任意长度,任意帧依赖关系的深度视频压缩都可以被有向无环图概括。将该算法直接应用即可达到最优码率分配。

五 、y 域码率控制:复杂度控制

事实上,由于复杂度限制,如上算法仅可用于非常小规模的问题 (5个隐变量,10步梯度下降)。然而,深度学习视频压缩规模较大 (超过20个隐变量,超过1000步梯度下降)。因此,直接应用该算法复杂度过高。我们提出两种简化,第一种是针对时间复杂度的简化。我们考虑近似梯度:
如此一来,我们无需梯度下降的梯度下降即可完成隐变量梯度的估算。进一步地,我们针对空间复杂度简化,只考虑当前帧后的C帧:
如此一来,算法的空间复杂度为常数,可以使得我们的方法适用于任意长的视频。

六、 实验结果

我们在HEVC Class BCDE, UVG五个数据集上进行测试。我们选用DVC (Lu et al., 2019) ,DCVC (Li et al., 2021) ,HSTEM (Li et al., 2022a) 等多个深度学习视频压缩基线方法进行测试。在全部基线和数据集上,我们的y域码率控制算法均有非常好的效果:
具体地,在DVC,DCVC之上,使用我们的方法可以取得接近30%的性能收益。在自带部分码率分配的HSTEM上,使用我们的方法也可以取得接近15%的性能收益。更进一步地,经过y 域码率分配后,DVC可以达到接近DCVC的性能,DCVC可以达到HSTEM的性能,实现接近一代的性能提升。
同时,我们在较小的MNIST数据集和两层VAE上测试了我们基于梯度下降的梯度下降方法的性能。密度估计任务上的实验结果表明了我们方法的有效性。

七 、讨论:码率分配与误差传播

深度学习视频压缩中的误差传播常常与码率分配分开讨论,并相互不引用。作者认为 (Sun 2021) 与Google公司的VCT确实是解决了误差传播问题,然而从码率分配到角度看,改解决方案是次优的。

事实上,在传统编码器中,我们会明确的区分两种码率分配算法。一种算法为最小均值算法(minAvg),即我们的优化目标为最小平均R-D cost。该方法较为主流,也是本文讨论的方法。另一种算法为最小方差(minVar)算法,即我们的优化目标为每帧的质量方差尽可能小。该方法应用较少。我们讨论的码率分配是指最小平均的码率分配,误差传播为最小方差的码率分配。往往最小方差与最小均值的最优解不同。从这点来看, (Sun 2021) 与Google公司的VCT从平均R-D性能上讲均有提升空间。且通过最小化误差传播来提升R-D性能的目标是错误的。

八 、结论

本文提出了 y域码率控制,是一种针对深度学习视频压缩的码率控制新范式。我们证明该方法等价于使用精确码率依赖与失真依赖的λ 域码率控制,进而证明了该方法的最优性。实验结果表明,在多个基线算法上,我们的方法有效提高深度视频压缩15-30%的性能
参考文献
[1] Li, L., Li, B., Li, H., and Chen, C. W. λ-domain optimal bit allocation algorithm for high efficiency video coding. IEEE Trans. Circuits Syst. Video Technol., 28(1):130–142, 2016.
[2] Kim, Y., Wiseman, S., Miller, A., Sontag, D., and Rush, A. Semi-amortized variational autoencoders. In Int. Conf. on Machine Learning, pp. 2678–2687. PMLR, 2018.
[3] Marino, J., Yue, Y., and Mandt, S. Iterative amortized inference. In Int. Conf. on Machine Learning, pp. 3403– 3412. PMLR, 2018.
[4] Domke, J. Generic methods for optimization-based modeling. In Artificial Intelligence and Statistics, pp. 318–326. PMLR, 2012.
[5] Samuel, K. G. and Tappen, M. F. Learning optimized map estimates in continuously-valued mrf models. In 2009 IEEE Conference on Computer Vision and Pattern Recognition, pp. 477–484. IEEE, 2009.
[6] Sun, Z., Tan, Z., Sun, X., Zhang, F., Li, D., Qian, Y., and Li, H. Spatiotemporal entropy model is all you need for learned video compression. arXiv preprint arXiv:2104.06083, 2021.
[7] Lu, G., Cai, C., Zhang, X., Chen, L., Ouyang, W., Xu, D., and Gao, Z. Content adaptive and error propagation aware deep video compression. In European Conference on Computer Vision, pp. 456–472. Springer, 2020a.
作者:许通达
Illustration by IconScout Store from IconScout
-The End-

扫码观看

本周上新!



“AI技术流”原创投稿计划


TechBeat是由将门创投建立的AI学习社区(www.techbeat.net社区上线480+期talk视频,2400+篇技术干货文章,方向覆盖CV/NLP/ML/Robotis等;每月定期举办顶会及其他线上交流活动,不定期举办技术人线下聚会交流活动。我们正在努力成为AI人才喜爱的高质量、知识型交流平台,希望为AI人才打造更专业的服务和体验,加速并陪伴其成长。


投稿内容

// 最新技术解读/系统性知识分享 //

// 前沿资讯解说/心得经历讲述 //


投稿须知

稿件需要为原创文章,并标明作者信息。

我们会选择部分在深度技术解析及科研心得方向,对用户启发更大的文章,做原创性内容奖励


投稿方式

发送邮件到

chenhongyuan@thejiangmen.com

或添加工作人员微信(chemn493)投稿,沟通投稿详情;还可以关注“将门创投”公众号,后台回复“投稿”二字,获得投稿说明。


>>> 添加小编微信!



关于我“
将门是一家以专注于发掘、加速及投资技术驱动型创业公司的新型创投机构,旗下涵盖将门创新服务将门技术社群以及将门创投基金

将门成立于2015年底,创始团队由微软创投在中国的创始团队原班人马构建而成,曾为微软优选和深度孵化了126家创新的技术型创业公司。

如果您是技术领域的初创企业,不仅想获得投资,还希望获得一系列持续性、有价值的投后服务,欢迎发送或者推荐项目给我“门”: 
bp@thejiangmen.com
    
点击右上角,把文章分享到朋友圈
点击“阅读原文”按钮,查看社区原文
⤵一键送你进入TechBeat快乐星球

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/154875
 
247 次点击