用于协调异构语音和文本检索器的重排序器

arXiv cs.CL 论文

摘要

本文提出了STeReO,一个用于协调异构语音和文本检索器的重排序器,通过改善多模态场景中的证据选择来增强检索增强生成(RAG)系统。

arXiv:2608.26194v1 公告类型:新 摘要:检索增强生成(RAG)系统因其能够缓解大型语言模型(LLMs)中的幻觉而备受关注。尽管RAG的知识库日益多样化,包括语音和文本等多种模态,但对处理此类多模态数据库场景的研究仍然有限。本文提出了STeReO(语音和文本重排序协调器),一个基于语音和文本检索器的重排序器,用于聚合不同模态的数据库。为了解决缺乏专门训练数据的问题,我们首先构建了一个包含查询、混合模态证据及其相应相关性排名的数据集。然后,我们训练了重排序器,并评估了其在单模态和混合模态场景中的有效性。我们的结果表明,所提出的算法在选择最相关证据方面表现出色,从而显著提高了下游问答性能。
查看原文
查看缓存全文

缓存时间: 2026/08/28 09:24

# 用于协调异构语音与文本检索器的重排序器
来源:https://arxiv.org/html/2608.26194
Kim Ahn

###### 摘要
检索增强生成(RAG)系统因其缓解大语言模型(LLMs)幻觉的能力而受到广泛关注。尽管用于RAG的知识库正日益多样化,包含语音和文本等多种模态,但针对此类多模态数据库场景的研究仍然有限。本文我们提出STeReO(语音与文本重排序协调器),一个基于语音和文本检索器的重排序器,用于聚合不同模态的数据库。为解决专用训练数据缺乏的问题,我们首先策划了一个包含查询、混合模态证据及其相应相关性排名的数据集。随后,我们训练了该重排序器,并评估了其在单模态和混合模态场景下的有效性。结果表明,所提算法擅长选择最相关的证据,从而显著提升了下游问答性能。

###### 关键词
多模态重排序,异构候选,语音检索

††地址:韩国能源技术研究院
††邮箱:[email protected], [email protected]

## 1引言

检索增强生成(RAG)[14]通过整合外部知识来增强大语言模型(LLMs)[1, 27, 7],从而缓解幻觉[13]并将回复基于外部证据。虽然大多数现有的RAG流程假设知识库仅包含文本(图1(a)),但整合讲座、会议记录等非结构化口语内容的需求日益增长。然而,这种整合并非易事。最直接的方法是利用自动语音识别(ASR),它在应用标准文本检索之前将音频转换为文本。然而,ASR会引入转录错误,这些错误会在整个流程中传播,增加延迟,并丢失原始音频中存在的非言语信息。因此,将RAG扩展到原生支持口语模态是一个重大但尚未充分探索的挑战。

参见标题图1:三种RAG系统的比较:(a) 基于文本的,(b) 基于语音的,以及 (c) 文本+语音的RAG。
多项研究通过无ASR的语音检索方法来解决ASR相关的局限性。例如,VoxRAG[22]采用直接的语音到语音匹配,无需ASR,而SpeechRAG[18]将文本查询与语音嵌入对齐。然而,它们的检索空间仍然局限于单一模态的、仅包含语音的语料库(图1(b))。相比之下,WavRAG[6]通过将独立的音频和文本数据库投射到共享嵌入空间来促进异构检索。尽管取得了这一进展,这种针对多模态库的联合嵌入方法存在众所周知的*模态差距*[16, 10]。即使在像CLAP[9]这样的音频-文本模型中,系统性的分数不平衡[23]常常导致一种模态主导检索结果,无论其实际相关性如何。

避免这种差距的另一种方法是独立使用特定模态的检索器,并通过后期融合合并其候选(图1(c))。在这种范式中,一个强大的跨模态重排序器对于准确评估和优先排序从不同模态检索到的候选至关重要。虽然最近的列表式重排序方法,例如基于置换不变交叉编码器[24]或融合解码器架构[30]的方法,在仅包含文本的候选池上显示出有希望的结果,但它们本质上仍是单模态的。因此,它们无法促进异构候选池所需的复杂跨模态比较。开发此类跨模态重排序器的主要障碍是训练数据的缺乏:现有的检索数据集缺乏直接比较音频和文本候选所需的显式跨模态相关性判断。

为了克服这一挑战,我们首先构建了一个新颖的数据集,该数据集明确捕捉了异构检索器生成的候选之间的跨模态相关性排名。利用该数据集,我们提出了STeReO(语音与文本重排序协调器),一个跨模态重排序器,旨在系统地将来自独立的、特定模态数据库的异构候选与给定的文本查询对齐并优先排序,形成一个统一的排序列表。总之,我们的主要贡献如下:
- •首先,我们构建了一个新颖的跨模态数据集,为从异构模态检索到的候选提供显式的相关性排名。为了高效实现这一点,我们提出了一种新颖的分数融合方法,用于合并来自不相交检索器的候选集。该方法有效地过滤了庞大的证据空间,使我们能够从高度针对性的候选子集中准确提取相关性顺序。
- •其次,利用构建的数据集,我们训练了一个新颖的跨模态重排序器STeReO。它使用低秩适应(LoRA)进行微调,并通过统一的基于token的评分机制运行。此外,我们数据集中的丰富标注使得所提算法能够针对各种学习目标进行优化,包括逐点、成对和列表式重排序形式。
- •最后,我们在由Spoken SQuAD和MS MARCO数据集构建的跨模态基准上全面评估了STeReO。在多种骨干架构上的广泛实验表明,我们提出的方法优于现有的单模态基线。

## 2 所提方法STeReO

在本节中,我们介绍所提方法,并详细说明构建具有跨模态排名标签的数据集。

参见标题图2:所提框架STeReO概述。(a) 构建用于混合模态重排序器的数据集,(b) 训练重排序器,以及 (c) 基于所提重排序器模型的推理过程。
框架。在详细说明所提方法之前,我们建立本研究的核心框架。令\(q\)表示文本查询,\(\mathcal{D}^m\)表示异构数据库,其中\(m \in M = \{\text{text}, \text{speech}\}\)。对于每种模态\(m\),一个特定模态的检索器\(R^m\)提取候选集\(\mathcal{C}^m = \{c_1^m, \ldots, c_k^m\}\),其中\(k\)是检索器返回的候选数量。随后,一个重排序器\(\mathcal{R}\)处理这些集合的并集,以产生混合证据\(\mathcal{C}^\star = \mathcal{R}(\bigcup_{m \in M} \mathcal{C}^m)\)。最后,音频语言模型(ALM)生成查询的答案\(a\)为\(a = \text{ALM}(\mathcal{C}^\star, q)\)。推理过程如图2(c)所示。这里,我们的主要关注点是训练重排序器模块\(\mathcal{R}\)。为此,我们首先构建必要的训练数据集(阶段1),然后正式训练\(\mathcal{R}\)(阶段2)。

### 2.1 阶段1:数据集构建

在阶段1,我们通过聚合来自独立、特定模态检索器的候选,并使用基础ALM(*例如*,GPT)为它们标注统一的相关性标签,来构建一个跨模态数据集(图2(a))。

领域特定检索。我们首先为每种模态生成一个候选集\(\mathcal{C}^m\)并计算初始相关性分数。为了确保每个领域的高质量检索,我们使用专门的预训练检索器:文本使用e5-mistral-7b-instruct[28],语音使用基于HuBERT的SpeechRAG[18]。

归一化与融合。由于独立的检索器在不同的分数尺度上操作,直接比较是不可行的。为了促进高效的候选选择并最小化下游标注成本,我们使用Z分数归一化对这些分数进行对齐:
\[ \tilde{r}_i = \frac{r_i - \mu_m}{\sigma_m} \quad \text{for} \quad m \in M, \]
其中\(r_i\)和\(\tilde{r}_i\)分别表示第\(i\)个候选的原始检索分数和归一化分数,而\(\mu_m\)和\(\sigma_m\)表示给定查询\(q\)时模态\(m\)分数的均值和标准差。然后,我们基于这些归一化分数合并候选,形成统一的标注集\(\mathcal{L}\),并从中选择前\(k\)个样本。

通过基础ALM进行跨模态标注。为了建立不同模态间的黄金标准排名,我们使用一个基础ALM(*例如*,gpt-4o-audio-preview)作为统一评估器。在\(\mathcal{L} = \{c_1, \ldots, c_k\}\)中的前\(k\)个候选被输入ALM,它同时考虑音频和文本上下文,为每个候选分配单独的相关性分数\(\mathbf{y} = \{y_1, \ldots, y_k\}\)。详细的提示和实现规格在第3节和补充材料中提供。

### 2.2 阶段2:重排序器训练

在阶段2,我们使用上一阶段生成的跨模态候选-相关性三元组\((q, c_i, y_i)\)对重排序器进行微调。为确保参数效率,我们采用低秩适应(LoRA)[12]。训练过程如图2(b)所示。

自回归相关性评分。我们采用基于解码器的ALM,例如Ultravox[11]、Qwen-Audio-Chat[8]和Qwen2-Audio[7],作为重排序器的基础架构。遵循既定的自回归重排序范式[26, 21],模型被训练以生成一个标量相关性分数\(s_i\),基于最后token位置上"Yes"和"No"两个token的logit差异:
\[ s_i = \text{logit}(\texttt{Yes}) - \text{logit}(\texttt{No})。 \]

表1:用于重排序器优化的训练目标。\(\sigma(\cdot)\)表示sigmoid函数,\(\tau\)是设置为10的超参数。
| 方法 | 目标形式 |
| :--- | :--- |
| 逐点 | \(\mathcal{L}_{\text{point}} = -\frac{1}{\|\mathcal{C}^\star\|} \sum_{i} \bigl[ y_i \log \sigma(s_i) + (1 - y_i) \log (1 - \sigma(s_i)) \bigr]\) |
| 成对 | \(\mathcal{L}_{\text{pair}} = \frac{1}{|\mathcal{P}|} \sum_{(i,j) \in \mathcal{P}(q)} \log\left(1 + \exp\left(-\delta_{ij} \cdot (s_i - s_j)\right)\right)\) <br> 其中 \(\mathcal{P} = \{(i,j): c_i, c_j \in \mathcal{C}^\star, y_i \neq y_j\}, \quad \delta_{ij} = \text{sign}(y_i - y_j)\) |
| 列表式 | \(\mathcal{L}_{\text{list}} = 1 - \frac{1}{\mathrm{IDCG}} \sum_{i} \frac{2^{y_i} - 1}{\log_2(1 + \hat{r}_i)}\) <br> 其中 \(\hat{r}_i = 1 + \sum_{j \neq i} \sigma\left(\tau(s_j - s_i)\right)\) |

表2:单领域和混合领域设置下的重排序性能。所有结果均使用音频窗口的最大池化。
|  |  | 单领域 |  |  |  |  |  |  | 混合领域 |  |  |  |
| :--- | :--- | :--- | :--- | :--- | :--- | :--- | :--- | :--- | :--- | :--- | :--- | :--- |
|  |  | Spoken SQuAD |  |  | MS MARCO |  |  | Spoken SQuAD |  |  | MS MARCO |  |  |
| 骨干 | 目标 | Hit@1 | MRR | NDCG@5 | Hit@1 | MRR | NDCG@5 | Hit@1 | MRR | NDCG@5 | Hit@1 | MRR | NDCG@5 |
| 基线 | Z分数 | 0.6927 | 0.7498 | 0.7678 | 0.6864 | 0.7694 | 0.7987 | 0.5273 | 0.6408 | 0.6857 | 0.6621 | 0.7510 | 0.7846 |
| Ultravox | 逐点 | 0.7834 | 0.8008 | 0.8057 | 0.7432 | 0.8060 | 0.8262 | 0.7630 | 0.7892 | 0.7971 | 0.6977 | 0.7755 | 0.8032 |
|  | 成对 | 0.4855 | 0.6288 | 0.6775 | 0.4394 | 0.6195 | 0.6865 | 0.3602 | 0.5434 | 0.6131 | 0.3336 | 0.5349 | 0.6220 |
|  | 列表式 | 0.4430 | 0.6017 | 0.6572 | 0.3356 | 0.5487 | 0.6332 | 0.4430 | 0.6017 | 0.6572 | 0.1185 | 0.3737 | 0.4996 |
| Qwen-Audio-Chat | 逐点 | 0.7644 | 0.7904 | 0.7980 | 0.7244 | 0.7951 | 0.8180 | 0.7334 | 0.7728 | 0.7849 | 0.6907 | 0.7720 | 0.8006 |
|  | 成对 | 0.7561 | 0.7861 | 0.7948 | 0.7279 | 0.7971 | 0.8196 | 0.7174 | 0.7635 | 0.7780 | 0.7076 | 0.7834 | 0.8092 |
|  | 列表式 | 0.7361 | 0.7755 | 0.7870 | 0.6967 | 0.7792 | 0.8062 | 0.7275 | 0.7703 | 0.7831 | 0.5898 | 0.7128 | 0.7564 |
| Qwen2-Audio | 逐点 | 0.7753 | 0.7966 | 0.8026 | 0.7337 | 0.8004 | 0.8220 | 0.7584 | 0.7872 | 0.7957 | 0.6997 | 0.7777 | 0.8049 |
|  | 成对 | 0.7705 | 0.7937 | 0.8005 | 0.7405 | 0.8047 | 0.8252 | 0.7467 | 0.7803 | 0.7905 | 0.7164 | 0.7885 | 0.8130 |
|  | 列表式 | 0.7580 | 0.7870 | 0.7955 | 0.6872 | 0.7744 | 0.8027 | 0.7557 | 0.7858 | 0.7946 | 0.4047 | 0.5976 | 0.6701 |

训练目标。我们使用表1中详细说明的目标函数优化重排序器。我们的框架设计高度灵活,支持逐点(二元交叉熵)[17, 19]、成对(RankNet风格)[3, 4]和列表式(ApproxNDCG)[5, 29, 20, 25]损失函数。这种模块性允许将任何这些广泛采用的目标无缝集成到我们的训练流程中。

音频分窗与分数聚合。为了处理长音频段中可能存在的证据定位问题,我们将每个候选分割成\(W\)个固定时长的窗口。在训练期间,随机采样一个窗口进行评分,作为随机正则化器,从而增强模型鲁棒性。相比之下,在推理期间,各个窗口被独立评分,最终的段级分数\(s_i\)通过使用\(\texttt{mean}(\cdot)\)或\(\texttt{max}(\cdot)\)聚合这些窗口级分数得到。

## 3 实验

### 3.1 实验设置

本节详细说明评估中使用的实验设置和评估指标。

数据集。我们在两个不同的数据集上使用固定的top-\(k\)流程(\(k=5\))评估STeReO:Spoken SQuAD[15],包含文本查询和TTS生成的音频段;以及MS MARCO[2],仅包含文本的网络段。合并的检索池包含大约2.8K个音频段和9.1K个文本段。这些语料库具有不重叠的段落和最小的查询重叠。鉴于数据集在领域和模态上均不同,此设置提供了一个挑战性

相似文章

结构促进检索、重排序与生成

arXiv cs.CL

本文提出SF-Re2G方法,通过利用文档结构来增强检索、重排序和生成,从而改进基于文档的对话系统。该方法在中英文数据集上得到验证。