<!-- title: 给声音打分：语音质量评价原理 -->

# 给声音打分：语音质量评价原理

## 参数都达标了，用户为什么还在骂

语音这一栏写到今天，账面上的机制已经齐了：编解码决定了「口音」怎么传，抖动缓冲负责慢半拍地攒包，回声消除负责闭嘴听你说，GBR专载负责划出那条不许别人抢的车道。一个语音专载从设计图纸到现网开通，每一环都有参数兜底。

可验收那天，甲方拿着话机听了一圈，说：「还是觉得有点卡。」

参数表上，时延预算没超、丢包预算没超、MOS类的KPI报表一片绿——但「觉得卡」这三个字，才是语音业务真正的验收标准。语音是少数**最终交付物是一种主观感受**的电信业务：网络传的不是文件，是两个人通话时的「顺不顺」。于是工程上必须回答一个看起来不像工程问题的问题——

**没有人一直坐在那里听电话，那这个「顺不顺」，怎么变成一个可以写进验收报告的数？**

这就是语音质量评价要解决的问题。它是一套把「听感」变成「分数」的测量学，也是所有QoS承诺的最终裁判：五毫秒的时延预算、万分之一的丢包率，落到人耳里到底值几分？这篇文章讲清楚它的三代方法论——人耳听、波形比、参数算，以及现网拨测里那些分数背后的陷阱。

## 第一代考官：人耳，以及它为什么必须退休

最早的办法最诚实：找人来听。

国际电信联盟在主观测评方法里定义了经典的**绝对等级评定**：让一批经过筛选的测试者听若干段语音样本，按五分制打分——5分优、4分良、3分中、2分差、1分劣——再把所有人的打分做统计平均，得到**平均意见分**。这个分数习惯上就叫做MOS。

听起来简单，但真做起来，规矩多得超乎想象：

- **样本要随机**。语料内容、说话人性别、语速、句子长短都要均衡，否则「念绕口令」和「聊天气」的分数没有可比性；
- **听的人要够多**。单个听众的口味噪声太大，必须靠人数把随机性平均掉；
- **环境要控住**。听筒还是免提、环境噪声多大声、音量旋钮拧到哪，全都要固定，否则测的是环境不是网络；
- **对照要有**。同一批人里混入已知质量的参考样本，用来校准这批人「手松手紧」。

这套方法测出来的数最接近真实用户感受，至今仍是标定其他一切方法的「金标准」。但它有三个致命的工程缺陷：**贵**（人时要花钱）、**慢**（组织一轮测试以周计）、**不可回归**（同一批人听第二遍，结论就不纯了——他们已经听过这个样本）。现网优化是个高频动作：改个参数要验证、扩个容量要验证，总不能每次都雇一屋子人来听电话。

于是问题变成了：**能不能造一台「机器考官」，让它算出接近人耳的分数？**

## 第二代考官：拿着两份波形找茬

机器打分的第一条思路很自然：把原始声音录下来当**参考**，把经过网络传到对端的声音当**退化样本**，逐点比对——差得越多，分数越低。

但直接逐点算误差是不行的。网络里的两份波形，哪怕听感完全一样，采样起点也可能差几十毫秒；一行编码变换，就会让波形「形变而神不变」。若只算逐点误差，一段清亮的通话可能因为几十毫秒的整体时移被误判成惨不忍睹。所以**信号对比法**的核心不是「比差异」，而是先做时间对齐，再用人耳的听感规律给差异加权：

1. **对齐**：在两份录音之间估计时延并补偿，把「搬了个位置」和「真的变了」分开；
2. **听感加权**：人耳对不同频率、不同响度的失真敏感度完全不同——被强信号掩盖的弱失真，人耳根本听不见，就不该扣分。模型里嵌入了心理声学的**掩蔽效应**，模拟「耳朵听得见什么、听不见什么」；
3. **失真聚合**：把加权后的残余差异映射到五分制上，输出机器MOS。

沿着这条思路，业界先后标准化了两代算法。早期版本在窄带电话和新一代编解码上表现失真——它没听过宽带语音，也没见过高效的压缩编码，对这类「没见过的新口音」会习惯性地低估。2011年推出的后继版本补齐了超宽带、修正了对新型编解码的系统性偏差，成为当前运营商拨测的主流算法。工程上只要记住一条分界线：**旧算法的分数和新算法的分数不可混排**，同一份录音用两代算法打分，能差出零点几分——跨厂商、跨年代的MOS对比，先核对用的是哪把尺子。

拨测系统把这条思路做成了产品：主叫端放一段标准语音样本并留底，被叫端把收到的声音录下来回传，算法拿两份录音对齐打分——这就是现网MOS拨测的基本原理。它终于让「回归测试」成为可能：改完参数，重放一遍，几分钟出分。

```mermaid
flowchart TD
    M1["给声音打分的三代方法"] --> A["第一代：人耳听"]
    M1 --> B["第二代：波形比对"]
    M1 --> C["第三代：参数算账"]
    A --> A1["主观MOS，五分制"]
    A --> A2["最真实，贵且慢"]
    B --> B1["对比参考与接收录音"]
    B --> B2["需要原始声音样本"]
    C --> C1["从网络参数直接推算"]
    C --> C2["不需要声音，适合规划推演"]
    A2 --> U["标定一切的金标准"]
    B2 --> U2["验收拨测的主力"]
    C2 --> U3["设计与预演的计算器"]
```

但这把尺子有个先天限制：**必须有两份声音**。它只适合「事后验收」——声音已经端到端传完了，才能比。可语音网络的很多问题发生在「还没建成」的时候：规划一个新专载，预估丢包从0.5%涨到2%听感掉几分；评估把某个网段的时延压缩50毫秒值不值一个改造项目。这时根本没有录音可比，只有一摞设计参数。

于是有了第三代考官——它干脆不看声音。

## 第三代考官：不碰波形，直接算账

参数化模型（业界通称E-model）的想法是：既然几十年的主观测试已经攒下了海量「网络参数↔听感」的对应数据，那就把这些经验提炼成一个**计算公式**——输入时延、丢包、编解码类型，直接算出预估听感分。它的账本长这样：

先给整体听感定义一个**质量因子R**，取值0到100，越高越好。工程简化形式：

$$R = 93.2 - I_d - I_{e\text{-}eff}$$

其中93.2是无损伤时的基准分，后面两项是扣分项：

- **$I_d$：时延类损伤**。包括单向传播时延、抖动缓冲引入的等待时延，以及时延放大后的回声困扰。人对「说话等太久」的厌恶是非线性的——单向时延在几十毫秒内几乎无感，逼近150毫秒后，两个人就开始互相「抢话」，扣分陡增；
- **$I_{e\text{-}eff}$：设备类损伤**。编码本身带来的失真（压缩越狠，基础扣分越多），叠加随机丢包的额外扣分：

$$I_{e\text{-}eff} = I_e + (95 - I_e)\,\frac{P_{pl}}{P_{pl}+B_{pl}}$$

$P_{pl}$是丢包率，$B_{pl}$是每种编解码各自的「抗丢包体质」系数——有的编码对丢包天生钝感，有的则一听就碎。这个分式刻画了一个重要直觉：**丢包的伤害是边际递减的**，从0到1%的恶化远比从5%到6%更伤听感。

算出R之后，再用一条标准映射曲线换算成MOS。窄带语音的经典映射是：

$$MOS = 1 + 0.035R + 7\times10^{-6}\,R\,(R-60)(100-R)$$

代入两个锚点感受一下：基准分93.2对应MOS约4.4（接近「良」的上沿）；R跌到50，MOS只有约2.6——通话还在「通」，但已经掉进了多数用户不可接受区。工程界据此形成了惯用分档：

| R因子区间 | 对应MOS约值 | 用户感受 | 工程处置 |
|---|---|---|---|
| 90以上 | 4.3以上 | 几乎无人抱怨 | 优质专载目标区 |
| 80～90 | 4.0左右 | 少数敏感用户有感知 | 正常商用水平 |
| 70～80 | 3.7左右 | 相当比例用户不满 | 需要优化 |
| 60～70 | 3.1左右 | 多数用户不满 | 限期整改 |
| 60以下 | 3.0以下 | 接近不可接受 | 视为故障 |

（宽带语音另有映射曲线，上限与走势都不同于窄带，不能拿窄带公式去算宽带专载。）

三代方法各司其职，谁也替代不了谁：

| 维度 | 主观MOS | 信号对比法 | 参数法E-model |
|---|---|---|---|
| 输入 | 一批真人听众 | 参考录音+接收录音 | 时延、丢包、编码类型 |
| 输出 | 五分制均分 | 机器MOS | R因子→预估MOS |
| 最能反映 | 真实感受 | 端到端的实际损伤 | 参数变化的影响趋势 |
| 天生盲区 | 贵、慢、不可回归 | 依赖对齐与掩蔽模型的精度 | 建模之外的损伤看不见 |
| 典型用途 | 标定金标准 | 拨测验收、回归测试 | 规划推演、预演「如果」 |

## 一场拨测的完整旅程

把三代方法拼起来，就是现网语音质量验收的完整链路：

```mermaid
sequenceDiagram
    participant A as 拨测主叫终端
    participant N as 被测网络
    participant B as 拨测被叫终端
    participant S as 评分服务器
    A->>N: 发起VoLTE呼叫
    N->>B: 按专载参数接续
    Note over A,B: 双方同步播放并录制标准语料
    A->>S: 回传发送端留底录音
    B->>S: 回传接收端录音
    S->>S: 对齐并计算MOS
    S->>S: 生成按路段分解的报表
```

这里有个容易被忽略的细节：**评分是分路段的**。MOS不合格时，报表要能回答「伤在哪一段」。整条链路被拆成空口上下行、核心网、承载网几个环节，每个环节都有各自的录音留底或探针——拿相邻两段的录音互相比对，损伤就锁定在「进这段之前还好、出这段之后变差」的区间里：

```mermaid
flowchart TD
    C1["主叫终端"] --> C2["空口上行"]
    C2 --> C3["核心网与承载网"]
    C3 --> C4["空口下行"]
    C4 --> C5["被叫终端"]
    C5 --> C6["录音回传与评分"]
    C6 --> C7{"MOS是否达标"}
    C7 -->|达标| C8["专载验收通过"]
    C7 -->|不达标| C9["分段比对锁定损伤段"]
```

这也是MOS与QoS参数真正握手的地方。语音专载的时延预算和丢包预算是**设计承诺**，MOS是**交付验收**：前者写明「允许坏多少」，后者回答「坏掉的那些，在耳朵里变现成几分」。参数超标而MOS达标，说明设计余量给多了；参数达标而MOS不达标，则几乎总意味着有损伤走了参数清单之外的路——典型的就是网元内部排队、回声路径或者抖动缓冲配大了，这些账都要记到E-model的 $I_d$ 上去查。

## 分数的陷阱：读报表之前先读这里

**陷阱一：把均值当全部。** MOS是统计平均，而投诉来自最差的尾部。一条均值4.2的测试路线里，可能藏着10%的样本只有2.8分——那正是电梯里、地库里的用户。看MOS报表要同时看分布，尾部的窟窿才是投诉工单的来源。

**陷阱二：跨尺子硬比分数。** 不同算法代际、不同厂商实现、窄带与宽带，打出的分数都不在一个坐标系里。两家供应商的拨测报告并排放，先确认用的是不是同一把尺子，再谈谁高谁低。

**陷阱三：忘了考官也会看人下菜。** 机器模型按标准语料标定，语速、内容、说话风格都会影响得分。拿慢语速语料测出来的分数，和真实快节奏对话的体验之间有系统性偏差——所以拨测语料必须固定，历史数据才有可比性。

**陷阱四：迷信单一模型。** 信号对比法看不见对齐模型之外的损伤，参数法看不见建模清单之外的损伤。分数好的结论要用第二把尺子交叉验证一次，尤其是大版本变更后的验收。

## 小结

语音质量评价的三代方法论，本质上是一个不断「去人化」的过程：先用机器模拟人耳（信号对比法），再用公式代替耳朵（参数法），但每一次简化都以主观测试为锚——金标准始终是那一屋子人。工程师要做的，是清楚手里这把尺子量的是什么、量不了什么：验收时用信号对比法听「真话」，规划时用参数法算「如果」，而所有分数的解释权，最终都在那个五分制的人耳坐标系里。

回到开头那句「还是觉得有点卡」——它不再是无理取闹，而是这套测量学存在的理由：**网络的所有承诺，最终都要在这三个字面前结账。**

## 常见问题

**Q: MOS 4.0 就一定代表用户满意吗？**
A: 不一定。4.0是「平均良」，但满意度取决于分布和场景。均值4.0、尾部2.8的专载，投诉率可能远高于均值3.9但方差很小的专载。另外宽带语音的用户预期更高，同样的4.0分，VoLTE用户感受到的「好」与2G时代不同。分数要和分布、业务场景一起读。

**Q: PESQ和POLQA到底是什么关系？**
A: 是前后两代标准化算法。旧版对新式编解码和宽带语音系统性偏悲观（或偏乐观，视场景），新一代修正了这些偏差并支持超宽带。工程要点只有一个：两代分数不可直接对比，历史数据的口径变更必须在报表里标注。

**Q: 时延和丢包，哪个对听感杀伤更大？**
A: 看量级。丢包几乎从第一个百分点就开始扣分，是「当场就碎」的损伤；时延则有个几十毫秒的宽容区，越过后才陡增。但时延的账更隐蔽：它还会通过放大回声困扰、逼大抖动缓冲间接扣分。排查时先看丢包，再顺着 $I_d$ 查时延链。

**Q: 为什么不干脆用深度学习端到端打分？**
A: 研究上确实有大量尝试，商用拨测里也有辅助手段，但主流验收仍以标准化、可解释的模型为准——分数要能写进合同、能在争议时被复算，模型就必须是公开、稳定、有版本号的。这不是技术保守，是测量学的基本纪律。

## 参考来源

1. [Mean opinion score — Wikipedia](https://en.wikipedia.org/wiki/Mean_opinion_score) — 主观MOS的定义、五分制锚点与测试方法族（ACR/DCR）
2. [Perceptual Evaluation of Speech Quality — Wikipedia](https://en.wikipedia.org/wiki/Perceptual_Evaluation_of_Speech_Quality) — 信号对比法原理、对齐与心理声学加权的通识性介绍
3. [ITU-T P.863 建议书](https://www.itu.int/rec/T-REC-P.863) — 当前主流客观语音质量算法的官方出处
4. [E-model — Wikipedia](https://en.wikipedia.org/wiki/E-model) — R因子模型、损伤因子分解与丢包体质系数的通识性介绍
5. [ITU-T G.107 建议书](https://www.itu.int/rec/T-REC-G.107) — E-model计算公式与R到MOS映射曲线的官方出处

---
> 本文由「51学通信」技术团队出品。51学通信由通信行业18年老兵**爱卫生**（微信ID: gprshome201101）维护，聚焦5G/6G核心网、3GPP标准解读、通信前沿技术深度分析。
> 出版作品有《5G核心网原理与实践》《IMS原理与实践》等4本通信专业书籍。知识星球「51学通信」提供深度技术答疑和行业洞察。

> [!tip] 51学通信知识星球
> **星主：爱卫生**（微信：gprshome201101）——公众号「51学通信」创办者，19 年通信行业运维与讲师经验，著有《GPRS网络信令实例详解》《EPC原理与实践》《5G核心网原理与实践》三本纸质书（各大电商平台有售）。
> **星球定位**：深耕 5G 核心网、IMS、NFV/AI、云原生等 ICT 领域，主打运维岗位与信令分析。
> **当前规模**：5200 篇主题 / 990 个回答，198 元/年。
> **加入福利**：加入星球后请加爱卫生微信，拉您进知识星球年度陪伴与答疑群——不限量回复您的各种问题，另有群内分享。
> **AI 加持**：51学通信知识星球已作为 skill 接入 WorkBuddy，使用 deepseek-4-flash 在海量星球帖子中精准找贴、找视频、找 FAQ 和案例，做总结、找文档和 PPT 等场景全覆盖。

![51学通信知识星球海报-扫码加入](https://wiki.500nian.com/images/zhixingqiu_qrcode.png)
