S
语义通信入门
Semantic Communication
📘 入门教材

第 10 章 怎样评价“语义传对了”:指标设计

10.1 为什么评价比想出模型更难

很多语义通信论文会说:“我们用语义通信降低了多少比特。”但如果没有回答“降低比特后,语义是否正确”,这个结论就没有意义。

评价语义通信必须回答至少三个问题:

  1. 传过去的数据像不像?(数据级)
  2. 传过去的意义对不对?(语义级)
  3. 接收方任务有没有成功?(任务级)

三者可能一致,也可能不一致。

10.2 数据级指标

10.2.1 均方误差

$$ \mathrm{MSE}=\frac{1}{N}\sum_{i=1}^{N}\|x_i-\hat{x}_i\|^2 $$

它直接衡量数值差异,但对图像感知质量不敏感。例如,把图片整体平移几个像素,MSE 可能很大,但人看起来仍然清楚。

10.2.2 峰值信噪比

$$ \mathrm{PSNR}=10\log_{10}\frac{\mathrm{MAX}^2}{\mathrm{MSE}} $$

其中 $\mathrm{MAX}$ 是像素最大可能值,例如 8 比特图像为 255。PSNR 越大,通常表示数值误差越小。

缺点:对纹理、结构、感知质量不敏感。

10.2.3 结构相似性

$$ \mathrm{SSIM}(x,\hat{x}) = \frac{(2\mu_x\mu_{\hat{x}}+c_1)(2\sigma_{x\hat{x}}+c_2)} {(\mu_x^2+\mu_{\hat{x}}^2+c_1)(\sigma_x^2+\sigma_{\hat{x}}^2+c_2)} $$

其中:

  • $\mu_x,\mu_{\hat{x}}$ 是局部均值;
  • $\sigma_x^2,\sigma_{\hat{x}}^2$ 是局部方差;
  • $\sigma_{x\hat{x}}$ 是局部协方差;
  • $c_1,c_2$ 是防止分母为 0 的常数。

SSIM 比 MSE 更接近人类视觉感知,但它仍然只是“局部结构相似性”,不代表语义正确。

10.2.4 感知与生成指标

  • LPIPS:用预训练网络提取特征,比较感知距离。
  • FID:衡量生成图像分布与真实图像分布的距离。
  • CLIPScore:用视觉-语言模型计算图像与文本之间的语义匹配度。

这些指标对“像素不匹配”的容忍度较高,更适合评估生成式系统,但仍不是“绝对语义真值”。

10.3 语义级指标:向量相似度

如果语义被表示为向量,最常用的是余弦相似度:

$$ \mathrm{sim}(\mathbf{u},\mathbf{v}) =\frac{\langle \mathbf{u},\mathbf{v}\rangle}{\|\mathbf{u}\|_2\|\mathbf{v}\|_2} $$

或语义距离:

$$ d_s(\mathbf{u},\mathbf{v})=1-\mathrm{sim}(\mathbf{u},\mathbf{v}) $$

也可以用:

$$ d_s(\mathbf{u},\mathbf{v})=\|\mathbf{u}-\mathbf{v}\|_2 $$

问题:向量相似度只在“训练该向量时使用的语义空间”中有效。两个不同模型、不同训练数据得到的向量,不能直接比较。

10.4 任务级指标

任务级指标直接衡量“最终结果是否成功”:

  • 分类准确率;
  • 目标检测 mAP;
  • 图像检索 Recall@K;
  • 语义分割 mIoU;
  • 语音识别 WER;
  • 机器翻译 BLEU;
  • 问答 F1;
  • 机器人控制成功率;
  • 用户主观评分。

这类指标最接近真实价值,但也最容易变成“只针对某个任务调优”,缺少通用性。

10.5 文本语义指标

10.5.1 BLEU

BLEU 比较候选文本和参考文本的 n-gram 重合程度:

$$ \mathrm{BLEU} = \mathrm{BP}\cdot \exp\left(\sum_{n=1}^{N}w_n\log p_n\right) $$

其中 $p_n$ 是 n-gram 精确匹配比例,$\mathrm{BP}$ 是简短惩罚:

$$ \mathrm{BP}= \begin{cases} 1,& c>r\\ e^{1-r/c},& c\le r \end{cases} $$

其中 $c$ 是候选长度,$r$ 是参考长度。

缺点:同义改写可能被惩罚,因为字面 n-gram 不匹配。

10.5.2 WER

$$ \mathrm{WER}=\frac{S+D+I}{N} $$

其中:

  • $S$:替换错误数;
  • $D$:删除错误数;
  • $I$:插入错误数;
  • $N$:参考词数。

WER 常用于语音识别,但同样只衡量“字面”差异。

10.5.3 语义文本相似度

现代方法包括:

  • BERTScore:用语义嵌入比较候选与参考;
  • BLEURT:在预训练语言模型基础上微调,判断语义相似;
  • METEOR:结合同义词、词干和词组匹配;
  • 人工语义评分;
  • 大模型“语义一致性”评估。

这些方法比 n-gram 更接近意义,但通常依赖预训练模型,且不同模型结果可能不同。

10.6 图像-文本语义指标

CLIPScore 是一种常见的图像-文本语义相似度:

$$ s(\mathbf{v}_{\text{image}},\mathbf{v}_{\text{text}}) =\frac{\langle \mathbf{v}_{\text{image}},\mathbf{v}_{\text{text}}\rangle}{\|\mathbf{v}_{\text{image}}\|\|\mathbf{v}_{\text{text}}\|} $$

它可以衡量“图像是否与文本描述语义一致”。例如:

  • “a dog in a park” 与狗的图片,相似度高;
  • “a dog in a park” 与猫的图片,相似度低。

注意:这种分数是模型学出来的,不是外部真值。如果任务真值本身有歧义,模型分数也可能误导人。

10.7 语义失真应当怎样构造

一个合理的语义失真 $d_s(S,\hat S)$ 应当满足:

  1. 对真实语义转变敏感;
  2. 对不相关的变化尽量不敏感;
  3. 与任务一致;
  4. 可计算、可比较;
  5. 对噪声和异常值鲁棒。

常见的构造方式:

  • 如果任务是分类,$d_s=\mathbb{1}[\hat y\ne y]$;
  • 如果任务是指令执行,$d_s=\mathbb{1}[\text{task failed}]$;
  • 如果任务是翻译,$d_s=1-\mathrm{BERTScore}$;
  • 如果任务是图像描述,$d_s=1-\mathrm{CLIPScore}$;
  • 如果任务是语义检索,$d_s=1-\mathrm{Recall@K}$;
  • 如果任务必须重建,$d_s=1-\mathrm{SSIM}$ 或 LPIPS。

强列建议:在论文中明确写出“本次实验采用的语义失真/语义指标”,并说明为什么不使用其他指标。不要默认所有读者和评审与你共用同一个“语义”定义。

10.8 指标体系的分层

你可以把评价体系分成四层:

层级 示例 优点 问题
信号/比特层 BER、SER 客观、可复现 不能代表语义
数据/感知层 PSNR、SSIM、LPIPS 可比较图像/语音质量 对语义不敏感
语义/表示层 余弦相似度、BERTScore、CLIPScore 更接近意义 依赖模型,缺少标准
任务/效果层 Accuracy、mAP、WER、成功率 直接反映用户价值 只适用于特定任务

好的语义通信论文通常会同时报告多层指标,并讨论它们之间的差异。

10.9 怎样避免“指标骗局”

  • 不要只挑对自己有利的指标
  • 明确信噪比、码率、数据集的公平比较
  • 报告误差棒和多次运行
  • 报告传统方案和 Deep JSCC 的双向对比
  • 不要用“语义通信”这个词替代实验性能
  • 考虑用户主观评价,特别是生成式系统
  • 检查是否产生了不利于隐私、安全或可控性的副作用

第 10 章小结

  • 语义通信的评价至少需要“数据级、语义级、任务级”三层。
  • 余弦相似度、CLIPScore、BERTScore 是常用语义相似度工具,但都不是统一标准。
  • 报告结果时要说明失真定义、任务定义、信道条件和训练设置。
  • 没有一种指标适合所有语义任务,组合使用并讨论局限是更诚实的研究方式。