[论文解读] Augmenting Transformers with KNN-Based Composite Memory for Dialogue
该论文提出基于K近邻(KNN)的信息获取(KIF)模块,通过在预编码的知识上进行K近邻搜索,为生成式Transformer模型提供高效、可扩展的外部知识访问能力,支持来自多种来源的知识,如维基百科、图像和对话历史。该方法提升了对话的连贯性与事实一致性,在Wizard of Wikipedia和Engaging ImageChat基准上实现了最先进性能,且在人类评估的响应质量方面与仅使用检索的模型相当。
Various machine learning tasks can benefit from access to external information of different modalities, such as text and images. Recent work has focused on learning architectures with large memories capable of storing this knowledge. We propose augmenting generative Transformer neural networks with KNN-based Information Fetching (KIF) modules. Each KIF module learns a read operation to access fixed external knowledge. We apply these modules to generative dialog modeling, a challenging task where information must be flexibly retrieved and incorporated to maintain the topic and flow of conversation. We demonstrate the effectiveness of our approach by identifying relevant knowledge required for knowledgeable but engaging dialog from Wikipedia, images, and human-written dialog utterances, and show that leveraging this retrieved information improves model performance, measured by automatic and human evaluation.
研究动机与目标
- 使生成式对话模型能够动态地从多种模态(如文本、图像和对话历史)中检索并整合相关外部知识。
- 解决从大型、固定的外部知识库中高效检索相关信息的挑战,而无需训练记忆本身。
- 通过可微分且可扩展的方式,将检索到的知识与上下文感知表示相结合,以提升对话质量。
- 通过检索具体、人类可读的知识元素来确保可解释性,从而指导模型生成响应。
- 通过自动评估与人工评估相结合,检验KIF在多模态、多源设置下的有效性。
提出的方法
- KIF模块使用K近邻(KNN)搜索从预编码的外部源(如维基百科句子或图像-话语对)中检索相关知识。
- 每个KIF模块基于来自对话上下文的查询嵌入运行,利用相似性度量从固定的内存库中检索最近邻。
- 检索到的知识被重新嵌入,并通过可学习的门控机制进行加权求和,以实现融合。
- 模型通过将检索到的知识与上下文表示拼接,将其整合到解码器中,支持端到端训练。
- 通过在层间或顺序中多次应用KIF模块,模拟多跳检索,同时施加约束以避免重复检索。
- 该方法利用FAISS等高效库实现GPU加速的KNN推理,确保可扩展至大规模内存库。
实验结果
研究问题
- RQ1基于K近邻的检索能否在对话上下文中,有效识别来自多样化多模态源(如维基百科、图像、对话历史)的相关知识?
- RQ2整合检索到的知识在多大程度上提升了生成式对话模型的事实准确性与连贯性?
- RQ3使用多个知识源和多跳检索对模型性能有何影响?
- RQ4门控机制在多大程度上增强了模型过滤无关或噪声检索信息的能力?
- RQ5查询表示的选择(如上一句、对话上下文、对话轮次编号)在多大程度上影响检索质量与下游性能?
主要发现
- KIF增强的Transformer在Wizard of Wikipedia数据集上取得了27.4的F1分数,优于仅使用上一句或对话上下文的模型。
- 与仅使用上一句相比,引入对话上下文和轮次嵌入使性能提升了1.0个F1分数。
- 使用多个KIF模块在不同网络深度获取知识,性能与单模块多轮获取设置(26.9 F1)相当(26.5 F1),表明在不同层间分散检索并无显著优势。
- 采用2或3跳的多跳检索并未提升性能,可能是因为数据集设计中每句对话仅基于单一知识句子。
- 在未使用门控机制的情况下引入无关知识源(PersonaChat)会降低性能,但门控机制使性能几乎完全恢复,证明其在过滤噪声方面的有效性。
- 最优KNN性能在K=3时达到,进一步增加K值会导致加权求和中的信息模糊化,从而引起性能下降。
更好的研究,从现在开始
从阅读论文到最终审阅,大幅缩短您的研究时间。
无需绑定信用卡
本解读由 AI 生成,并经人工编辑审核。