英文题目:Decoupling Turn-Taking from Semantics: A Decoupled Data Approach for Finite-State-Machine-Based Full-Duplex Dialogue

标签:#语音交互 | #大语言模型 | #流式处理 | #实时处理

评分:6.9/10 | 创新 1.5/2 | 技术严谨 1.2/1.5 | 实验充分 1.1/1.5 | 清晰度 0.8/1 | 影响力 1/1.5 | 开源 0/1.5 | 可复现 0.3/0.5 | 工程/实践 1/1.5

👥 作者与机构

  • Yihang Li:Kyoto University
  • Chenhui Chu:Kyoto University

📌 核心摘要

针对合成文本同时学轮次与语义不可靠的问题,该工作用真实人与人语音学轮次、用可改写的人与智能体文本保语义,配合规则化事件转磁带与来源感知校准损失,在等量 token 下把轮次 F1 从约 0.34 提升到约 0.65 并把语义恢复到接近基座上限,代价是暂停处理仍弱于保守系统且单带离散化会丢信息。

🔗 开源与复现资源

可达状态仅表示本次链接检查结果,不代表许可证、本文权重或运行复现已验证。

🧭 深度解读

输入是什么,想改变什么,必须保留什么?

输入是双通道语音对话:用户语音不断到达,智能体要实时说出语音。想改变的是轮次方式,从你说完我再说的半双工变为可同时听说的全双工,能处理停顿续说、短促应答、抢话与被打断。必须保留的是基座大语言模型的语义能力,不能为学会抢话而把问答变差。输出仍是一个文本大模型直接运行的控制器,每一步只做下 1 token 预测,却同时决定继续说、继续听还是切换状态。

白话先说全双工对话(full-duplex dialogue),它指机器边说边听,听见打断能停、听见应答能继续。真实人声里有大量重叠与间隙,它们的时长与位置本身就是信号。如果训练只见干净的轮流文本,模型就学不到何时该接、何时该让。

全双工对话 × 半双工轮次: 全双工对话指双方可以同时听和说,允许打断、重叠与边听边说;半双工轮次指一方必须等另一方说完才能说。半双工解释了现有语音助手僵硬等待的现状,全双工定义了目标能力即处理打断与声学 backchannel。组合后评价标准从单轮答对变为连续时间线上的接话与让话是否合拍。

论文把矛盾收拢到数据:原有神经有限状态机路线把轮次与语义都压给大模型生成的合成文本,1 次生成要同时编出自然重叠与高质量回答。但基座模型预训练多见结构化非重叠文本,并不擅长模拟毫秒级声学时序,合成的轮次动态因此不可靠。解耦思路是让每种能力找最合适的数据源,轮次向真实双人语音看齐,语义用可替换的人机文本塑造。

端到端、模块化与有限状态机各管哪一段?

端到端路线直接从交错音频 token 学隐式控制,延迟低、轮次细,但跨模态对齐常损伤语义。模块化路线给语言模型外挂状态管理,例如外部控制器或分类头,用固定声学块做状态分类,语义保留较好,但需要额外参数与单独状态标注。有限状态机路线处在最简一端,不引入独立分类头或控制器,只在词表里加状态切换 token,把控制与生成串在同一条因果序列上。

神经有限状态机 × 磁带: 神经有限状态机指用大语言模型直接充当只有 SPEAK 与 LISTEN 两种状态的控制器,用词表内状态切换 token 显式换状态;磁带指把状态切换 token 与回复文本按因果顺序串在同一条自回归序列上。状态机给出何时说何时听的离散决策,磁带给出决策与文本如何交错并被下一时刻看到的载体。组合后无需外加独立分类头或控制器,就能在标准下 1 token 预测下让模型看到完整轮次历史并同步感知与发声模块,但词表确实扩展了新 token。

论文选择站在第三条路线上,理由是它能让模型显式看到完整轮次历史再做下 1 次决策。但这份简洁把压力全部转给磁带文本:如果磁带里的切换位置不真实,模型没有别的模块可以纠偏。相关工作里基于块的事件标注分辨率细但与文本块不对齐,基于语间停顿单元的标注在语言上更整块,论文因此采用后者,让规则化序列化更容易对上文本边界。

与以往用语音活动检测导出状态标签的做法不同,这里要解决的不是给固定声学块分类,而是在交错文本流里插入离散切换 token。这一步无法只靠有声无声得到,必须先识别到底发生了换轮、停顿、间隙还是哪种重叠,再决定插什么 token。这就解释了为何需要先分类事件,再按规则写带。

要复述的任务与两处异构如何定义?

任务定义为在标准下 1 token 预测下学会两件事:一是在每个解码步预测正确的状态切换 token,二是在说话状态下生成得体的回复文本。难处有两层异构。第一是分布异构,延续类 token 数量压倒切换类 token,标准交叉熵会边缘化稀有但关键的切换。第二是来源异构,双人语音的轮次可信但语义嘈杂,人机文本的语义可靠但轮次结构平凡,若同等对待就会互相污染。

评价也因此分成两把尺。轮次用双人语音语料做真值,在教师强制下把每个状态 token 当独立二分类算 F1,先在每类上平均再跨语料平均。语义用 VoiceBench 子集平均分,测试音频先经各自感知模块转写再与状态 token 交错,只有零样本基座上限用连续纯文本转写,避免碎片化拖累语义。这两把尺方向都是越高越好,但它们来自不同输入条件,不能直接互换。

解耦数据全景:两条磁带如何各司其职?

方法全景可以按数据流复述。左路是真实双人音频,先做非对称预处理,再做事件分类与确定性映射,得到轮次真值磁带;右路是人机文本,先过滤与口语改写,再按简单轮流结构串成磁带,得到语义磁带。两路磁带按设定比例混合,用同一套来源感知校准损失微调同一个基座模型。推理时模型仍是单流自回归,感知块到达、语音 token 生成或发声完成都会触发下一步解码。

这张总览图 1 次回答了耦合与解耦的区别。左侧只有一种合成来源,右侧有两种真实与可配来源,且各自变换模块不同。理解了这张图,后面阈值与公式才有落点。

看图路径: 1. 先看左侧单路合成文本经一条 Tape 通向 FSM,同时指向轮次与语义;2. 再看右侧双路真实双人音频与人机文本各自成带后汇入同一 FSM;3. 对照底部标注左侧为 Previous Work,右侧为 Our Work;4. 注意顶部波形与气泡图标区分真实时间重叠与可配置文本

原论文 Figure 1:Comparison between the coupled and decoupled data approaches.

论文图 1。原论文 Figure 1::“Comparison between the coupled and decoupled data approaches.”。

论文图 1 原标题为 Comparison between the coupled and decoupled data approaches。左侧 Previous Work 顶部是合成文本气泡,经 Tape 通向 FSM,两条弧形箭头都是从 Tape 指向 FSM,分别标注 Turn-Taking 与 Semantic,耦合指训练数据与任务耦合在同一条合成带上。右侧 Our Work 顶部是 Human-Human Audio 波形与 Human-Agent Text 气泡两个并列输入,分别经事件引导变换与风格改写各自成带,再汇入同一 FSM,且轮次与语义各有一个点赞图标分别对应左带与右带。这说明解耦不是换模型结构,而是换监督分工。

双人语音如何变成因果磁带?

先讲非对称预处理,这是对齐推理条件的关键一步。双通道被指定为用户与智能体,用户通道用线上同一感知模块转写,保留细粒度时间戳文本块与固定时长静音 token,让模型见到真实识别粒度与错误;智能体通道用细粒度真值转录,保证模型学干净文本而不模仿识别伪影。块尽量保持词级,以便后续按起始时间戳精确切段。

再讲事件分类。先在各自通道内按停顿阈值合并成语间停顿单元,2 通道边界取并集得到离散时间线。单人语音按执话者是否变化分为换轮与延续;静音按是否在同一人轮内分为停顿与间隙;重叠按词表与时长先判 backchannel,再按打断者是否成功拿到话语权分为抢到与未抢到。7 类事件乘以发起者是用户还是智能体,得到 14 条确定性映射规则。

轮次事件分类 × 事件引导的磁带序列化: 轮次事件分类指把连续双通道时间线按停顿边界切成离散段并标为换轮、延续、停顿、间隙、backchannel、抢到话语权的中断与未抢到的插入;事件引导的磁带序列化指按事件类型与发起者查确定性规则,把每段写成状态 token 加文本块。分类把声学重叠还原为可枚举的离散事实,序列化把事实变成可学习的因果 token 顺序。组合后不靠大模型标注也能把真实双人语音的细粒度时序变成有监督的磁带真值。

映射时先把切换听拆成自然结束与被打断两种,让模型能显式告诉发声模块是播完还是立即截断。每段文本按起始时间戳归位,段首跟起主导作用的状态 token,段内后续块用延续 token 维持。重叠时智能体块排在用户识别块之前,还原先生成文本后合成音频、而感知是说完才出文本的因果延迟。静音 token 只保留在听的状态段,段界相邻的两个状态 token 按听听、说说、听说、说听 4 种状态对合并。

\[\ell^{\mathrm{CE}}(x,y)=-\log\frac{\exp(f_{y}(x))}{\sum_{v}\exp(f_{v}(x))}\]

上面是标准交叉熵形态,符号 f 为模型 logit。它在后文只负责回复 token,含义是拉高正确词概率而不做先验校正。把它放在这里,是为了与下一节只作用于状态 token 的校准形式形成对照。

下面这张细节图把分类到磁带的过程走通,适合跟着一个样本读 1 次。顶部用户行出现 know? 与 No.、Actually 等碎块,智能体行出现 Mars is bigger than 与 Venus 等块,中间事件行标出 C、G、T、P、FTI、BC、BI。

看图路径: 1. 先沿顶部双通道时间轴看用户感知块与智能体真值块如何错开;2. 再看中间黑线上 C、G、T、P、FTI、BC、BI 的事件切分;3. 跟踪下部磁带橙色状态块与绿蓝文本块的交替与缩写;4. 确认重叠段智能体块排在用户块之前体现因果延迟

原论文 Figure 2:Example of turn-taking event classification and event-guided tape serialization.

论文图 2。原论文 Figure 2::“Example of turn-taking event classification and event-guided tape serialization.”。

论文图 2 原标题为 Example of turn-taking event classification and event-guided tape serialization。下部磁带分两行展开,橙色块为状态缩写,绿色为用户文本,蓝色为智能体文本。例如 FTI 段写成延续说、and、No.、被打断听,BC 段写成切换说、Yeah.、Venus、自然结束听。需要仔细核对的是 BI 段括号在被打断听结束,后续 Mars. 属于下一个用户延续段,不要算进 BI。这验证了事件决定插什么切换符,发起者决定方向与子类型,重叠段排序遵守因果延迟。最后还需后处理把智能体连续文本按标点模型并成从句级再插入延续说,并用状态机合法性校验整条序列。

人机文本支路只做口语化与平凡轮次吗?

是的,这条支路目标不是学抢话,而是保语义。先做规则清洗,去 HTML、校验角色交替、去掉代码公式与过长上下文。再用 2 阶段提示让大模型先判是否适合口语播报,不适合直接返回空列表,适合才改写为自然口语,去 Markdown、改连接词、简化长句,同时保持原语言、编号、角色与轮数不变。最后再过滤过长口语轮与残留标记。

成带时用户与智能体话语都按同一标点模型切成从句,轮替处插切换说与自然结束听,同话语从句间插延续听与延续说。这套结构故意平凡且合规,让该路信号集中在语义内容。教学上可以这样记:左路教何时换,右路教换后说什么。若把右路也做复杂重叠,反而会引入不可靠的轮次噪声。

校准损失如何同时治长尾与治分工?

训练时先做选择性掩码,只在智能体回复 token 与状态切换 token 上算损失,提示词与用户文本不算。记目标下标集合为 I,按类型分为回复 R 与状态 T,按来源分为双人 HH 与人机 HA。更新的是基座语言模型加新状态、静音与角色前缀 token 的参数,感知与发声等外部模块固定,信号全部来自混合磁带的下 1 token 预测。

Logit 调整 × 来源感知加权: Logit 调整指对状态切换 token 在训练时按先验修正 logit,来源感知加权指按 token 来自人与人还是人与智能体、属于回复还是状态赋予不同权重。前者处理长尾分布防止稀有切换被淹没,后者把人与人数据导向轮次、把人与智能体数据导向语义。组合成来源感知校准损失后,在一条混合磁带上同时处理偏斜与信号错位,而不是用同一交叉熵平均一切。

先看分布校准。对状态 token 用 Logit 调整,对回复 token 保留标准交叉熵。

\[\ell^{\mathrm{LA}}(x,y)=-\log\frac{\exp\bigl(f_{y}(x)+\tau\log\pi_{y}\bigr)}{\sum_{v}\exp\bigl(f_{v}(x)+\tau\log\pi_{v}\bigr)}\]

该式在训练时给 logit 加上温度与先验对数,符号 pi 为状态词表上估计的先验,tau 为调节温度。稀有类的 log pi 更负,训练损失因此更大,迫使模型用更大原始 logit 补偿,这是一种训练校准意图与补偿学习,不要把符号方向讲成算式直接抬高稀有 logit。原文只明确先验在状态词表内估计,分母求和范围没有独立说明,不要补成确定的受限分母实现细节。

\[\ell_{i}=\begin{cases}\ell^{\mathrm{CE}}(x_{i},y_{i}),&\text{if }i\in R\\ \ell^{\mathrm{LA}}(x_{i},y_{i}),&\text{if }i\in T\end{cases}\]

该式把每个位置损失按所属类型二选一,回复走交叉熵,状态走 Logit 调整。它说明梯度来源是分开的。

\[\mathcal{L}=\frac{\sum_{i\in I}w_{i}\ell_{i}}{\sum_{i\in I}w_{i}}\]

总损失是按权重的加权平均,分母为权重和,含义是对不同 token 贡献归一化,而不是简单求和。

\[w_{i}=\begin{cases}\alpha,&\text{if }i\in(HA\cap R)\cup(HH\cap T)\\ 1-\alpha,&\text{if }i\in(HA\cap T)\cup(HH\cap R)\end{cases}\]

权重按交集定义,双人加状态与人机加回复给高权重 alpha,人机加状态与双人加回复给低权重 1 减 alpha,主实验 alpha 取 0.6。这是一个单目标内的加权平均,不是两条独立梯度或硬隔离,只是把优化重心导向各自更可信的来源。

数据、划分、基线与两把尺如何统一?

双人语音用 Switchboard 与 Fisher,人机文本用 ShareGPT 并经 Qwen3-32B 改写。基座为 Qwen3-4B 并扩展状态、静音与用户前缀 token。混合比例与损失超参是复现的第一落点,下表把它们收拢在一处,它回答以什么配比混合、校准强度多大。

词级流式感知 × 语块级流式感知: 词级流式感知指用 SimulStreaming 给出更细更碎的用户文本块,时间分辨率高但文本被状态 token 频繁打断;语块级流式感知指用静音检测加 Faster-Whisper 按语间停顿单元给出较整块的识别结果。前者提供更频繁的中断管理机会,后者保留语义连贯性。对比后揭示的权衡是粒度越细不等于端到端越好,碎片化会直接损伤语言模型的理解。

条件双人侧人机侧指标与权重取值
混合比例双人语音人机文本HH 比 HA token 量1 比 1
内部比例FisherSwitchboardFisher 比 Switchboard4 比 1
校准温度状态词表回复词表tau1
来源权重HH 状态与 HA 回复HA 状态与 HH 回复alpha0.6

上表依据论文正文整理,不冒充原表。它说明双人与人机按 token 量 1 比 1,双人内部按 Fisher 比 Switchboard 4 比 1,校准温度与来源权重取固定值。主比较控制总训练 token 量与合成基线一致,合成基线用 GPT-4-Turbo 按公开提示生成 1500 组对话并经同样人机成带流程串成磁带,未完成标记映射为被打断听。语义上限是零样本基座,端到端参照为 Moshi 的报告分。轮次 F1 在双人语料上教师强制计算,语义为 VoiceBench 4 个子集平均且去掉 IFEval。感知对比固定主干为 Whisper-Turbo,只换粒度。

预处理阈值是第二落点,它们决定事件切分与磁带密度,复现时应先对齐这些常量再调模型。下表回答过滤与切分用了哪些硬阈值。

环节对象阈值单位处理
对话过滤词错误率0.3比率超过则丢弃
事件切分语间停顿阈值32毫秒合并相邻块
静音表示单个静音 token0.64秒只保留在听区间
重叠判定backchannel 最长1秒超过不判为应答

上表依据论文正文整理,不冒充原表。词错误率阈值同时去掉坏音频与串音,语间阈值越小切分越碎,静音 token 时长决定磁带里时间粒度的粗细,backchannel 时长上限配合词表防止把长插话误判为应答。改变任一阈值都会改变状态 token 分布,因此对比感知粒度时必须固定同一套阈值。训练预算为 4 卡 A6000、批量 256、上下文 1024,峰值学习率 1.0 乘 10 的负 5 次方,token 对齐跑至多 300 步、放大混合延至 700 步并看验证损失早停。

等 token 量下解耦相对合成基线赢在哪里?

要回答的主问题是:在总 token 量严格对齐时,解耦数据相对合成数据在轮次与语义上各带来多少净收益。统一条件是同一基座、同一成带流程、同一评价输入前缀,区别只在训练磁带来源与损失。指标方向均为越高越好,轮次为双人语料上的状态 token 平均 F1,语义为 VoiceBench 平均分。下表直接呈现主性能对照。

对比条件感知粒度合成基线 F1本方法 F1合成基线语义本方法语义
等 token 量IPU 级 Faster-Whisper0.34360.649853.5762.14
等 token 量词级 SimulStreaming0.30250.640444.2454.80

按表中打印值计算,IPU 与词级条件下的 F1 净增量分别为 0.3062 与 0.3379,VoiceBench 净增量分别为 8.57 与 10.56。本方法内部,IPU 级的轮次 F1 略高于词级,语义分也更高。另有端到端系统 Moshi 的语义参照分 27.36,以及零样本基座连续文本转写的语义上限分 64.93;它们是语义指标,输入条件与碎片化磁带不同,不放入 F1 列比较。它报告解耦模型在两种感知粒度下都显著超过合成基线,且语块级感知的语义明显高于词级感知。

词级输出被频繁交错的状态 token 打碎,用户文本碎片化直接考验语言模型理解,这是粒度权衡的核心证据。不能由这张表推出最终听感偏好,因为语义分不等于感知人评。

合成带学不会抢话还有结构证据:合成带把 88.38% 给回复,只留 11.62% 给全部状态,其中关键切换仅 2.40%,真实带在语块级下关键切换达 7.26%。这支持了合成文本因结构化非重叠而难以复现频繁换地板的判断。词级感知的延续听占比更高,碎片化量化可见,这解释了为何词级轮次尚可但语义差距更大,不能推出细粒度无条件占优。

拿掉校准损失与换掉数据源各发生什么?

消融按两个轴组织。第一轴是损失:在固定混合下比较标准交叉熵与来源感知校准损失。第二轴是数据:在不用校准时比较只用双人、只用人机、只用合成与混合。统一条件仍是等 token 量与同一感知,指标仍是轮次 F1 与 VoiceBench。下表呈现语块级感知下的消融。

配置轮次 F1语义 VoiceBench损失条件说明
本方法混合0.649862.14用 SAC轮次与语义兼顾
去掉 SAC0.610562.19不用 SACF1 下降语义略升
只用双人0.618218.30不用 SAC轮次尚可语义崩
只用人机0.417063.15不用 SAC语义尚可轮次不足
只用合成0.343653.57不用 SAC两者皆弱

上表依据论文正文整理,不冒充原表。加入校准后轮次提升而语义基本持平,混淆矩阵显示稀有切换类预测准确率改善。只用双人时轮次尚可但语义大幅下跌,只用人机时语义尚可但轮次不足,只用合成时两者皆弱。注意单源两行都是无 SAC 条件,不能与用 SAC 的混合行混设置比较。双向打断评测中机器打断用户与用户打断机器的恰当率也都高于合成基线,说明改进不只在平均 F1。

超参分析给出代价侧。来源权重 alpha 增大时 VoiceBench 上升而轮次 F1 下降,细分为召回上升趋稳、精度明显下降,这与最大似然预训练偏向召回的已知现象一致。主实验取 0.6 是在语义保留与轮次精度之间折中。基座从 1.7B 到 4B 再到 8B,语义随规模上升,轮次在 4B 处见顶,论文推测更大模型需要更多努力拟合高度特化的磁带模式,该句应标为推测而非已验证因果。

放大到按比例上采样后,语块级模型达到轮次 0.6539、语义 64.84,零样本基座连续转写为轮次 0.1200、语义 64.93,语义仍差 0.09。保留输入条件不同:基座用连续纯文本,微调模型用碎片化磁带,因此这不是无条件全面恢复,只能说在该协议下接近上限。

单带串行、副语言与角色覆盖的边界在哪?

第一处边界是单带串行本身。把双通道连续时间压成离散 token 顺序必然丢信息,即使执行了因果排序,重叠的精细相对时序仍被压缩。这是离散化方法的固有代价,阈值与合并规则只能缓解。

第二处是副语言缺席。韵律、情感与音质无法在文本磁带上表示,最终语音表现力受限于现成合成模块。论文明确把重心放在轮次自然度,感知评测留给未来,这意味着不能用本文 F1 与 VoiceBench 推断听感偏好。

第三处是智能体通道内容未改写。双人语料的智能体侧仍是普通人的原话,未必符合语音助手应答风格。若改写其语义可能扰动双通道对齐,作者因此保持原样。这提示轮次真值保住了,但该侧语义噪声仍在,正好由人机支路与来源加权来对冲。

第四处是覆盖范围与实测短板。语料只覆盖双人对话与问答助手角色,多人对话与角色条件对话未验证。Full-Duplex-Bench 上暂停处理偏激进, takeover 率弱于 Freeze-Omni 与 Gemini Live,backchannel 占优但不能把多数领先读成全维度最优。保守策略在暂停上好,但在平滑接话上会付出代价,这属于轮次权衡而非单纯缺陷。

要复现应先对齐哪三组常量?

第一组是数据配比与损失常量。先按双人比人机 1 比 1、Fisher 比 Switchboard 4 比 1 配好 token 量,损失温度取 1,来源权重取 0.6。若先动 alpha,会同时改变语义与轮次精度,难以定位问题。建议先在 0.5 附近确认混合趋势,再按需微调。

第二组是事件与感知阈值。先固定语间停顿 32 毫秒、静音 token 0.64 秒、backchannel 上限 1 秒与词错误率 0.3 的过滤,再比较语块级与词级感知。否则分布变化会被误读为模型能力变化。成带后务必跑状态机合法性校验,例如说话态只允许延续说或切换听,段界合并按 4 种状态对收敛。

第三组是训练与推理实现。微调只在智能体回复与状态 token 上算损失,上下文 1024,批量 256,峰值学习率 1.0 乘 10 的负 5 次方,token 对齐跑至多 300 步、放大混合延至 700 步并看验证损失早停。解码时状态 token 贪心、回复 token 采样,每步先贪心探一个 token,遇状态则提交,否则当从句前缀继续采样并丢弃句中采样出的状态。非法切换加硬掩码,前瞻用有界预生成,打断时按继续说、立即停、自然结束 3 种改写磁带并处理发声截断。常见误解是把合成基线的 1500 组对话当成可直接下载的数据,原文实际是按公开提示重建,占位符与主题池需自行补齐,不能视为原版复刻。

什么条件下值得尝试解耦路线?

当你有一定量真实双人语音且能拿到词级时间戳,同时有可改写的人机文本,就值得尝试。它的可扩展性来自全规则无大模型标注的变换,能随语料增大而增大;灵活性来自人机侧可替换,通用语料保底,角色语料可定向增强。若只有合成对话,预期轮次仍会被结构性稀疏限制。

选择感知粒度时,若任务更看重问答准确与长句连贯,优先语块级;若必须极早捕捉打断意图,才考虑词级并接受语义打折,同时用校准损失护住稀有切换。模型规模不必盲目增大,4B 在轮次上已见顶,增大主要换语义。

最需要补的验证是听感与真实交互评测,以及智能体侧语义在不扰动对齐下的可控改写。开源状态依证据表述为作者给出代码与模型地址,是否可下载权重与可一键运行需按仓库实际状态核对,不宜仅凭论文语句断定部署成本。

📎 论文与评分元数据

排名:前50% | 文档类型:方法研究 | arXiv 原文

⚖️ 评分明细

评分属于系统判断,不是论文实验结果;八维数值与总分见页首,原始审计记录保留在后端。

  • 评分规则:type-aware-v1

  • 评分模型:muse-spark-1.3-contributor

  • 评分请求协议:openai_responses


← 返回 2026-09-04 语音/音乐/音频论文速递