TransferTOD:利用LLM解决TOD系统在域外场景槽位难以泛化的问题

本文涉及的产品
模型在线服务 PAI-EAS,A10/V100等 500元 1个月
模型训练 PAI-DLC,100CU*H 3个月
交互式建模 PAI-DSW,每月250计算时 3个月
简介: 任务型对话系统旨在高效处理任务导向的对话,如何利用任务型对话系统准确、高效、合理地完成信息采集的工作一直是一项关键且具有挑战性的任务。

任务型对话系统旨在高效处理任务导向的对话,如何利用任务型对话系统准确、高效、合理地完成信息采集的工作一直是一项关键且具有挑战性的任务。目前的槽位填充数据集大多服务于用户主导型系统,往往会局限于预设好的特定场景和特定槽位。而在“客服-用户”信息收集这一系统主导型的对话场景中,需要填充的槽位与槽位值往往是陌生的,填槽的准确率会严重下降,系统也无法根据槽位填充的情况提出准确的问题引导用户回答,完成下一个填槽行为。传统的TOD方法难以在这个任务上取得很好的结果。

最近的研究表明,大型语言模型在对话、指令生成和推理方面表现出色,能够通过微调极大地提高任务型对话系统的性能。与此同时,大模型优秀的泛化能力也能够承担起系统主导型的对话系统针对空槽位提问的能力,以及对于未训练槽位值的准确填充能力。因此,我们可以利用LLM的相关技术,克服这一在小模型时代难以解决的问题。

在本项工作中,我们提出了一个详细的多领域任务导向型中文对话数据构建流程,并基于此流程构建了中文数据集TransferTOD。该数据集真实地模拟了30个热门生活服务场景下共5760轮次的任务型人机对话。基于此数据集,我们采用全参数微调的方法训练出了TransferTOD-7B。实验结果表明,TransferTOD-7B具有出色的填槽能力和提问能力,并在下游场景中展现出良好的泛化能力,可广泛应用于信息收集场景。

论文链接:https://arxiv.org/abs/2407.21693

仓库链接:https://github.com/KongLongGeFDU/TransferTOD

模型链接:https://modelscope.cn/models/Mee1ong/TransferTOD-7B

1.论文速看

任务型对话系统(Task-Oriented Dialogue System)是一种人机交互系统,旨在帮助用户完成特定的任务或获取特定的信息,目前已被广泛应用于日常生活和商业应用中。目前,TOD系统已经可以有效地适应不同的任务、领域和用户行为,但多数方法仍然局限于预设好的特定场景和特定槽位,一些方法甚至需要从特殊的外部数据库中获取额外的知识,这使得系统在面对未知领域或任务时几乎没有泛化性。此外,现有数据集通常聚焦于用户主导型系统,以回应用户的提问和请求为主要目的构造系统。这就导致在信息收集这一系统主导型的对话场景中,需要填充的槽位与槽位值对于模型来说往往是陌生的,填槽的准确率会严重下降,系统也无法根据槽位填充的情况提出准确的问题引导用户回答,完成下一个填槽行为。同时,对话场景的多样性和真实性也是一个亟待解决的问题,现有的数据场景通常设计得相对单一,并且很少涉及真实对话中的复杂变化。

图一:“客服-用户” 信息收集场景对话示例

大型语言模型 (LLM) 在对话参与、指令生成和零样本推理方面表现出色,为解决上述问题带来了新思路。研究证实,在不同规模的对话语料库上微调的 LLM 可以在不同的任务、领域甚至语言中实现增强的性能。因此,我们可以使用 LLM 来驱动 TOD,使其能够在未知领域完成填槽任务。

我们在论文中提出了一个具有高通用性和可迁移性的四步骤数据集构建流程,并基于此构造了一个多领域任务导向型的中文对话数据集TransferTOD,可以涵盖更为复杂和多样的对话任务,模拟更为真实的对话情景。消融实验证明了我们的数据不仅具备出色的抗干扰能力,在提问环节所体现的语言能力上还具备良好的多样性和流畅性。

实验证据表明,我们所提供的数据集有着十分卓越的性能。我们基于它进行SFT之后得到的TransferTOD-7B 模型不仅可以根据所缺槽位主动向用户提问并根据用户回答准确填槽,而且在提问的准确性和流畅性上面还具有较好的表现。

在跨领域评估中,它的联合准确率(Joint Accuracy)达到了75.09%,槽位 F1 分高达 96.20%,证明了其在槽位任务中的精准度和效率。在提问能力方面,其提问准确率仅略逊于最先进的 GPT-4,而在提问流畅性上,它甚至超越了 GPT-4,展现出流畅而自然的问题生成能力。进一步的研究发现,通过利用域外测试集中的少量数据在 TransferTOD-7B模型上进行二次微调,可以进一步优化模型的泛化能力。二次微调后的模型,在域外测试上的表现超越了使用官方接口在同等数据量下进行微调的 GPT-3.5-Turbo,表现出在面对未知或新领域数据时优秀的性能。

2.贡献总结

  • 针对信息收集任务的特点,提出了一个具有高通用性和可迁移性的四步骤数据集构建流程,研究人员能够有效地将该方法应用于跨语言或多语言数据集的创建。
  • 构建了一个新的数据集 TransferTOD,可以用于各种生活服务场景中的任务导向对话生成。它包含 30 个场景,包含 5460 轮对话,消融实验表明该数据集具有良好的抗噪性、多样性和流畅性。
  • 我们利用 TransferTOD 作为 SFT 数据集,并通过全参数微调训练的 TransferTOD-7B 模型,拥有比 GPT-4更好的槽位填充能力和性能接近的提问能力。通过适当的二次微调技术,我们的模型与使用等量数据进行微调的 GPT-3.5-Turbo 相比,在OOD测试上表现出同样优秀的性能。

3.数据集构造‍‍‍‍‍‍‍‍‍

这项工作的核心贡献之一是提出了一个四步骤的数据集构造的方法,通过这一方法构建了TransferTOD数据集。数据构造的方法具有通用性和扩展性,适用于多种语言或多语种的数据集。

具体来说,我们选择从本地生活的应用软件(比如大众点评,美团,yelp, Booking )上获得启发,爬其最热门的30个生活服务作为我们构造对话的领域,每个领域包含10个左右的槽位。我们邀请了人类专家结合现实生活使用这些应用软件的真实经历,手动构建了一组高质量的对话作为测试集数据,涵盖了30个领域;其中三个领域由于与其他领域的槽位重叠最少而被选为构建域外测试集。其余的数据则用作域内测试集。

对于训练集,我们采取以下步骤来大规模生成数据集:

图二:TransferTOD数据构造步骤示意图

  1. 原始槽位构造以及对话生成

对于每一个领域构造模板库,每个槽位包含5-6种系统提问模板以及5-6种回答模板。并使用脚本生成的方式实现最初版本的对话数据集。我们称该阶段的数据集为TransferTOD-v1。

  1. 扰动数据引入

在现实生活中用户可能会提供一些不符合规范或常识的信息,因此一个完善的对话系统应当具备对于用户提供的回答进行检查的能力,必要时需要二次向用户确认以获得准确信息。上述数据将被划出一部分内容,引入用户错误回答的特殊轮次,得到的数据集为TransferTOD-v2。

  1. 引入GPT3.5增强对话多样性

基于上述静态脚本生成方案实现的对话数据,在提问方式和回答方式的多样性上有所欠缺。每个槽位只有固定的5-6种方式以及回答,这并不贴合现实场景中可能会遇到各种语言习惯用户的情况。因此,我们针对各个场景,在保证对话原意不变的情况下,采用了成本更为低廉的GPT-3.5-turbo模型对提问和回答文本进行改写,来获得更加多样的文本内容,得到了TransferTOD-v3。

  1. 人工对对话内容的流畅性进行润色

最后,我们进一步优化了同时包含多个槽位询问的对话的流畅性。最初,对话数据基本上是由不连贯的问题或回答的简单组合而成,这并不符合传统的口语习惯。我们先应用了GPT-4进行句子的合并和增强连贯性,并结合基于规则的审查来定位句子破碎的实例,最后再邀请了人工注释人员对被忽略或不合规的句子进行修正,从而确保对话的顺畅。

最终得到了一个跨领域的任务导向型信息收集多轮对话数据集(TransferTOD),包含 30 个场景,包含 5460 轮对话。

4.实验结果‍‍

一、主实验部分

在经过四阶段数据构造之后,我们将最终得到的数据集与通用对话belle数据集1:1混合转化为混合数据集,采用全参数微调的方式微调Baichuan2-7B-Base,得到TransferTOD-7B模型。接下来我们针对域内测试集与域外测试集进行了ID测试与OOD测试,并在OOD测试集上进行了对二次微调相关技术的探究。

  1. 域内(In-Domain)测试

我们采用对话行为 F1 (Dialogue Act F1)值来评估域内模型的性能。在这个测试上我们选择了一些传统的槽位填充模型,它们在域内槽位填充任务上具备优秀的性能。

实验结果表明,与传统的方法相比,基于我们的数据集微调得到的TransferTOD-7B模型在域内测试集上的对话行为 F1 值远高于其他方法,达到了 93.64%。这不仅表明我们模型在域内数据具有极高的填槽准确性,还说明了充分利用大规模数据和特定的微调策略可以提高模型的性能,使其能够更好地捕捉对话行为。

表一:In-Domain测试实验结果

2. 域外(Out-Of-Domain)测试

我们主要从槽位填充能力和生成问题的语义准确性两个方面对模型展开评测。对于模型填槽能力的评估,我们采用了在任务型对话系统槽位抽取任务中广泛应用的 F1 值和联合准确率。对于模型生成问题的语义准确性,我们采用人工评估方法来评价实验结果。

表二:Out-Of-Domain测试实验结果

实验结果表明,在填槽能力上TransferTOD-7B 的平均联合准确率(Joint Accuary)达到了 75.09%,槽位 F1 值达到了 96.20%。与之相比,即使是最强大的闭源大语言模型GPT-4,在这两方面的表现也只能达到 41.68%和 70.91%。

在语言能力上,TransferTOD-7B 在提问准确性和语言流畅度方面表现出色,在提问准确性上超过了所有的开源模型并仅次于 GPT-4。特别是在语言流畅度上,它的得分接近满分,超过了 GPT-4。

3. 二次微调

为了探究如何进一步提高模型的泛化性,我们在 3 个域外测试集中,采用了有限样本进行二次微调,尝试进一步提升模型在域外测试集的准确率。

我们选择在域外测试上表现较好的 GPT-3.5-Turbo 作为我们的对比模型,采用OpenAI的官方微调方式分别在三个领域外的场景中使用了50、100 和 200条数据进行微调。此外,在第三个场景(快递)中,我们还尝试了多种二次微调策略,具体包括混合 BELLE数据、添加域内数据和上采样域外数据,探究如何进一步提升模型在未知领域的性能。

表三:二次微调实验结果

实验结果表明,通过混合域外测试集的一小部分数据进行二次微调之后,模型性能超越了使用等量数据微调的GPT-3.5-Turbo。

二、消融实验部分

在构建数据集的过程中(第三章),我们进行了四个阶段的数据构建。为了验证数据集构建方法的有效性和可靠性,我们对每个构建阶段的数据集(TransferToD v1-v4)分别进行训练,分别得到 TransferTOD-7B-v1 至 v4 四个模型并逐一进行消融实验。

1. TransferTOD-7B-v1 vs TransferTOD-7B-v2:

从联合准确率和SlotF1 值比较模型的准确性。

从联合准确率来看,v1到v2的版本迭代能够实现高达 400%的性能提升;而在SlotF1 值上,模型实现了进一步的突破,得分从 80.53%提升到了 90.24%。

表四:噪声注入消融实验结果

这表明,通过添加干扰数据,模型在对话状态识别和槽位填充任务中的性能得以提升,能更准确地理解用户意图并作出恰当回应,显示出良好的稳健性。

2. TransferTOD-7B-v2 vs TransferTOD-7B-v3:

采用人工打分和GPT-4自动打分相结合的方式,评估模型的语义多样性。

图三:语言多样性对比消融实验结果

结果表明,不管是从人类评审员的视角还是 GPT 的角度,TransferTOD-7B-v3 在语言多样性的对比评测上胜率都高于 v2 模型。说明了采用GPT-3.5进行多样性扩充,可以有效地提升对话数据的回答种类,进一步贴近真实场景的用户回答。

3. TransferTOD-7B-v3 vs TransferTOD-7B-v4:

同样通过采用人工打分和GPT-4自动打分相结合的方式,评估模型在引导提问部分的语义流畅性。

表五:模型提问的语义流畅性的专家评分与GPT评分结果

结果表明,无论采用哪种评分方式,TransferTOD-7B-v4 在模型的语义流畅性上的得分情况始终优于 v3 模型,说明经过第四个阶段的人工检查能够进一步减少语义破碎的情况,提升对话数据的语言质量。

5.总结与展望‍‍‍

在本项工作中,我们提出了一个详细的多领域任务导向型中文对话数据构建流程,并基于此流程构建了中文数据集TransferTOD。该数据集真实地模拟了30个热门生活服务场景下共5760轮次的任务型人机对话。基于此数据集,我们采用全参数微调的方法训练出了TransferTOD-7B。

TransferTOD-7B在域外评估中的联合准确率达到了75.09%,Slot F1值达到了96.20%。在提问能力方面,TransferTOD-7B的准确性仅略逊于GPT-4,而其生成问题的流畅性则超越了我们测试的所有其他模型。实验结果表明,TransferTOD-7B具有出色的填槽能力和提问能力,并在下游场景中展现出良好的泛化能力,可广泛应用于信息收集场景。

此外,我们的研究发现,适当的二次微调可以进一步提升TransferTOD-7B模型的泛化能力。通过使用域外测试集的一小部分数据进行二次微调之后,模型性能超越了使用等量数据微调的GPT-3.5-Turbo。

点击链接阅读原文即可跳转模型链接:TransferTOD-7B

相关文章
|
2月前
|
机器学习/深度学习 监控
在进行多任务学习时,确保模型不会过度拟合单一任务而忽视其他任务
多任务学习(MTL)中,为避免模型过度拟合单一任务,可采取任务权重平衡、损失函数设计、正则化、早停法、交叉验证、任务无关特征学习、模型架构选择、数据增强、任务特定组件、梯度归一化、模型集成、任务选择性训练、性能监控、超参数调整、多任务学习策略、领域适应性和模型解释性分析等策略,以提高模型泛化能力和整体表现。
|
7月前
|
机器学习/深度学习 数据采集 前端开发
深入探讨模型泛化能力的概念、重要性以及如何通过交叉验证来有效评估和提升模型的泛化能力
【6月更文挑战第13天】本文探讨了机器学习中模型泛化能力的重要性,它是模型对未知数据预测的准确性。过拟合和欠拟合影响泛化能力,而交叉验证是评估模型性能的有效工具。通过K折交叉验证等方法,可以发现并优化模型,提高泛化能力。建议包括调整模型参数、选择合适模型、数据预处理、特征选择和集成学习。Python中可利用scikit-learn的cross_val_score函数进行交叉验证。
577 7
|
4月前
MAGICORE:基于多代理迭代的粗到细精炼框架,提升大语言模型推理质量
MAGICORE是一种多代理迭代框架,旨在改进大语言模型(LLM)的推理能力。该框架通过将问题分类为简单或困难,并分别为其应用粗粒度聚合或细粒度精炼,有效避免了过度精炼、错误定位及精炼不足等问题。MAGICORE包含Solver、Reviewer和Refiner三个角色,结合结果和过程奖励模型,实现有针对性的反馈和迭代精炼。实验结果显示,MAGICORE在多个数据集和模型上显著优于现有的聚合和精炼方法,提升了推理准确性和样本效率。
116 3
MAGICORE:基于多代理迭代的粗到细精炼框架,提升大语言模型推理质量
|
5月前
|
人工智能
ECCV 2024:让GPT-4图像理解更易出错,全新策略增强VLP模型对抗迁移性
【8月更文挑战第13天】在AI领域,视觉语言预训练(VLP)模型展现出了强大的图像与文本理解能力,但也易受多模态对抗样本攻击。为此,研究者提出了Cross-Clean-Adversarial Regional Diversification (CCAR-Div)策略,通过增强对抗样本多样性以提升VLP模型的对抗迁移性。此策略在对抗轨迹交集区域采样,增加样本多样性,并利用模态交互作用。经Flickr30K和MSCOCO数据集验证,CCAR-Div能有效提高跨模型与跨任务场景下的对抗迁移性,如使用ALBEF生成的对抗样本攻击TCL时,成功率高达95.58%。
151 60
|
5月前
|
机器学习/深度学习 监控
在进行多任务学习时,如何确保模型不会过度拟合单一任务而忽视其他任务?
在进行多任务学习时,如何确保模型不会过度拟合单一任务而忽视其他任务?
|
6月前
|
自然语言处理
什么是大模型的局限性?
【7月更文挑战第25天】什么是大模型的局限性?
346 3
|
8月前
|
机器学习/深度学习 人工智能 自然语言处理
【大模型】在使用大语言模型的过程中,我们需要考虑到哪些道德问题?
【5月更文挑战第5天】【大模型】在使用大语言模型的过程中,我们需要考虑到哪些道德问题?
【大模型】在使用大语言模型的过程中,我们需要考虑到哪些道德问题?
|
8月前
|
存储 机器学习/深度学习 人工智能
论文介绍:InfLLM——揭示大型语言模型在无需训练的情况下处理极长序列的内在能力
【5月更文挑战第18天】InfLLM是一种新方法,无需额外训练即可增强大型语言模型处理极长序列的能力。通过使用记忆单元存储长序列的远距离上下文,InfLLM能更准确地捕捉长距离依赖,提高对长文本理解。实验表明,InfLLM使预训练在短序列上的模型在处理极长序列时表现媲美甚至超过专门训练的模型。尽管有挑战,如动态上下文分割和记忆单元效率,InfLLM为长序列处理提供了有效且未经训练的解决方案。论文链接:https://arxiv.org/abs/2402.04617
200 3
|
8月前
|
机器学习/深度学习 人工智能 自然语言处理
论文介绍:自我对弈微调——将弱语言模型转化为强语言模型的新方法
【5月更文挑战第17天】论文《自我对弈微调》提出了一种新方法,名为SPIN,用于在无需额外人工标注数据的情况下增强大型语言模型(LLM)。SPIN利用自我对弈机制,让模型通过与自身历史版本交互生成自我训练数据,实现性能提升。该方法在多个基准数据集上表现出色,超越了传统监督微调和直接偏好优化。SPIN还为生成对抗网络研究提供了新思路,展示了自我对弈在强化学习和深度学习中的潜力。实验表明,SPIN有效提升了模型性能,为未来研究奠定了基础。[[arxiv](https://arxiv.org/abs/2401.01335v1)]
75 3
|
8月前
|
机器学习/深度学习 人工智能 安全
【大模型】LLM的广泛采用有哪些潜在的社会影响?
【5月更文挑战第7天】【大模型】LLM的广泛采用有哪些潜在的社会影响?

热门文章

最新文章