选择性提示微调:打造更个性化的 LLM 对话体验

摘要:在对话式 AI 中,利用人物设定和上下文理解来实现对话个性化至关重要。尽管大型语言模型 (LLM) 在响应连贯性方面有所改进,但有效的人物设定集成仍然是一个挑战。本文首先研究了两种常见的 LLM 个性化方法:文本提示和直接微调。我们观察到,文本提示通常难以生成与数据集中真实情况相似的响应,而直接微调往往会产生重复或过于通用的回复。为了缓解这些问题,我们提出了选择性提示微调 (SPT),它以选择性的方式对 LLM 进行软提示,以实现个性化对话。具体而言,SPT 初始化一组软提示,并使用可训练的密集检索器根据不同的输入上下文自适应地为 LLM 选择合适的软提示,其中提示检索器通过 LLM 的反馈动态更新。此外,我们还提出了上下文-提示对比学习和提示融合学习,以鼓励 SPT 增强个性化对话的多样性。在 CONVAI2 数据集上的实验表明,SPT 将响应多样性显著提高了 90%,同时还改进了其他关键性能指标。这些结果突出了 SPT 在促进引人入胜和个性化的对话生成方面的有效性。SPT 模型代码已公开发布,以供进一步探索。

1. 引言

对话系统中的个性化通过创建连贯且定制化的体验来增强用户交互。它涉及根据个人偏好、背景和实时上下文调整对话,确保每次对话都让人感觉与个人相关。这种量身定制的方法促进了用户与技术之间更深层次的联系,使交互更加直观和引人入胜。通过理解和预测用户需求,个性化对话可以提供的不仅仅是相关的响应;它们提供了一种无缝的对话体验,反映了人与人之间的互动,丰富了数字沟通的整体质量。

PersonaChat (Zhang et al., 2018) 已成为对话式 AI 个性化研究的关键数据集,它提供的人物设定以四到五句话详细描述了对话者的偏好和背景。这些设定指导对话代理创建既引人入胜又与其人物设定特征和先前对话上下文一致的对话。该领域已经出现了各种增强个性化的方法,例如注意力机制 (Huang et al., 2023b)、具有多重奖励的强化学习 (Song et al., 2021; Liu et al., 2020) 以及通过故事丰富人物设定 (Huang et al., 2023a),展示了在使交互更加个性化和有意义方面的创新广度。

近年来,大型语言模型 (LLM) (Zhang et al., 2022; Touvron et al., 2023) 的出现为对话生成开辟了新的途径,为创建符合人类偏好的对话提供了潜力。然而,充分利用 LLM 来实现 PersonaChat 中所示的个性化水平是一个很有希望但尚未得到充分探索的领域。目前,LLM 主要由直接文本提示或通过参数高效的微调(如提示微调 (Lester et al., 2021))来指导,提示微调仅针对特定任务微调几个虚拟标记,而不是整个 LLM。

然而,使用 LLM 设计个性化对话代理面临着两个主要挑战。主要问题在于对话中的多样化设定,其中包含各种各样的对话,每个对话都具有独特的人物设定和不同的对话长度。这种多样性需要理解数据中不同的对话设定。通过文本提示,很难指导模型生成与目标文本一致的所需响应。简单地通过提示微调对 LLM 进行微调而不进行仔细的对话设定分析,可能会产生缺乏特异性和深度的响应,从而导致生成的内容过于通用和平淡。

其次,另一个同样关键的挑战来自于用于基于人物设定的对话生成的数据集的固有限制。这些数据集通常规模较小且缺乏多样性,这可能会限制模型接触各种对话场景。当 LLM(例如 Llama2-7B (Touvron et al., 2023))在 PersonaChat 上通过可训练的软提示进行微调时,它们可能会过度拟合特定的人物设定。这种过度拟合体现在模型的响应中,这些响应变得重复且过度符合人物设定,通常以牺牲动态和上下文相关的交互为代价。尽管这可能会导致 F1 或 BLEU 等指标的改进,但它会损害对话的整体多样性和吸引力,从而破坏模型模拟真实人类对话的能力。

为了解决在使用 LLM 设计个性化对话时遇到的这两个挑战,我们提出了选择性提示微调 (SPT) 模型。具体来说,为了应对第一个挑战,在没有明确注释的情况下识别固有的数据模式至关重要。为了实现这一点,直观的方法是利用一组多个软提示来处理不同的对话设定,同时以参数高效的方式对模型进行微调。然而,如前所述,对话设定的注释缺失,甚至难以发现和注释。如果我们天真地同时调整所有提示而没有明确的区别,那么与调整一个软提示相比,这只会产生微不足道的差异。因此,为了构建有效的多个提示来发现个性化对话中的固有数据模式,所提出的 SPT 模型利用密集检索器根据给定的输入上下文自适应地从软提示组中选择合适的软提示。为了区分软提示的有效性,我们利用 LLM 的损失作为反馈来指导密集检索器的更新,而无需明确的注释。基于此,所提出的 SPT 模型可以发现与不同对话本质上相关的模式。通过这种方式,检索器和软提示组共同进化,受益于持续的交互,这些交互丰富了它们区分和生成多样化、上下文相关响应的能力。

为了解决 LLM 可能会过度拟合 PersonaChat 等小规模数据集的第二个挑战,所提出的 SPT 方法集成了两种互补机制:上下文-提示对比学习和提示融合学习。上下文-提示对比学习机制通过鼓励对不同的对话上下文使用不同的软提示来确保多样性,从而防止重复响应。同时,提示融合学习在反向传播过程中聚合所有提示预测,优化以获得统一的输出。这种双重策略不仅保留了跨上下文的响应多样性,还提高了整体模型性能,证明了它们在解决过度拟合问题的同时保持性能方面的协同有效性。

通过将上述两部分集成到 SPT 方法中,在具有 LLM(即 Llama2 (Touvron et al., 2023) 和 OPT (Zhang et al., 2022))的 CONVAI2 数据集 (Dinan et al., 2019) 上进行的实验不仅证明了响应多样性和吸引力的显着提高,还表明其他关键性能指标也有所提高。从数量上看,所提出的 SPT 模型在各种规模的模型中始终优于基线模型。此外,SPT 还提供了对不同对话场景的深刻见解,尤其是在模型的策略性提示选择方面。全面的消融研究突出了不同提示对特定对话上下文的适应性。

总的来说,我们的贡献可以概括如下:

  • 我们提出了一种新的 SPT 方法,通过将可训练的密集检索器与动态软提示选择相结合来提高对话个性化并增强多样性和吸引力。
  • 在所提出的 SPT 方法中,我们在统一的框架内引入了上下文-提示对比机制和提示融合学习,以促进提示的多样性和适应性。
  • 大量的实验表明了所提出的 SPT 方法的有效性。

2. 相关工作

2.1 个性化对话生成

CONVAI2 数据集是从 PersonaChat 数据集 (Zhang et al., 2018) 中整理出来的,为每个对话者提供了一个包含四到五句话的人物设定 (Dinan et al., 2019)。该数据集已被确立为个性化对话生成的基准。在该数据集的基础上,各种研究探索了不同的方法。例如,Wolf 等人 (2019) 扩展了 GPT2 模型 (Radford et al., 2019),并采用了特定于基于人物设定的对话的微调技术。不同的是,Song 等人 (2021) 采用了一种三方 BERT 架构 (Devlin et al., 2019),并通过强化学习对其进行了优化,以生成响应。类似地,Liu 等人 (2020) 通过应用强化学习和自定义奖励来改进对话生成过程,引入了一种发送器-接收器模型。Cao 等人 (2022) 利用模型无关的数据增强技术,使用 GPT2 和 BERT 等模型用伪样本丰富训练数据集。Huang 等人 (2023b) 开发了一种自适应注意力机制,可以连贯地整合人物设定和上下文信息。Huang 等人 (2023a) 提出了一种 LAPDOG 方法,该方法结合了外部故事语料库来增强人物设定,以生成更丰富的响应。与这些方法相比,所提出的 SPT 框架使用多个软提示来分解任务,而不需要额外的注释或依赖外部语料库,这使得在保持对话上下文完整性的同时生成多样化和引人入胜的响应成为可能。

2.2 语言模型和个性化

语言模型 (LM) 估计文本序列概率,最近的模型从数百万 (Radford et al., 2019; Zhang et al., 2022) 扩展到数十亿个参数 (Brown et al., 2020; Zhang et al., 2022),训练语料库现在包括大量的网络文本和指令数据 (Ouyang et al., 2022; Touvron et al., 2023)。这些进步显着提高了 LM 在各种 NLP 任务中的性能,尤其是在为对话应用程序生成高质量文本方面。虽然这些 LM 擅长提供以用户为中心的响应,但个性化仍然是一个挑战。普遍的策略是在 LM 中附加手动制作的硬提示,但这过于简单,并且会导致“迷失在中间”问题 (Liu et al., 2023)。当 LM 的输出在总体上是正确的但缺乏个性化上下文时,就会出现这种情况,难以将广泛的训练数据与特定的用户提示相协调。为了解决这个问题,所提出的 SPT 方法使 LLM 能够更有效地使其响应适应不同的个性化上下文。因此,SPT 促进了对话响应的生成,这些响应不仅一致,而且高度个性化,解决了在用户交互中保持上下文相关性的核心挑战。

3. 方法

在本节中,我们将介绍所提出的 SPT 方法。

3.1 问题设定

在基于人物设定的对话会话中,上下文表示为 C = {P, U},其中 P = {p1, . . . , pe} 表示由 e 个句子组成的人物设定(例如,4 ≤ e ≤ 5),为机器对话者 m 提供背景信息,U = {uh,1, um,1, . . . , uh,n} 表示由人类 h 发起的对话上下文,以捕获人类 h 和机器 m 之间的对话。目标是生成与机器人物设定 P 和上下文 U 一致的机器响应 r = um,n。

3.2 架构

图 1 展示了 SPT 框架,该框架由一个软提示组、一个密集检索器和一个冻结的 LLM 组成。在此框架内,密集检索器通过确定与给定上下文 C 最接近的匹配来从软提示组中选择合适的软提示。然后将选择的提示与 C 合并,以指导 LLM 生成引人入胜的响应。SPT 框架将软提示组和密集检索器限制为可训练的,同时保持 LLM 处于冻结状态,这可以显着减少内存占用并在训练期间优化资源利用率。

软提示组:软提示组表示为 SP = {sp1, …, spK},由 K 个随机初始化的软提示组成。每个提示都包含 L×D 个虚拟标记,其中 D 表示 LLM 的隐藏维度,L 表示提示的长度。这些提示在训练期间进行微调,而 LLM 保持冻结状态。

软提示选择:软提示选择由可训练的检索器 Ret(·, ·) 完成,它计算 LLM 获得的上下文嵌入 embC 与软提示组 SP 中每个候选 spi 之间的相似性得分 sC,sp = {sC,1, …, sC,K}。它根据计算出的相似性得分 {sC,i}Ki=1 对所有软提示进行排序,以确定最适合上下文的提示。

LLM:这里部署的 LLM 是具有冻结权重的仅解码器因果语言模型,并使用预训练模型进行初始化。

3.3 计算软提示与上下文之间的相似度

为了减少计算开销,密集检索器 Ret 利用两个线性层(即 linC 和 linsp)来计算相似性得分 {sC,i}。这些相似性得分是使用由 LLM 的词嵌入层 LLMemb 获得的上下文嵌入 embC ∈ RM×D 和 RL×D 中的软提示表示来计算的。相似性得分的计算公式如下:

embC = LLMemb(C),
vC = linC(embC),
vsp,i = linsp(spi),
v¯C = Avgdim=0(vC),
v¯sp,i = Avgdim=0(vsp,i),
srawc,i = (v¯C · v¯sp,i) / (∥v¯C∥2 · ∥v¯sp,i∥2),
sC,i = Softplus(srawC,i),

其中 Avgdim=0(·) 表示沿长度维度的平均运算,以解决 embC 和 spi 之间的序列长度差异,Softplus(·) 表示 softplus 激活函数,以确保 sC,i 保持在 [0, 1] 范围内并在训练期间增强数值稳定性,sC,i 表示上下文 C 和软提示 spi 之间的归一化相似性得分。

3.4 学习提示选择

在复杂的对话场景中,缺乏明确的注释对准确地指导检索器评估上下文和每个软提示之间的相似性提出了挑战。一种天真的方法是独立地微调整个软提示组,然后在解码过程中根据相似性得分选择候选提示,这可能会导致性能欠佳,类似于调整单个软提示。为了解决这个问题,我们利用来自软提示的上下文驱动的损失来改进相似性得分计算,并在训练期间实现明智的检索器决策,如接下来的两小节所述。

3.4.1 软提示损失

为简单起见,请考虑使用单个上下文的情况。给定来自人物设定和对话历史的上下文 cn 及其对应的真实响应 targetn,我们计算每个软提示的负对数似然损失,如下所示:

predi,n = LLM(concat(spi, cn)),
LLM
i = NLL(predi,n, targetn),

其中 concat(·, ·) 表示连接操作,LLM(·) 表示 LLM 的前向操作,它将文本序列作为输入并返回预测的标记概率分布作为输出,NLL(·, ·) 表示负对数似然损失。此过程生成 K 个损失 LLM = {LLLM1 , …,LLLMK },以衡量每个软提示的预测能力。

3.4.2 提示选择损失

在没有对话设定明确注释的情况下,更新检索器以识别给定上下文的最佳软提示是一项挑战。然而,通过在具有相同上下文的 LLM 中使用软提示,来自不同提示的损失可以作为确定哪个软提示最合适的指南。基于此考虑,我们使用软提示损失(即公式 (2) 中定义的 LLM)来评估 cn 中软提示组 SP 中的每个候选 spi。通过使用负语言模型损失(作为指导)和相似性得分之间的 KL 散度,可以使 LLM 的性能评估与检索器的相似性得分保持一致。通过用 Scn,SP = [Scn,sp1 , . . . , Scn,spK ] 表示 cn 与 SP 中每个 spi 之间的相似性得分,提示选择损失的公式如下:

LLM
normed = Softmax(−LLLM /τg),
Lselection = KL(Scn,SP ,LLM
normed),

其中 Softmax(·) 表示 softmax 函数,τg 是温度超参数,KL(·, ·) 表示 KL 散度。此损失对于确保密集检索器的选择与 LLM 明确一致至关重要,有效地反映了软提示在生成上下文相关且引人入胜的响应方面的性能。

3.5 上下文-提示对比学习

虽然上述损失有助于训练,但存在检索器经常检索单个提示并停滞在这种次优状态的风险。为了缓解这种情况并促进提示多样性以检索更多提示,我们提出了一种上下文-提示对比损失。此损失通过根据不同上下文之间的文本相似性调整相似性得分来改进提示选择,从而防止始终选择单个软提示并促进不同的选择。具体来说,上下文-提示对比损失会动态地重新校准上下文内容对之间的相似性得分,同时考虑到它们的文本相似性。在数学上,上下文-提示对比损失的公式如下:

Lcon(sci, scj) = (
1 − cos(sci, scj) if M(ci, cj) > Γ
max(0, cos(sci, scj)) otherwise

其中 M(·, ·) 表示距离函数(例如 BLEU (Papineni et al., 2002)),Γ 表示阈值,sci 表示上下文 ci 与软提示组中软提示之间的余弦相似性得分向量,cos(·, ·) 表示余弦相似性。

函数 Lcon 会放大相似上下文对的余弦相似性(即 M(ci , cj ) > Γ),并抑制不相似上下文对的余弦相似性(即 M(ci , cj ) ≤ Γ)。这种对比策略不仅确保了检索器与 LLM 评估的一致性,而且还促进了不同对话上下文之间的丰富多样性和独特性,显着增强了框架的整体适应性。

3.6 提示融合学习

为了优化软提示的有效性,我们引入了一种提示融合学习损失。此损失对来自软提示组中所有软提示的预测概率进行平均,旨在聚合与期望输出紧密一致的统一结果。此损失中的平均运算可以消除单个提示的方差和偏差,从而提高整体预测的准确性和可靠性。形式上,此损失的公式如下:

pfused = (1/K) * Σ_{i=1}^{K} LLM(concat(spi, cn))
Lfusion = NLL(pfused, targetn).

通过利用不同提示的集体优势,此损失增强了模型生成上下文相关响应的能力。

3.7 总体目标函数

SPT 框架依赖于上述损失函数的和谐集成,每个损失函数都解决了不同的方面。软提示损失(即 LLM)确保了 LLM 的保真度,提示选择损失(即 Lselection)使检索器的相似性评估与 LLM 的输出保持一致,上下文-提示对比损失(即 Lcon)促进了提示选择的多样性,提示融合学习损失(即 Lfusion)增强了所有软提示的整体性能。SPT 方法的总体目标是最小化一个包含这些单个组件的复合损失函数。形式上,SPT 框架的总体目标函数 LTotal 的公式如下:

LTotal = Σ_{i=1}^{K} LLM
i + λ1 * Σ_{i,j=1, i≠j}^{K} Lcon(sci, scj)
+ λ2 * Lselection + λ3 * Lfusion,

其中 λ1、λ2 和 λ3 是控制每个损失组件相对贡献的超参数。在我们的实验中,我们简单地将 λ1、λ2 和 λ3 设置为 1,这可以实现良好的性能。

通过在训练期间最小化 LTotal,SPT 框架可以有效地平衡对 LLM 的保真度、检索器的准确性和提示选择的多样性,从而形成一个自适应对话生成系统。

3.8 推理

在推理过程中,密集检索器根据给定的上下文从软提示组中选择最合适的软提示。然后,将此选定的提示与上下文一起输入 LLM,以解码最终结果。形式上,对于给定的上下文 C、软提示组 SP 和密集检索器 Ret,推理过程如下:

i∗ = arg max_{1≤i≤K} Ret(C, SP),
pred = LLM(concat(spi∗ , C)),

其中 spi∗ 表示索引为 i∗ 的选定软提示,pred 表示 LLM 生成的响应。

4. 实验

在本节中,我们将对所提出的 SPT 模型进行实证评估。

4.1 数据集

我们在 ConvAI2 数据集 (Dinan et al., 2019) 上进行了实验,该数据集是个性化对话生成的基准。它包含 8,939 个训练对话和 1,000 个验证多轮对话,这些对话来自众包工作者。每个对话都包含人物设定,每个人物设定都有四到五句话来描述每个说话者的背景,以及两个对话者之间的对话历史。按照 (Liu et al., 2020; Huang et al., 2023a) 的做法,我们的实验采用了一种自我人物设定,其中只显示说话者的设定,而将对方的设定隐藏起来。

4.2 实验设置

所有实验都基于两个不同规模的 LLM,包括 OPT (Zhang et al., 2022) 和 Llama2 (Touvron et al., 2023),它们是所提出的 SPT 方法的基础模型。我们使用标准高斯分布随机初始化软提示。对于 OPT 模型,我们将软提示标记长度设置为 8,对于 Llama2 模型,我们使用 1 的标记长度。软提示组由 K = 4 个候选提示组成。不同 LLM 的学习率记录在附录的表 6 中。公式 (4) 中的阈值 Γ 设置为 20。

4.3 评估指标

我们使用一套成熟的基于人物设定的对话生成评估指标来评估我们的模型,包括 Unigram F1、BLEU、ROUGE、BERT Score 和文本 unigram/bigram 独特性(分别表示为 DIST-1 和 DIST-2)。Unigram F1 衡量的是标记级别的精确率和召回率的调和平均值。BLEU (Papineni et al., 2002) 和 ROUGE (Lin, 2004) 评估生成的文本和目标参考之间的 n-gram 重叠。BERT score (Zhang et al., 2019) 使用 deberta-xlarge-mnli 模型(推荐使用,因为它比 roberta-large 性能更好)来捕获文本对的语义相似性。Unigram 和 bigram 独特性(分别表示为 DIST-1 和 DIST-2)衡量生成的文本的多样性,其中 DISTAVG 表示 DIST-1 和 DIST-2 的平均值。

4.4 结果

表 1 表明,所提出的 SPT 在各种指标上始终优于基线模型。值得注意的是,OPT-2.7B-SPT 和 Llama2-7B-SPT 模型的性能分别显著提高了 33.04% 和 26.26%。这些改进证实了所提出的 SPT 方法在促进生成更多样化和个性化的响应方面的有效性。

对于基线模型,我们可以看到语言质量和多样性之间存在一种常见的权衡。具体来说,Llama2-7B 模型的 F1 得分为 17.12,BLEU 得分为 1.99,但其多样性似乎不太好(DIST-1 为 2.80,DIST-2 为 12.91)。这与 OPT-125M 模型形成对比,后者具有较低的语言得分(F1 为 10.79,BLEU 为 1.61),但具有较高的独特性(DIST-1 为 3.94,DIST-2 为 13.67)。

与这些模型不同的是,所提出的 SPT 方法同时显著提高了多样性和语言质量,从而避免了语言增强和多样性之间的常见折衷。

5. 消融研究

在本节中,我们将对所提出的 SPT 方法进行消融研究。

5.1 训练损失

表 2 显示了不同训练损失对性能的影响。省略提示融合损失会在一定程度上增加 DISTAVG 方面的预测多样性,但会降低 F1、BLEU、ROUGE 和 BERT Score 方面的整体性能。一个可能的原因是提示融合损失以牺牲多样性为代价来提高语言质量。排除上下文-提示对比损失会导致所有评估指标的下降,这表明了上下文-提示对比损失的有效性。缺少提示选择损失会显著影响预测多样性,导致模型倾向于单个软提示,类似于使用单个提示。

上述结果强调了每个损失在提高模型性能和响应多样性方面的重要性。

5.2 不同上下文中的提示使用

为了查看对话过程中提示的使用情况,我们在图 2 中绘制了在整个对话过程中每次选择每个软提示的次数。根据图 2,我们可以看到,在 OPT-1.3B-SPT 模型中,提示 sp3 主要用于对话的初始阶段,sp2 用于对话的中间阶段,sp1 用于对话的后期阶段。对于 Llama2-7B-SPT 模型,我们也有类似的观察结果,这表明软提示在对话的不同阶段具有不同的功能。

此外,图 3 还探讨了不同提示生成的响应的风格方面,即生成的响应中的表情符号。在 Llama2-7B-SPT 模型中,sp2(通常用于对话的初始阶段)倾向于在生成的响应中生成表情符号。不同的是,sp3(通常用于对话的后期阶段)倾向于在解码的响应中生成很少的表情符号。这种现象表明在对话的不同阶段会策略性地使用表情符号。

5.3 软提示候选提示的数量

表 3 显示了软提示的数量(即 K)对模型性能的影响,以不同的指标来衡量。虽然最佳性能出现在不同 K 值的不同性能指标上,但不同指标的最佳性能通常出现在 K ≤ 4 时,这可能是由于 CONVAI2 数据集和所用 LLM 的规模所致。因此,在所有实验中,默认情况下 K 设置为 4。

5.4 与更长提示微调的比较

如表 4 所示,具有四个单标记软提示的 SPT 方法优于四标记提示微调方法,突出了所提出的 SPT 方法的有效性。此外,SPT 在 BLEU、ROUGE 和 DISTAVG 方面优于八标记提示微调方法,表明了其在可训练参数较少的情况下的有效性。

5.5 与 LoRA 的比较

由于 LoRA (Hu et al., 2022) 是另一种参数高效的微调方法,并且已被证明可以有效地将 LLM 用于不同的应用程序,因此我们在可训练参数数量相当的情况下,将所提出的 SPT 方法与基于 Llama2-7B 模型的 LoRA 进行了比较。如表 4 所示,LoRA 在 BLEU 得分和 DISTAVG 方面有所改进,但在 ROUGE-L、BERTF1 和 F1 得分方面低于四标记提示微调方法。此外,所提出的 SPT 方法在所有评估指标上都优于 LoRA,突出了其优越的性能,并肯定了其在可训练参数数量相当的情况下的有效性。

5.6 与上下文学习的比较

为了将性能与 LLM 上的上下文学习 (ICL) 进行比较,我们将 SPT 方法与带有指令的零样本 GPT-3.5 turbo 进行了比较。根据表 4 中显示的结果,我们可以看到 ICL 在多样性得分(即 DISTAVG)方面获得了更高的分数,但在其他指标方面得分较低。这意味着,如果不进行适当的微调,仅仅提示更强大的 LLM 很难获得与微调方法相当的性能。

5.7 预测和人物设定之间的文本重叠

表 5 显示了不同模型的预测与系统人物设定描述之间的 BLEU 得分。我们可以看到,提示微调方法与系统人物设定的文本重叠度较大,通常会导致与人物设定一致的重复响应。相比之下,所提出的 SPT 方法与人物设定的语言相似性较低,这会导致更多样化和更有效的响应。这表明,所提出的 SPT 方法有效地平衡了人物设定的一致性和响应的多样性,避免了过度重复的缺陷。

6. 结论

在本文中,我们介绍了 SPT,这是一种通过选择性提示微调来生成个性化对话的策略性方法。通过联合训练一个软提示组和一个密集检索器,SPT 可以熟练地自动导航各种对话场景,在丰富响应多样性的同时提高语言和基于神经网络的指标。在 CONVAI2 数据集上进行的实验突出了 SPT 识别内在对话设定的能力,表明了其在生成上下文相关对话方面的有效性。

致谢

这项工作得到了 NSFC 一般资助 62076118 和深圳市基础研究项目 JCYJ20210324105000003 的支持。

局限性

本文介绍了选择性提示微调在个性化对话生成中的应用。通过多样化的提示,与单一提示微调相比,LLM 可以生成更加多样化和引人入胜的响应。然而,尽管采用了上下文-提示对比机制和提示选择损失,但检索器仍然存在陷入狭窄的软提示选择的风险(例如,给定 Llama2-7B 中的 K = 4,在推理过程中仍然只有一个软提示被选择了一次)。这种限制可能是由于使用了较大的 K 值造成的,这使得确定 K 值变得很重要。同时,在上下文-提示对比损失中,简单地使用 BLEU 来衡量文本相似性可能不足以区分两个对话之间的差异,可以通过 LLM 支持的神经网络指标来增强,这些指标可以从语义和语言角度区分文本。此外,在 Llama2-7B 的解码文本中,表情符号的存在在 PersonaChat 数据集中没有设计,这值得进一步研究。

伦理声明

本研究将个人数据的使用限制在 CONVAI2 数据集中的虚构人物设定中,避免了对真实个人数据的处理或存储。SPT 中的所有软提示都是基于向量的参数,不会直接编码或表示任何个人的个人信息。当应用于现实世界的应用程序时,必须优先考虑数据隐私,确保用于个性化对话的个人信息来源合乎道德,并在知情同意的情况下使用。

附录

A.1 完整的训练过程

完整的训练过程在算法 1 中进行了描述。

A.2 SPT 训练的详细设置

共享参数

超参数
K4
优化器Adam
τg1
λ11
λ21
λ31
λ41

Llama2-7B-SPT

超参数
提示长度1
学习率0.01

OPT-2.7B

超参数
提示长度8
学习率0.001

OPT-1.3B

超参数
提示长度8
学习率0.01

OPT-125M

超参数
提示长度8
学习率0.01

表 6 列出了用于训练 SPT 的详细超参数。共享参数用于所有模型训练。同时,Llama2-7B-SPT、OPT-2.7B、OPT-1.3B 和 OPT-125M 表示在特定模型训练中使用的特定超参数。我们在八个 Tesla-V100 32GB GPU 上训练 SPT 模型。对于除 OPT-125M-SPT 之外的每个 SPT 模型,我们训练一个 epoch,然后进行评估。对于 OPT-125M-SPT,我们训练 15 个 epoch,直到它收敛。

A.3 消融研究的细节

表 8 详细介绍了我们消融研究的结果。具有四个单标记软提示的选择性提示微调 (SPT) 的性能优于传统的四标记和八标记软提示微调方法,突出了我们方法的有效性。在参数设置相似的情况下,与 LoRA 的比较分析表明,SPT 在所有评估指标上都优于 LoRA,加强了其效率。此外,与 GPT-3.5 Turbo 的上下文学习 (ICL) 相比,SPT 在 F1 和 BLEU 得分方面有显著提高,这表明 ICL 尽管在文本输出方面具有更高的多样性,但在与目标响应的一致性方面存在挑战。

A.4 人工评估

我们对三个指标进行了人工评估:人物设定一致性、上下文一致性和吸引力。每个指标都分为三个等级:0、1、2。对于人物设定一致性,0 表示与人物设定相矛盾,1 表示与人物设定无关,2 表示与人物设定一致。对于上下文一致性,0 表示与之前的对话历史相矛盾,1 表示与之前的对话无关,2 表示与之前的对话一致。对于吸引力,0 表示无聊的响应,1 表示安全但平淡的响应,2 表示有趣的响应。我们从 Llama2-7B-SPT 和 Llama2-7B-PT 中随机抽取了 100 个响应。结果如表 7 所示。我们提出的 SPT 在所有三个指标上都优于 PT,表明了我们的方法在这三个方面的有效性。

A.5 在更大数据集上的实验结果

为了进一步评估 SPT 框架的效率和可扩展性,我们在 DailyDialog 数据集上进行了额外的实验,该数据集是一个比 PersonaChat 更大和更复杂的对话数据集。值得注意的是,DailyDialog 数据集的条目中缺乏明确的人物设定描述,这对个性化技术提出了独特的挑战。DailyDalog 的结果如表 9 所示。

结果分析:实验设置包括在 DailyDialog 数据集上使用软提示微调 (PT) 和 SPT 策略分别执行四次独立运行。经验证据清楚地表明,在所有评估指标上,SPT 框架都优于传统的 PT 方法。具体来说,SPT 方法表现出显著的性能改进,展示了其在处理更复杂和更广泛的数据集时的适应性和有效性。评估指标总结在下表中,我们可以观察到在关键领域(如 F1 得分、BLEU、ROUGE 和基于 BERT 的指标)的显着改进,突出了 SPT 在各种对话任务中的潜在适用性。

A.6 与检索增强生成 (RAG) 的比较

概念差异:RAG 和 SPT 在方法上存在根本差异。RAG 通过整合来自数据库的外部信息来增强输入,侧重于外部数据的价值。相比之下,SPT 侧重于根据给定的上下文输入选择最佳软提示。虽然它们的操作方式不同,但它们并没有内在的冲突,可以被视为互补的,因为 SPT 可以将检索增强的输入作为一个整体来处理上下文。SPT 有可能全面整合 RAG 丰富后的输入。RAG 和 SPT 相结合的探索超出了本工作的范围,留待未来研究。

RAG 实验:我们在 Llama2-7B 模型下对 RAG 框架进行了实验,以将 SPT 与 RAG 进行比较。我们观察到,由于 RAG 依赖于训练集进行检索,因此 K(检索内容的数量)的选择至关重要。较大的 K 值会导致连接的内容超出上下文窗口大小,从而显着增加计算资源需求。

RAG 的高效训练设置:为了提高效率,我们在 RAG 实验中将 K 设置为 1,侧重于检索语义上最相似的对话来增强当前上下文。使用的检索器是来自 Facebook 的 Contriever,它以能够根据文本语义检索高度相关的内容而闻名。这种设置使我们能够在类似的计算约束下直接比较 RAG 和 SPT 的效率和可扩展性。

比较结果:RAG 设置下一个 epoch 的训练时间约为 14 小时,而 SPT 为 7 小时。这突出了 SPT 的效率和可扩展性,尤其是在资源受限的环境中。详细结果如表 10 所示。在性能方面,SPT 在几乎所有指标上都优于 RAG。这表明 SPT 不仅速度更快,而且还能产生更好的结果。RAG 唯一略胜一筹的地方是创建了更多样化的响应(DIST-1 和 DIST-2 指标)。这种比较表明,SPT 比 RAG 更高效,而且通常更有效。然而,这两种方法并不一定相互矛盾。相反,将这两种方法结合起来可以获得更好的性能。我们可以使用 RAG 获取适当的上下文,并使用 SPT 微调响应,从而创建更准确、更具吸引力的对话。这种方法在改进对话式 AI 系统方面具有很大潜力。

A.7 SPT 稳定性实验

为了评估 SPT 的稳定性,我们进一步进行了额外的实验,旨在测试系统对干扰的适应能力。具体来说,我们在推理过程中对相似性得分引入了均值为 0、标准差为 1 的高斯噪声,以模拟软提示选择过程中不准确的影响。此外,我们添加了一个参数 α 来控制噪声的强度。形式上,受干扰的选择得分将变为 score = score + α * noise。本实验的目的是观察我们的检索器在不太理想的条件下的稳定性。这些实验的详细结果将包含在我们的修订版中。

结果分析:表 11 中显示的结果证明了噪声对检索性能的影响。引入轻微的噪声(例如 0.01 到 0.1)会导致性能下降可以忽略不计,一些指标甚至略有改善。然而,当噪声水平增加到 1.0 时,尽管 DIST-2 显着增加,但性能仍然下降。这种模式表明,虽然我们的 SPT 框架对轻微的干扰表现出良好的稳定性,但其性能会受到严重干扰的不利影响。

A.8 检索器稳定性实验

为了评估我们的密集段落检索系统的稳健性,我们在 LLMnormed 损失中引入了标准差为 α 的高斯噪声,α 从 [0.001, 0.01, 0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8, 0.9, 1.0] 中选择,用于检索器的训练阶段。因此,受干扰的 LLMnormed 将变为 LLMnormed + α * noise。这种方法旨在模拟软提示选择过程中潜在的干扰,从而测试我们的检索器在对抗条件下的稳定性和适应能力。

对抗性噪声对检索器稳健性的影响: 引入高斯噪声是为了干扰检索器的更新过程,使我们能够观察其在干扰下的行为和适应性。具体来说,我们将噪声添加到 LLM_normed 中,以使 KL 散度的更新变得嘈杂。不同级别的噪声强度代表了潜在的对抗性影响的广泛范围,从轻微到严重的干扰,即 [0.001, 0.01, 0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8, 0.9, 1.0]。

结果和见解: 根据表 12,引入最轻微级别的噪声 (0.001) 会导致几个关键指标的性能提高,包括 F1、ROUGE-1、ROUGE-L、BERT Score 和 DIST-2。这种改进表明,轻微的扰动可能在训练过程中充当有益的正则化器,从而提高性能。相反,超过最轻微级别的噪声会引入数值不稳定性(表现为上溢或下溢,特别是因为我们使用 fp16 进行 SPT 训练)。这种不稳定性会破坏训练过程,导致结果标记为 NaN(非数字)。

A.9 案例研究

图 4 显示了 SPT 和提示微调模型之间的比较。SPT 在关于恐怖电影的对话中独特地融入了恐怖相关的表情符号,而提示微调模型倾向于重复人物设定内容。这种趋势在随后的对话中仍在继续。在最后一个案例中,SPT 巧妙地将人物设定细节融入其响应中,与提示微调模型更通用的回复相比,提供了更具吸引力和个性化的对话体验。

总结

选择性提示微调 (SPT) 为个性化对话生成提供了一种有前景的方法。SPT 通过联合训练软提示组和密集检索器,自动适应不同的对话场景,在提高语言和基于神经网络指标的同时,丰富了响应的多样性。实验结果证明了 SPT 在生成更具吸引力和个性化的对话方面的有效性,为未来在对话式 AI 领域的研究开辟了新的途径。

未来方向

  • 更细粒度的提示选择: 探索更精细的机制来选择软提示,例如考虑对话的主题或情感。
  • 多模态个性化: 将 SPT 扩展到多模态对话生成,整合文本、图像和语音等多种模态信息。
  • 跨语言泛化: 研究 SPT 在不同语言和文化背景下的泛化能力,促进跨语言对话个性化的发展。
  • 21
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

步子哥

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值