📄 词从哪里开始到哪里结束:电话语音上的强制对齐
标签:#强制对齐 | #LoRA | #多语言 | #数据增强
评分:7.3/10 | 创新 1.5/2 | 技术严谨 1.2/1.5 | 实验充分 1.3/1.5 | 清晰度 0.8/1 | 影响力 1/1.5 | 开源 0/1.5 | 可复现 0.3/0.5 | 工程/实践 1.2/1.5
👥 作者与机构
- Husein Zolkepli:Scicom (MSC) Berhad, Malaysia
📌 核心摘要
强制对齐的输入是一段语音和已知文本,输出是每个词的开始与结束时间,难点在于电话信道的窄带与压缩会移动时间基准,而连读与静音让词界在信号上并不清晰。论文先实测各编解码器延迟并从标注中去除,再以LoRA微调Whisper预测每词起止时间戳,时间戳槽位放在被计时的词之后,训练中混入电话信道退化与文本噪声。与已有方法的关键差异是抛开沿CTC强制路径读边缘的做法,改为由解码器直接输出时间分布,避免词内多数帧归空白符导致的词首系统性偏晚。在干净TIMIT测试集上以平均绝对边界误差为指标计,时间戳模型为10.5 ms,低于MFA的19.1 ms。用FA-Bench协议与代码在TIMIT核心测试集上以平均绝对边界误差为指标计,时间戳模型为11.6 ms,低于已发表最优Olign的18.2 ms。在真实固话录制的Switchboard对话上以平均绝对边界误差为指标计,发布模型为16.0 ms,低于MFA的36.5 ms。结论适用于读句、访谈对话与电话语音,已验证韩语、荷兰语与VoxAngeles多语言上的迁移,但长录音与真实呼叫中心链路只做了初步检验。原文未披露训练、推理或部署成本。
🔗 开源与复现资源
模型相关资源:https://huggingface.co/Scicom-intl/Where-Words-Begin-and-End-Whisper-Large-V3 — 暂时无法访问
模型相关资源:https://huggingface.co/Scicom-intl/Where-Words-Begin-and-End-Whisper-Large-V3-Turbo — 暂时无法访问
模型相关资源:https://huggingface.co/collections/Scicom-intl/force-alignment — 暂时无法访问
第三方资源:https://huggingface.co/Scicom-intl/CallEnhancer — 暂时无法访问
可达状态仅表示本次链接检查结果,不代表许可证、本文权重或运行复现已验证。
🧭 深度解读
强制对齐要解决什么问题
强制对齐的输入是一段录音加上这段录音的已知文本,输出是文本中每个词的开始时刻和结束时刻。下游很多环节直接拿这些时刻切分语料、做字幕、学轮次结束、做发音评分和数据过滤。如果词边界系统性偏短或凭空插入停顿,后面的切分和停顿统计都会被带偏。
论文的起点是作者自己的马来西亚语料:用 MMS-300M 加 CTC 解码的默认流程对齐后,几乎每个词边界都有缝隙,近半数缝隙超过 0.1 秒,而用语音活动检测核查,这些缝隙中点多数落在语音里。这说明问题不是个别文件,而是解码器把词读短了。
强制对齐器 × 词边界: 强制对齐器指输入一段录音和已知文本,输出每个词在音频中开始和结束时刻的工具;词边界就是这些起止时刻。论文只评价起止时刻与人工标注差多少,不评价识别词串本身,文本是给定的,时间才是要学的。
要理解后文实验,需要先固定评价方式。论文对每个词的开始和结束分别与人工边界求差,平均绝对误差越小越好,20 毫秒内占比越高越好。人工之间本身也有分歧,干净语音上约 80% 到 90% 边界落在 20 到 25 毫秒内可视为接近人工一致,超过这个水平,基准测的更多是标注习惯。
已有三条路线各管什么
第一条是隐马尔可夫模型路线,以蒙特利尔强制对齐器为代表。它依赖发音词典和单语声学模型,每帧必属某个音素状态,边界落在 10 毫秒网格上。这类方法在紧容限下常最准,但代价是每个语言都要词典和模型,论文指出其模型列表没有马来语和印尼语。
隐马尔可夫模型对齐器 × 发音词典: 隐马尔可夫模型对齐器指把每帧归属到某个音素状态、按词典展开再做维特比解码的一类对齐器;发音词典是词到音素序列的映射表。蒙特利尔强制对齐器属于此类,它每帧必有归属且按 10 毫秒网格输出,所以边界紧,但每种语言都要词典和声学模型。
第二条是 CTC 路线,把文本铺到逐帧字符后验上,用维特比强制路径读出首尾字符帧当词边界。第三条是注意力路线,如 Whisper 的交叉注意力加动态时间规整,以及直接学边界的帧分类器和近年用语言模型填时间槽的方法。论文的综述还指出,电话语音上几乎没有用人标边界评测过任何对齐器,FA-Bench 加的是噪声混响而非 8 千赫兹电话信道,这正是本文要补的测量。
为什么 CTC 读出的边界会偏
CTC 训练只要求字符按顺序出现,不要求出现在声音所在处。模型学会每字符只在一两帧上发放尖峰,其余帧都给空白标记。强制对齐时,词的开始取自首个字符帧,结束取自末个字符帧,天然继承了尖峰的位置。
论文在干净 TIMIT 测试集全部 11025 个词上统计,人工词内中位 67% 的帧在强制路径上是空白,首字符帧中位比人工开始晚 33 毫秒,尾字符帧结束中位比人工结束早 26 毫秒。换信道也一样,G.711 下首帧仍晚 33 毫秒左右,GSM 下晚 32 毫秒,说明不是信道造成的,是模型从未学过词在哪里。
全文方法总览:先量后训
论文分两大块。先是预备测量:把电话信道的时间基准对齐,再以默认配置跑 9 种对齐器配置,对照人工词边界,看干净朗读、会话和真实电话线上的误差与偏差。然后是训练替代方案:只用人放的边界训练,比较 CTC 头和 Whisper 解码器预测时间戳两族,再做增强、槽位顺序、分辨率等消融,最后给出发布配方。
训练数据共 47 小时、420433 词、87 个语言,测试留出说话人、录音和 10 个整语言。判胜标准很严:要在每个有对照的英语集干净和各编码器下,同时在均值和 20 毫秒占比上超过蒙特利尔强制对齐器,还要在韩语和荷兰语上超过其自带韩荷模型。
一张图看空白尖峰如何吃掉词长
下面这张单句图是理解 CTC 偏差最直接的例子。横轴是时间,纵轴是后验概率,灰线是空白后验,蓝色竖线是强制路径分给字符的帧,顶部深色是人工词段,橙色是从尖峰读出的词段。读图时先看灰线几乎全程贴近 1,再看橙色段比深色段短,中间本连续的语音处出现空隙。
看图路径: 1. 先看横轴时间与纵轴后验,确认灰线空白后验几乎贴顶;2. 再对比顶部深色人工词段与橙色从尖峰读出的词段长短;3. 注意蓝色字符帧是稀疏竖线,词内大片空白
论文图 1。原论文 Figure 1::“MMS-300M emissions over one clean TIMIT test sentence (DR1_AKS0_SI2203).”。
这张图说明的机制是:空白在词内也占主导,字符帧只是稀疏尖峰。从首尖峰到尾尖峰的长度必然短于人工词长,解码器再怎么补空白或加通配符,只能在边缘搬移误差,不能让模型重新知道声音的起止。论文后文 4 种 MMS 解码器读同一份后验却误差不同,正是因为它们处理空白和边缘的方式不同。
首尾帧偏移的整体分布
单句可能是偶然,下一张直方图看全部测试词。横轴是相对人工边界的偏移,10 毫秒分箱,蓝色是首尖峰减人工开始,红色是尾尖峰结束减人工结束。读图时注意蓝色中心偏右约几十毫秒,红色中心偏左,两个分布都有宽度但方向明确。
看图路径: 1. 看横轴偏移量,正值表示晚于人工,负值表示早于人工;2. 比较蓝色首字符帧分布与红色尾字符帧分布的中心位置;3. 注意分布宽度,说明这是系统性偏移而非个别噪声
论文图 2。原论文 Figure 2::“Where a word’s first and last character frame fall relative to its human start and end, MMS-300M forced paths on clean TIMIT test, 10 ms bins.”。
CTC × 空白标记: CTC 指每帧输出字符或空白标记的声学模型族,空白标记是表示该帧不属于任何字符的类别;强制路径是把已知字符序列铺到帧后验上的一条通过路径。论文发现该路径上词内多数帧都走空白标记,字符只剩尖峰,读尖峰定边界就会系统偏晚偏早。
这个分布解释了后文偏差图:用 torchaudio 流程时词开始中位晚 40 毫秒、结束早 18 毫秒,WhisperX 开始晚 60 毫秒。偏差的好处是事后可校正,但论文强调不应原样照搬 CTC 路径,因为偏移来自尖峰定时,且与塞音闭塞段等标注惯例叠加,调解码技巧去不掉。
只用人标边界如何训练两族模型
训练只用人放或人工校正过的边界,来源包括 TIMIT 训练说话人、Buckeye 部分说话人、Switchboard 第二阶段电话标注、首尔韩语语料、荷兰语 IFA 语料和 95 语言的 VoxAngeles 孤立词。作者用边界是否落在 10 毫秒网格上来验自动痕迹,落在网格上比例高达 89% 的 L2-ARCTIC 子集被排除,不让机器对齐进入训练。
两族共用思路但头部不同。CTC 族在编码器上加字符后验加维特比,另有按人工词边做的帧目标希望边缘不再跟尖峰。时间戳族从 Whisper-Scicom 出发,解码器读整句文本,每个词留两个槽位,槽位状态与 1501 个时间标记的嵌入打分,一次前向给出所有边界分布。训练把人工时刻按比例分给相邻两个标记,解码在最可能标记附近两格内求期望,再做单调修正。默认用 LoRA 微调,电话增强和转录噪声是后文重点。
训练看到的是一段段至多 30 秒的窗口。原语料中按停顿切出的短段较碎,作者把同一说话人相邻的窗口拼接到 30 秒以内一起训练,拼出的长窗约占训练三分之一,贴近要服务的通话切分。全部训练约 47 小时、420433 个词、87 种语言,测试用的说话人、录音和 10 个 VoxAngeles 整语言都留在训练之外,用来量跨说话人和跨语言的迁移。试点里的英语测试集也不进训练,避免记住标注习惯。
判定结果的标准定在 MFA 的英语 ARPA 模型之上。候选要在每个英语测试集的干净和电话条件下,同时在平均误差和 20 毫秒内占比两项超过 MFA,还要在首尔语料和 IFA 语料上超过 MFA 自己的韩语和荷兰语模型。干净和电话条件按同等权重汇总,20 毫秒内占比优先,平均误差用于打破持平,干净与电话之间掉点不能超过 2 分。训练中一半片段会走电话条件并做去延迟,保证标签仍对齐,另有转录噪声训练来稳住文本有错时的定位。
执行过程按固定步数走,每步取 16 个片段,共走 2000 步,约合全部 49170 个单窗和拼接样本的 0.65 轮,其中六成取拼到 30 秒以内的长窗。默认适配器取秩 32,作用在编码器和解码器的注意力和前馈投影上,学习率为 2×10−4,可训练量约 58,000,000 参数。CTC 分支先冻结编码器 200 步让新头部预热,时间戳分支按两热目标训练,解码器一次读完文本同时给出各槽位时刻,不把时间标记回填。输入中不放时间标记,输出层与 1501 个时间标记的嵌入共用,十分之一的片段训练时不给语言标记,以适应缺语言标记的输入。
Whisper 时间戳标记 × 槽位: Whisper 时间戳标记指 Whisper 词表中从 0 秒到 30 秒每 20 毫秒一个的时间标记;槽位是解码器输入序列中为每个词预留的两个待填位置,分别填开始和结束时刻。模型一次前向对所有槽位输出时间分布,槽位放在词后就能先看到词本身再定时间。
电话条件如何保住时间基准
编码器若带来固定延迟而不扣除,对齐器会背锅。论文每种电话条件都从同一干净录音出发:零相位 300 到 3400 赫兹限带、线性相位重采样到 8 千赫兹、过真实编码器二进制、与限带参考互相关测延迟并扣除、再重采样回 16 千赫兹。多数编码器解码后无残留延迟,8 千赫兹 MP3 则恒定晚 138.125 毫秒,每个文件都一样,补偿后残差为零。
平均绝对误差 × 20 毫秒内占比: 平均绝对误差指所有词开始和结束时刻预测与人工时刻差的绝对值的平均,单位毫秒,越小越好;20 毫秒内占比指误差不超过 20 毫秒的边界所占比例,越高越好。论文同时看两者,因为均值易被少数大错拉高,占比更能反映多数边界是否可用。
测试集是 TIMIT 朗读、Buckeye 会话和 Switchboard 真实固话会话,TIMIT 跑干净加 6 种电话条件,Buckeye 跑干净加部分编码器,Switchboard 按原样真实线路评价。每个条件只在所有对齐器都成功的文件上打分,指标看开始结束合并的均值、20、50、100 毫秒内占比和起止中位有符号偏差。
干净语音上谁最准,解码器影响多大
下表比较干净 TIMIT 上各对齐器默认配置的总体误差与电话退化,指标方向是均值越小越好。表前先明确问题:在同一人工边界和同一文件集合上,默认流程的精度排序如何,电话限带和编码器各让谁掉多少。
| aligner | clean | 8 kHz | G.711 | G.726 | GSM |
|---|---|---|---|---|---|
| MFA, arpa | 19.1 | 25.3 | 25.3 | 26.8 | 25.8 |
| MFA, mfa | 21.3 | 28.1 | 27.9 | 37.2 | 29.5 |
| MMS, CFA edges | 29.2 | 29.8 | 29.8 | 29.8 | 30.9 |
| Qwen3-FA | 30.1 | 52.7 | 50.1 | 54.4 | 52.6 |
| MMS, STT-API | 35.6 | 36.5 | 36.4 | 36.6 | 37.2 |
结果是蒙特利尔强制对齐器在干净 TIMIT 上均值 19.1 毫秒、68.2% 边界在 20 毫秒内,最准。同一 MMS-300M 模型换 4 种解码,误差从 29.2 到 46.8 毫秒,说明解码器与模型同等重要。默认每词前加星号通配的最差,末词中位比人工晚 135 毫秒。Qwen3 强制对齐器在 80 毫秒网格上受限,Whisper 注意力经 stable-ts 最不准。读累积曲线会看到同样结论:小误差段蒙特利尔强制对齐器领先最多。
看图路径: 1. 看横轴绝对误差从 0 到 300 毫秒,纵轴是累积占比;2. 在 20 毫秒和 50 毫秒竖线处比较各曲线的先后;3. 注意最上方两条曲线在小误差段领先最多
论文图 4。原论文 Figure 4::“Share of TIMIT word boundaries within a given error, clean test set, every aligner at its defaults.”。
这张累积图横轴是绝对误差,纵轴是落入该误差内的边界占比。在 20 毫秒和 50 毫秒竖线处,最靠上的两条是蒙特利尔强制对齐器的两种英语模型,其次是星号只放边缘的 MMS 解码和 Qwen3,WhisperX 和 stable-ts 明显靠下。它只说明干净朗读默认配置下的排序,不能推广到电话或会话。
电话和真实线路让排名发生什么变化
下表看 3 套人标集上的均值与真实电话线表现,最后一列是 Switchboard 上 20 毫秒内占比,越高越好。表前问题是:模拟电话信道和真实固话会话是否改变排序,谁对带宽最敏感。
| aligner | TIMIT | +G.711 | Buckeye | +G.711 | SWB |
|---|---|---|---|---|---|
| MFA, arpa | 19.1 | 25.3 | 21.0 | 26.6 | 36.5 |
| MFA, mfa | 21.3 | 27.9 | 24.4 | 29.4 | 40.5 |
| MMS, CFA edges | 29.2 | 29.8 | 37.0 | 44.0 | 56.4 |
| Qwen3-FA | 30.1 | 50.1 | 30.9 | 42.2 | 42.3 |
| MMS, STT-API | 35.6 | 36.4 | 40.3 | 42.4 | 46.9 |
电话下出现两组。精准组怕限带:仅限带到 8 千赫兹就让 Qwen3 均值到 52.7 毫秒,比全部 MMS 解码都差,MP3 下到 64.8 毫秒;蒙特利尔强制对齐器也从 19.1 到 25.3 毫秒左右。CTC 组几乎不动,torchaudio 流程在 G.711 下只变 0.4 毫秒。真实线路上蒙特利尔强制对齐器仍有 64.2% 在 20 毫秒内,但均值涨到 36.5 毫秒,说明多数仍准、少数错得很大。
看图路径: 1. 看横轴从干净到限带再到各编码器的条件顺序;2. 看纵轴 50 毫秒内占比,越高表示电话下保持越好;3. 找出断崖式下跌的那条曲线与其他平稳曲线的差别
论文图 6。原论文 Figure 6::“Share of TIMIT word boundaries within 50 ms in each telephone condition of Table 3.”。
这张折线图纵轴是 50 毫秒内占比,横轴是电话条件。平稳的线是 CTC 和蒙特利尔强制对齐器,断崖下跌的是 Qwen3 在限带处和 MP3 处,以及一种蒙特利尔模型在 G.726 处。它支持的判断是:带宽损失是主要代价,编码器附加代价小,但只在模拟信道上成立,真实网络的丢包和回声等不在此图内。
时间戳族为何能超过 CTC 和蒙特利尔对齐器
下表是训练数据的构成与网格检验,表前问题是:模型到底学了什么样的人标,训练与测试是否隔离。表格列出语料、语音类型、网格比例、训练时长和词数,最后一行是总量。
| corpus | lang. | train h | words | test h | licence |
|---|---|---|---|---|---|
| TIMIT, train | 1 | 2.8 | 28,578 | – | LDC |
| Buckeye, s05–s20 | 1 | 8.7 | 119,438 | 1.4 | NC |
| Switchboard, WS97 | 1 | 2.1 | 26,231 | – | LDC |
| Seoul Corpus | 1 | 27.1 | 197,712 | 3.1 | CC BY-NC |
| IFA | 1 | 5.2 | 44,616 | 0.5 | GPL-3.0 |
训练后时间戳模型在干净 TIMIT 上约 10.5 毫秒、89.1% 在 20 毫秒内,几乎把蒙特利尔强制对齐器的 19.1 毫秒减半;6 种编码器平均约 11.1 毫秒,而对照涨到 25.7 毫秒。同一编码器下 CTC 头比时间戳头少 2.7 到 13.2 个百分点,说明头部比编码器更关键。全量微调相对 LoRA 各集变动不超过 0.8 毫秒,所以后文只扫 LoRA。
用 FA-Bench 自己的代码和切分复算,时间戳模型在 TIMIT 核心集上 11.6 毫秒、20 毫秒 F1 为 0.89,对照最好已发表系统为 18.2 毫秒、0.78。但要注意训练见过同语料其他说话人,知道该语料标注习惯,而蒙特利尔英语模型没见过,这是对新模型有利的一面。
英语训练能带到多远,多语训练还加什么
下表比较只用英语训练与用全部语言训练的时间戳模型,另有未训练的交叉注意力基线和蒙特利尔对照。表前问题是:在没见过的语言和标注习惯上,英语学到的计时能力能迁移多少,多语人标又额外带来多少。
| set | MFA bar | untrained | English only | multilingual |
|---|---|---|---|---|
| TIMIT | 19.1/68.2 | 41.2/41.5 | 10.8/89.0 | 10.5/89.1 |
| Buckeye s01–s04 | 21.5/70.7 | 36.8/40.1 | 12.1/85.2 | 12.1/85.8 |
| TIMIT, 20–28 s windows | 19.5/68.1 | 50.4/39.2 | 10.4/89.2 | 10.3/89.5 |
| Seoul (ko) | 21.3/70.2 | 87.2/37.8 | 24.2/79.1 | 11.3/90.0 |
| IFA (nl) | 335.4/38.1 | 167.3/27.7 | 22.2/71.7 | 15.3/78.4 |
英语内多语几乎不涨:TIMIT 和 Buckeye 两者差 0.3 毫秒内,Switchboard 多语好 4.1 毫秒。跨语言上,仅英语训练已弥合未训练到多语之间均值差距的 80% 以上,韩语在 20 毫秒占比上已超其韩语模型,但在均值上因超半秒的大错更多而未达标。加上多语后韩语从 24.2 到 11.3 毫秒,荷兰语从 22.2 到 15.3 毫秒,VoxAngeles 从 28.3 到 15.9 毫秒。是否被 Whisper 预训练覆盖也有影响,覆盖语言的落后更小。附录逐语言表显示 VoxAngeles 多数语言提升,但每语言边界很少,单语言数字噪声大。
哪些改动真正移动误差,哪些没有
适配器扫描显示默认 LoRA 秩 32 等设置已够,秩 8 到 128、只调注意力、学习率和训练步数都不显著超越,唯有只调解码器冻结编码器明显变差,说明词起止必须在编码器里学。训更久反而变差,TIMIT 略好但 Switchboard、韩荷变差,呈现过拟合 trade-off。
真正移动误差的是三件事。电话增强把 6 种编码器下 TIMIT 从 17.1 带到 11.2 毫秒,未见过的 AMR-NB 和 G.723.1 也好近 4 毫秒,干净语音几乎不掉,只有全部文件都增强才掉。槽位放词后让 Switchboard 词开始从 29.5 到 20.3 毫秒,七集均值从 14.00 到 13.02 毫秒,朗读集不动,会话集大动,符合因果解码器先见词再定时的解释。带噪文本训练让 20% 混合噪声下 TIMIT 未变词仍接近干净水平,超半秒大错从 1% 量级降到 0.0% 几。
没用的是更细时间标记、加音素边目标和换检查点。10 毫秒乃至 5 毫秒新标记与 20 毫秒期望解码持平,移位实验证明编码器帧内已含位置信息;turbo 小解码器与大解码器在测试集上基本持平;呼叫中心退化器主要换来退化音频下的稳健,而非 Switchboard 上的显著增益。
结论在什么条件下才成立
预备基准的 3 套人标集都是英语,对其他语言的推断只是间接。训练后模型在韩、荷和 VoxAngeles 上测的是同语料留出的说话人或录音,模型知道该语料标注习惯而对照不知道,韩语 4 个测试说话人、荷兰语 1 个、VoxAngeles 每语言 1 人且每片段一词,样本很薄。
电话方面除 Switchboard 外都是模拟,真实网络的丢包、转码链、回声消除和自动增益不在 6 种条件内。预备基准都用文档默认配置,可调的系统调后可能换位。适配器扫描多为单次运行,电话增强的随机抽样也未固定种子。镜像与许可方面,TIMIT 和 Buckeye 读的是第三方镜像,Switchboard 来自公开镜像,作者称结果在许可确认前仅供内部研究。
复现第一步做什么,需要什么
复现先固定时间基准再跑精度。按论文 5 步做电话条件并用互相关测延迟扣除,尤其注意低码率 MP3 存档可能自带上 100 毫秒整体偏移,不扣会全算成对齐误差。再用同样文件集合、同样起止合并的均值和 20 毫秒占比打分,不要只看均值。
训练复现的关键是只用人标边界、留出测试说话人与整语言、电话增强与延迟扣除配套、槽位放词后、训练加 10% 左右的替换删除插入噪声。论文发布的是基于公开 Whisper large-v3 和 turbo 的模型,Whisper-Scicom 变体不公开。资源链接在原文中给出,但本次未能确认可达,不能写成已可下载,代码、权重与可运行是三件要分别验证的事。
什么时候值得尝试,还缺哪项验证
当任务是已知文本定词界、且音频含电话窄带或转录有错时,这套时间戳方案值得尝试:它在英语干净和模拟电话、韩荷自带模型对照和 FA-Bench TIMIT 上都更准,且对文本错误更不敏感。长录音可用粗对齐切 25 秒块再拼回,首尔长段上只增约 1 毫秒。
常见误解是把更细网格当成更准,或把默认配置的胜负当成模型族的胜负。论文显示期望解码已在 20 毫秒步内定位,细标记无增益;同一后验换解码可差十几毫秒,默认差不等于上限差。下一步最需要的是目标语言真人边界的外测,特别是马来语、印尼语和泰米尔语,以及真实呼叫链路上的复测,再补延迟与算力的实测,才能决定是否替换线上对齐器。
📎 论文与评分元数据
排名:前50% | 文档类型:方法研究 | arXiv 原文
⚖️ 评分明细
评分属于系统判断,不是论文实验结果;八维数值与总分见页首,原始审计记录保留在后端。
评分规则:type-aware-v1
评分模型:muse-spark-1.3-contributor
评分请求协议:openai_responses



