第 8 章 语义编码:怎样让机器决定“什么值得传”
8.1 语义编码和普通压缩有什么不同
普通压缩的目标是:
$$ \mathbf{x}\to \mathbf{z}\to \hat{\mathbf{x}},\qquad \hat{\mathbf{x}}\approx \mathbf{x} $$语义编码的目标通常是:
$$ \mathbf{x}\to \mathbf{z}\to \mathbf{y}\to \hat{\mathbf{z}}\to \hat{V} $$其中 $\hat V$ 可以是语义类别、任务结果或重建出的语义内容。
换句话说,普通压缩关心“数据本身恢复得好不好”,语义编码关心“接收端是否获得了对当前任务足够的意义”。
8.2 语义编码器的两类做法
8.2.1 隐式语义编码
用神经网络把原始数据直接映射成特征:
$$ \mathbf{z}=f_\theta(\mathbf{x}) $$例如:
- 图像:CNN、ViT;
- 文本:Transformer 编码器;
- 语音:波形/频谱编码器;
- 多模态:CLIP 风格联合编码器。
优点是能自动学习复杂语义;缺点是解释性差、依赖数据、容易受分布偏移和信道变化影响。
8.2.2 显式语义编码
用可解释的结构化信息表示语义,例如:
- 实体、关系、属性;
- 知识图谱;
- 逻辑规则;
- 标签和语义树;
- 事件、动作、对象、数量、时间等信息。
例如一段视频可以表示成:
$$ \text{事件}(\text{“工人”}, \text{“搬运”}, \text{“箱子”}) $$优点是可解释、可验证、容易和知识库结合;缺点是表达能力可能不足,且需要人工定义语义结构。
实际系统往往把两者结合起来:神经网络负责提取,知识图谱负责约束和补全。
8.3 一个通用语义通信模型
我们可以把完整链路写成:
$$ \mathbf{z}=f_\theta(\mathbf{x};K_S) $$$$ \mathbf{s}=\mathcal{M}(\mathbf{z}) $$$$ \mathbf{y}=H\mathbf{s}+\mathbf{n} $$$$ \hat{\mathbf{z}}=g_\phi(\mathbf{y};K_R) $$$$ \hat{\mathbf{x}},\hat{V}=T_\psi(\hat{\mathbf{z}};K_R) $$其中:
- $K_S$:发送端知识/先验;
- $K_R$:接收端知识/先验;
- $f_\theta$:发送端语义编码器;
- $\mathcal{M}$:信道适配、调制或功率归一化;
- $H$:信道增益;
- $\mathbf{n}$:噪声;
- $g_\phi$:接收端语义解码器;
- $T_\psi$:重建或任务模型。
请特别注意:$K_S$ 和 $K_R$ 不一定相同。如果它们不同,即使物理信道完美,接收端仍然可能误解语义。
8.4 文本语义编码
对文本,最自然的方式是:
- 分词;
- 词嵌入或上下文编码;
- 用一个 Transformer 编码器得到语义向量;
- 传语义向量;
- 接收端用语言模型或解码器生成语义等价文本。
例如一个句子:
$$ \mathbf{x}=[x_1,x_2,\dots,x_L] $$经过编码器后得到:
$$ \mathbf{z}=f_\theta(\mathbf{x})\in\mathbb{R}^{d} $$接收端可以:
- 直接做分类;
- 生成翻译结果;
- 重建原句;
- 生成不同表达但意义相同的句子。
为什么 LLM 有帮助:
- 预训练语言模型已经学习大量语言知识,可以充当 $K_R$;
- 可以生成流畅内容;
- 可以通过 prompt 指定任务;
- 但可能产生事实错误,即“语义幻觉”。
8.5 图像语义编码
图像语义编码通常包括三个方向:
- 面向重建:传输语义特征,接收端尽量重建原图。
- 面向识别:传输图片中与目标类别相关的特征,接收端直接分类。
- 面向语义生成:传输“图像描述”或“关键语义标签”,接收端用生成模型重建场景。
例如面向图像分类时:
$$ \mathbf{z}=f_\theta(\mathbf{x}),\qquad \hat{y}=\mathrm{softmax}(\mathbf{W}\hat{\mathbf{z}}+\mathbf{b}) $$一个常见挑战:如果只保留“类别信息”,接收端就失去了空间细节;如果保留太多细节,语义压缩的收益就会降低。这个取舍就是“语义率失真”的实际体现。
8.6 视频、语音、点云等模态
- 视频:可以利用时间相关性,只传关键帧和运动/语义变化。
- 语音:可以通过语义单元或音素表示,接收端用语音合成重建。
- 点云:可以只传目标几何、位置、类别,而不是全部点。
- 模型/梯度:联邦学习中传模型更新,本质上也是一种语义/参数传输。
这些场景的共同点是:先判断哪些信息对任务重要,再决定传输的粒度。
8.7 信道适配与功率归一化
许多 Deep JSCC 系统在编码器输出后做功率归一化:
$$ \mathbf{s}=\sqrt{P}\frac{\mathbf{z}}{\|\mathbf{z}\|_2} $$这样保证:
$$ \mathbb{E}[\|\mathbf{s}\|^2]\le P $$然后经过信道:
$$ \mathbf{y}=\mathbf{s}+\mathbf{n} $$在瑞利衰落信道中:
$$ \mathbf{y}=h\mathbf{s}+\mathbf{n} $$其中 $h$ 是信道系数。
为什么这里需要“可微”:
- 训练时,噪声可以按已知分布采样,梯度可以通过 $+\mathbf{n}$ 回传。
- 如果使用真正的离散调制,需要特殊的梯度估计方法,例如 Gumbel-Softmax 或直通估计。
- 如果使用连续值传输,训练更直接,但需要接收端和硬件能处理模拟/准模拟信号。
8.8 离散语义编码与熵建模
如果要把语义特征变成比特,可以做:
- 量化:$$ \mathbf{z}_q=Q(\mathbf{z}) $$
- 用熵模型估计概率:$$ p_\psi(\mathbf{z}_q) $$
- 用算术编码压缩:$$ R\approx -\log p_\psi(\mathbf{z}_q) $$
这里的速率可以写成:
$$ R=-\log_2 p_\psi(\mathbf{z}_q) $$训练时常用率失真损失:
$$ \mathcal{L}=D+\lambda R $$其中 $D$ 是失真,$\lambda$ 控制压缩程度。
这与传统变分图像压缩类似,但语聊编码的关键区别是:失真函数可以换成任务或语义损失。
8.9 语义编码器的训练目标
一个典型目标函数可以写成:
$$ \mathcal{L} =\underbrace{\lambda_d\, d(\mathbf{x},\hat{\mathbf{x}})}_{\text{重建损失}} +\underbrace{\lambda_t\, \ell(V,\hat V)}_{\text{任务损失}} +\underbrace{\lambda_r\, R}_{\text{速率损失}} +\underbrace{\lambda_c\, \mathbb{E}[\text{信道误差}]}_{\text{信道鲁棒项}} +\underbrace{\lambda_\theta \|\theta\|^2}_{\text{正则化}} $$实际论文中并不一定是直接加法,常见方式包括:
- 多任务联合训练;
- 加权率失真;
- 对抗训练;
- 强化学习/元学习;
- 自监督预训练后再微调;
- 受约束优化,例如任务准确率不低于阈值。
8.10 语义特征 vs 传统信道输入
传统系统最终输入到信道的是“经过调制后的离散符号”。语义通信系统则有几种接口:
| 接口 | 优点 | 挑战 |
|---|---|---|
| 连续向量直接发送 | 端到端训练简单,信息粒度细 | 硬件/标准不成熟,对噪声容量建模复杂 |
| 量化后二进制传输 | 更容易与传统信道结合 | 需要设计量化器,可能损失语义精度 |
| 语义标签+传统压缩 | 可解释、易调试 | 表达能力有限 |
| 大模型生成+少量描述 | 语义压缩率极高 | 依赖先验,容易幻觉,需要质量验证 |
8.11 语义编码需要“和谁一起训练”
一个完整语义通信系统的训练对象包括:
- 发送端编码器;
- 信道变换(可微信道模型);
- 接收端解码器;
- 任务模型;
- 量化/熵模型;
- 知识库或共享模型。
如果只训练编码器而忽略信道或接收端,实际性能通常不好。所以“联合训练”是 Deep JSCC 最重要的工作方式之一。
8.12 语义编码是否有理论性能界限
简短回答:在“语义”尚未被统一定义的今天,缺乏一个公认的语义容量定理。 但我们可以借用经典信息论建立局部结论:
- 如果语义任务 $V$ 是 $X$ 的确定性函数,那么要无误差完成任务,所需的最小“语义信息”不会超过 $H(V)$。
- 如果要恢复 $X$,则至少需要率失真函数 $R(D)$ 对应的信息量。
- 物理信道容量 $C$ 仍然约束最终传输速率。
- 对于有限码长和具体任务,端到端学习也许能比“分开设计再后处理”获得更好的经验性能,但目前没有一个通用的最优性定理。
因此,语义通信研究的一个重要方向正是:怎样在保留工程可操作性的前提下,建立比香农信息论更细粒度的语义信息论。
第 8 章小结
- 语义编码可以把神经网络和知识库结合。
- 编码器输出可以是连续特征、量化比特或可解释语义标签。
- 系统必须同时考虑速率、失真、任务和信道。
- Deep JSCC 的核心是把编码器和解码器放到同一个可微网络中联合训练。
- 语义通信没有公认的容量定理,理论研究仍在进行。