边缘云系统的灵活可变速率图像特征压缩——论文阅读

举报
DuHz 发表于 2025/09/27 12:34:07 2025/09/27
【摘要】 边缘云系统的灵活可变速率图像特征压缩Hossain M A F, Duan Z, Huang Y, et al. Flexible variable-rate image feature compression for edge-cloud systems[C]//2023 IEEE International Conference on Multimedia and Expo Works...

边缘云系统的灵活可变速率图像特征压缩

Hossain M A F, Duan Z, Huang Y, et al. Flexible variable-rate image feature compression for edge-cloud systems[C]//2023 IEEE International Conference on Multimedia and Expo Workshops (ICMEW). IEEE, 2023: 182-187.

1. 引言与研究动机

随着人工智能在物联网(IoT)、视觉监控和自动驾驶无人机等应用中的广泛部署,实时处理视觉数据的需求日益增长。虽然轻量级机器学习模型和移动GPU的发展使得边缘设备能够执行某些AI任务,但复杂任务仍需要强大的深度神经网络,这些网络超出了移动设备的计算和能源限制。

传统的解决方案是将数据从边缘设备传输到云端执行AI模型,形成边缘云系统。然而,现有的图像/视频编解码器主要针对人类视觉质量优化,并未针对机器视觉任务进行优化。本文聚焦于特征压缩,这种方法能够针对特定视觉任务改善压缩性能。

边缘云系统的资源受限特性带来了三方面的挑战:

  • 边缘与云之间的带宽限制要求低传输比特率
  • 低比特率会导致视觉任务性能下降
  • 边缘设备的计算资源差异需要可变复杂度的编码器

这产生了速率-精度-复杂度(Rate-Accuracy-Complexity, RAC)三方权衡问题。

2. 理论基础与预备知识

2.1 学习特征压缩框架

图1:系统架构概览

fig11.png

图1展示了本文方法的完整系统架构,分为训练阶段(a)和部署阶段(b)两部分:

  • 训练阶段(图1a):预训练的分类器被分割为前端和后端。在分割点插入可变速率压缩自动编码器,包含编码器和解码器。熵模型学习潜在特征的概率分布。系统端到端训练,其中自动编码器参数可训练(虚线框),而分类器参数固定(实线框)。

  • 部署阶段(图1b):边缘设备运行分类器前端和编码器,生成压缩的潜在特征。通过熵模型和rANS(range-based Asymmetric Numeral System)算法将特征编码为比特流。云端接收比特流,通过共享的熵模型解码,然后通过解码器恢复特征,最后通过分类器后端生成预测结果。

2.2 率失真优化目标

总体训练损失函数定义为:

L=lCE(y^,y)+λlR(z^)(1)\mathcal{L} = l_{CE}(\hat{y}, y) + \lambda l_R(\hat{z}) \tag{1}

其中:

  • y^\hat{y}是模型预测输出,yy是真实标签
  • lCE(y^,y)l_{CE}(\hat{y}, y)是交叉熵分类损失
  • zz是编码器输出的潜在特征,z^\hat{z}是其量化版本
  • lR(z^)l_R(\hat{z})是熵损失(数据率损失)
  • λ\lambda是拉格朗日乘数,控制率与精度的权衡

熵损失通过因子化熵模型估计:

lR(z^)=E[log2p(z^;ϕ)](2)l_R(\hat{z}) = \mathbb{E}[- \log_2 p(\hat{z}; \phi)] \tag{2}

其中ϕ\phi是熵模型参数,期望关于z^\hat{z}的边际分布计算。

优化目标是找到最优参数:

θ,ϕ=argminθ,ϕx,yDlCE(y^,y)+λlR(z^)(3)\theta^*, \phi^* = \arg\min_{\theta,\phi} \sum_{x,y \in \mathcal{D}} l_{CE}(\hat{y}, y) + \lambda l_R(\hat{z}) \tag{3}

编码和解码过程表示为:

z=gz(x;θenc)(4)z = g_z(x; \theta_{enc}) \tag{4}

x^=fx^(z^;θdec)(5)\hat{x} = f_{\hat{x}}(\hat{z}; \theta_{dec}) \tag{5}

3. 方法设计

3.1 网络分割策略

图2:分类器模型的Conv块划分框架

fig22.png

图2详细展示了如何将分类器网络系统地划分为Conv块:

  • 图2a - ResNet-50划分

    • 初始层:Conv(64, 7×7, s=2, p=3) + MaxPool(3×3, s=2)
    • Conv1-Conv7块:将ResNet-50的四个阶段(每个阶段包含不同数量的残差块)细分为7个Conv块
    • 不同颜色表示不同的Conv块分组,展示了灵活的前端-后端划分边界
  • 图2b - ConvNeXt-T划分

    • 初始层:Conv(96, 4×4, s=4, p=0)
    • Conv1-Conv6块:类似地将ConvNeXt-T架构划分为6个Conv块
    • 体现了该方法对不同架构的通用性

分割策略的核心原则:

  1. 将分类网络按相似残差层分组(瓶颈块)
  2. 每个瓶颈块进一步分为2-3个Conv块
  3. 通过调整前端Conv块数量实现RAC权衡

图3:通用模型配置Config.k

fig33.png

图3展示了配置框架,其中kk表示编码器中的Conv块数量:

  • 实线框:固定层(不可移动)
  • 虚线框:可在编码器/解码器间移动的层
  • 总共NN个Conv块(ResNet-50中N=7N=7

3.2 自动编码器架构设计

图4:可变速率压缩的网络架构

fig44.png

图4展示了实现可变速率压缩的两个关键组件:

图4a - 速率参数嵌入网络

λ (标量)Linear(1, hidden) → GeLU → Linear(hidden, embed_dim)λ̄ (向量)

该前馈网络将标量速率参数λ\lambda转换为高维嵌入向量λˉRembed_dim\bar{\lambda} \in \mathbb{R}^{embed\_dim},使网络能够学习λ\lambda与特征变换之间的复杂关系。

图4b - 自动编码器架构

编码器结构:

  • Conv(c/2, 5, 2):下采样卷积层
  • 3个ConvNextAdaLN(c/2, 3, 1)块:条件化特征变换
  • Conv(β, 3, 1):通道调整层

解码器结构(对称):

  • ConvT(c/2, 5, 2):上采样转置卷积
  • 3个ConvNextAdaLN(c/2, 3, 1)块
  • ConvT(c, 3, 1):通道恢复层

关键设计原则:保持β×w/2×h/2\beta \times w/2 \times h/2为常数,确保所有配置的瓶颈特征元素总数相同。

3.3 ConvNext自适应层归一化

图5:ConvNextAdaLN块架构

fig55.png

图5详细展示了条件卷积层的内部结构:

ConvNextAdaLN(x,λˉ)=γConv(x)+β\text{ConvNextAdaLN}(x, \bar{\lambda}) = \gamma \odot \text{Conv}(x) + \beta

其中γ\gammaβ\beta是从λˉ\bar{\lambda}通过MLP生成的调制参数:

  • 层归一化:标准化输入特征
  • 线性层:将嵌入映射到通道维度
  • Softplus/GeLU:非线性激活
  • 逐元素操作:条件化特征变换

这种设计允许网络根据速率参数动态调整特征变换。

4. 可变速率训练策略

4.1 动态速率采样

为实现可变速率,λ\lambda作为网络输入而非固定超参数。训练损失修改为:

L=λΛlCE(y^,y;λ)+λlR(z^;λ)(6)\mathcal{L} = \sum_{\lambda \in \Lambda} l_{CE}(\hat{y}, y; \lambda) + \lambda l_R(\hat{z}; \lambda) \tag{6}

优化目标变为:

θ,ϕ=argminθ,ϕx,yDλΛlCE(y^,y;λ)+λlR(z^;λ)(7)\theta^*, \phi^* = \arg\min_{\theta,\phi} \sum_{x,y \in \mathcal{D}} \sum_{\lambda \in \Lambda} l_{CE}(\hat{y}, y; \lambda) + \lambda l_R(\hat{z}; \lambda) \tag{7}

关键创新:使用对数均匀分布采样λ\lambda,而非线性均匀分布。这确保模型在高比特率和低比特率区域都得到均衡训练。

5. 实验评估

5.1 实验设置

  • 数据集:ImageNet (ILSVRC 2012),1.28M训练图像,50K验证图像
  • 图像尺寸:224×224
  • 训练:60个epoch,SGD优化器,初始学习率0.01,余弦退火
  • 基准模型:ResNet-50
  • 评价指标:Top-1准确率、比特率(bpp)、GPU编码延迟

5.2 模型配置间的RAC比较

图6:率-精度曲线对比

fig66.png

图6展示了三种配置在不同比特率下的Top-1准确率:

  • Config.1(浅层):最低延迟,但需要更高比特率
  • Config.2(中层):平衡的性能
  • Config.3(深层):最佳率-精度性能,但延迟最高

在[0.05, 0.4] bpp范围内,性能差异最为明显,体现了前端深度对压缩效率的影响。

表1:三种配置的性能对比

指标 Config.1 Config.2 Config.3
Delta-Acc. (%) 0.0 0.46 1.50
分类器延迟 (ms) 0.92 1.56 2.15
压缩时间 (ms) 2.17 2.25 2.25
总编码延迟 (ms) 4.42 5.20 5.79

压缩时间基本恒定,验证了设计原则的有效性。编码延迟增量(+0.78ms, +0.59ms)主要来自分类器延迟增量(+0.64ms, +0.59ms)。

5.3 与基线方法比较

图7:Delta-Accuracy vs 编码延迟

fig77.png

图7展示了本文方法与两个基线的综合比较:

  • Entropic Student:固定复杂度,单一工作点
  • Duan and Zhu 2022 (n0, n4, n8):通过改变残差块数量调整复杂度

关键结果:

  • Config.1优于n0 (+0.70%)和Entropic Student (+0.53%),且延迟最低
  • Config.2的Delta-accuracy达2.49%(相对于Entropic Student)
  • Config.3达到4.67%的Delta-accuracy,展示了深层特征的压缩优势

6. 结论

本文提出了首个用于边缘云系统的可变速率特征压缩方法,主要贡献包括:

  1. 灵活性:单一模型支持多种比特率,避免为每个工作点训练独立模型
  2. 通用性:设计框架适用于不同的CNN架构
  3. 性能优越:在RAC三方权衡中全面超越现有方法

局限性在于需要为每个编码器复杂度配置训练独立模型。未来工作将探索动态调整编码器深度的单一模型架构。


附录:数学推导

A. 变分自动编码器框架

从贝叶斯视角,压缩问题可表述为学习后验分布p(zx)p(z|x)。使用变分推断,引入近似分布q(zx;θ)q(z|x; \theta)

logp(x)=logp(xz)p(z)dz\log p(x) = \log \int p(x|z)p(z)dz

应用Jensen不等式:

logp(x)Eq(zx)[logp(xz)]DKL[q(zx)p(z)]\log p(x) \geq \mathbb{E}_{q(z|x)}[\log p(x|z)] - D_{KL}[q(z|x)||p(z)]

这给出证据下界(ELBO):

LELBO=Eq(zx)[logp(xz)]DKL[q(zx)p(z)]\mathcal{L}_{ELBO} = \mathbb{E}_{q(z|x)}[\log p(x|z)] - D_{KL}[q(z|x)||p(z)]

第一项是重建损失,第二项是率损失。

B. 量化与熵编码

量化操作定义为:

z^i=round(zi)=zi+0.5\hat{z}_i = \text{round}(z_i) = \lfloor z_i + 0.5 \rfloor

由于量化不可微,训练时使用加性均匀噪声近似:

z~i=zi+ηi,ηiU(0.5,0.5)\tilde{z}_i = z_i + \eta_i, \quad \eta_i \sim U(-0.5, 0.5)

熵编码的理论比特率:

R=Expx[ilog2p(z^i)]R = \mathbb{E}_{x \sim p_x}\left[\sum_i -\log_2 p(\hat{z}_i)\right]

使用学习的累积分布函数(CDF)FiF_i

p(z^i=k)=Fi(k+0.5)Fi(k0.5)p(\hat{z}_i = k) = F_i(k + 0.5) - F_i(k - 0.5)

C. 条件归一化的信息论解释

ConvNextAdaLN实现了条件信息瓶颈:

I(X;ZΛ)=λp(λ)I(X;Zλ)dλI(X; Z|\Lambda) = \int_{\lambda} p(\lambda) I(X; Z|\lambda) d\lambda

通过调制参数γ(λ)\gamma(\lambda)β(λ)\beta(\lambda),网络学习速率相关的最优信息保留策略:

z=γ(λ)f(x)+β(λ)z = \gamma(\lambda) \odot f(x) + \beta(\lambda)

这允许在不同速率下动态调整信息瓶颈的紧度。

D. 对数采样的理论依据

比特率作为λ\lambda的函数近似呈指数关系:

R(λ)aebλR(\lambda) \approx a \cdot e^{-b\lambda}

在对数空间均匀采样确保各比特率区间获得均等的训练样本:

λexp(U(logλmin,logλmax))\lambda \sim \exp(U(\log \lambda_{min}, \log \lambda_{max}))

这保证了模型在整个率失真曲线上的均衡性能。

【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。