摘要
随着大型语言模型 (LLM) 的快速发展和不断变化的实际需求,找到一种高效且有效的对齐方法变得越来越重要。
然而,当前对齐方法的复杂性和部署场景中快速迭代需求之间的矛盾,需要开发一种模型无关的对齐方法,这种方法能够在这些约束条件下运行。
在本文中,我们介绍了
对齐器
,这是一种新颖且简单的对齐范式,它使用小型模型学习首选答案和非首选答案之间的校正残差。
对齐器
被设计为一个模型无关的即插即用模块,可以仅通过一次性训练直接应用于各种开源和基于 API 的模型,使其适合快速迭代。
值得注意的是,
对齐器
可以应用于任何强大的、大规模的 upstream 模型。
此外,它甚至可以迭代地利用修正后的响应作为合成的人类偏好数据来 bootstrap upstream 模型,突破模型的性能上限。
我们的实验表明,在 3H 维度(帮助性、无害性和诚实性)上评估,通过在 11 个不同的 LLM 上部署相同的
对齐器
模型,可以提高性能。
具体而言,
对齐器
-7B 在所有测试的 LLM 上平均提高了 68.9% 的帮助性和 23.8% 的无害性,同时也有效地减少了幻觉。
在 Alpaca-Eval 排行榜上,将
对齐器
-2B 堆叠在 GPT-4 Turbo 上,使其 LC 胜率从 55.0% 提高到 58.3%,超过了 GPT-4 Omni 的 57.5% 胜率(社区报告)。
1
引言
最近,LLM 与人类意图和价值观的对齐引起了广泛关注
[1]
。
在各种方法中,监督微调 (SFT) 和基于人类反馈的强化学习 (RLHF)
[2, 3]
已成为实际方法。
SFT 利用人类演示对 LLM 进行微调,并指导模型执行所需的操作,而 RLHF 则基于人类偏好训练奖励模型 (RM),并通过强化学习 (RL) 方法使用来自 RM 的反馈信号对 LLM 进行微调
[4]
。
尽管这些方法
[5, 6, 7, 8, 9]
在满足 3H(有用性、无害性和诚实性)标准
[10]
方面非常有效,但它们也面临着一些挑战,例如高昂的训练资源消耗和难以确保一致的性能
[11]
。
同时,在现实场景中,对齐要求是动态变化的
[12]
。
模型可能会遇到对齐训练之外的情况,并表现出不良行为,而这些行为难以通过诸如 SFT 和 RLHF 这样耗时的技术来立即解决。
我们能否开发一种高效、轻量级且与模型无关的对齐方法?
图 1
:
(左)
Aligner
模块的架构及其在语义空间中的行为示例。
作为一个即插即用的模块,
Aligner
堆叠在上传流大型语言模型之上。
Aligner
将上传流模型的初始答案重新分配为更有用且更无害的答案,从而使组合后的大型语言模型响应与人类意图保持一致。
(右)
Aligner
在架构和功能方面类似于大型语言模型的残差学习增强器。
就像残差块通过捷径添加修改而不改变基础结构一样,
Aligner
使用
复制和修正
方法来改进原始答案。
这种类比突出了
Aligner
在保留上传流模型参数的同时增强其与期望结果保持一致的双重作用。
受残差学习的启发
[13]
,我们简化了对齐过程,重点关注复制和修正操作。
我们引入了高效的对齐范式,即
Aligner
,它不涉及任何强化学习过程,如图
1
所示。
具体而言,
Aligner
在偏好数据集上进行了微调,以学习首选响应和非首选响应之间的修正残差,然后将其堆叠在上传流模型上,以实现修正对齐。
这里,上传流大型语言模型指的是目标对齐的模型,它与强化学习人类反馈过程中的源模型进行比较。
与需要训练和加载多个模型的强化学习人类反馈方法相比,
Aligner
只需要一个额外的模块堆叠在上传流大型语言模型上。
此外,我们方法的计算资源需求仅取决于所需
Aligner
的有效性,而不是上游 LLM 的参数大小。
从表示学习
[14, 15, 16]
的角度来看,
Aligner
表现出可解释的残差行为。
如图
4
所示,
Aligner
根据早期层中原始答案的质量来决定对原始响应的参考程度和额外校正的程度,而其中间层和后期层用于实现此
决策
。
该机制比直接学习从输入查询到对齐答案的映射更简单。
这种简单性表明,小型
Aligner
也可以学习复杂的校正模式,这证明了它们能够以相对较小的推理能力来引导强大的模型,这进一步强调了我们的
Aligner
范式 的优越性。
总之,
Aligner
具有以下几个显著优势:
-
•
资源效率高。
由于没有演员、评论家、奖励和参考模型等额外模型,我们的
Aligner
是一个在偏好数据集上训练的小型模型,用于学习校正残差。
具体来说,在对齐 70B LLM 时,
Aligner
-7B 比 DPO 小 11.25 倍,比 RLHF 小 22.5 倍。
1
关于训练参数。
-
•
即插即用。
Aligner
的即插即用性质和模型无关性使其成为 API 模型(没有参数访问权限)的理想选择。
一旦经过训练,
Aligner
就可以应用于各种上游 LLM,而无需调整参数。
实验表明,
Aligner
-7B 模型增强了各种
11
模型(包括基于 API 的模型/开源安全对齐模型/安全不对齐模型)的帮助性和无害性。
实验结果表明,
Aligner
-7B 将 GPT-4 的有用性提高了 17.5%,其无害性提高了 26.9%。
2
对准器
预备知识:监督微调 (SFT)
SFT 旨在使用监督学习(具体而言,最大似然估计)在一个精心策划的高质量数据集
𝒟
SFT
=
{
𝒙
(
i
)
,
𝒚
(
i
)
}
i
=
1
N
上微调预训练的 LLM 以生成目标答案。
目标是获得一个具有以下训练目标的模型
π
𝜽
SFT
:
同样,如图
1
所示,
Aligner
通过条件生成重新分配模型的答案来改善模型与人类意图之间的对齐。
在实际实现中,
Aligner
仅需对 SFT 训练代码进行微调(只需更改一行代码),如附录
E
中所述。
总的来说,
Aligner
训练的整个流程可以概括如下:基于偏好数据集,对模型进行微调以学习偏好响应和非偏好响应之间的校正残差。
只需进行一次训练,该模型即可部署到任何模型上以实现校正对齐。
模型训练
基于上述步骤,我们构建了数据集
ℳ
=
{
𝒙
(
i
)
,
𝒚
o
(
i
)
,
𝒚
c
(
i
)
}
i
=
1
N
,其中
𝒙
表示用户的查询,
𝒚
o
是原始答案,而
𝒚
c
是根据既定原则校正后的答案。
模型训练过程比较简单。
我们训练了
Aligner
,这是一个由
ϕ
参数化的条件 seq2seq 模型
μ
ϕ
(
𝒚
c
|
𝒚
o
,
𝒙
)
,以将初步答案
𝒚
o
重新分配到对齐的答案
𝒚
c
。
如图
1
所示,基于上游 LLM
π
𝜽
对齐答案的组合答案生成过程为:
其中
𝒚
k
是上游 LLM
π
𝜽
生成的可能答案。
通过计算整个数据集
ℳ
上的经验损失,我们可以从方程(
2
)获得方程(
3
):
等式 (
3
) 中的第二项与
Aligner
参数无关,
Aligner
的训练目标可以推导出为等式 (
4
):
通过优化此目标,我们实际上优化了 SFT 训练目标的上限,这确保了
𝒚
c
的有效学习。
值得注意的是,
Aligner
在训练和推理阶段都不需要访问上游 LLM
π
𝜽
的参数。
Aligner
接收用户的查询
𝒙
和上游 LLM
π
𝜽
生成的初始答案
𝒚
o
,然后生成与人类价值观更一致的答案
𝒚
c
。
改进现有答案
𝒚
o
使
Aligner
能够专注于如何与人类价值观保持一致,而不是如何直接回答给定查询。
这极大地降低了我们模型容量的要求,使我们能够仅用一个小模型来实现预期的对齐性能。
Aligner
的训练策略:残差校正
我们开发了一种优化的训练策略,称为
Residual Correction
,它利用答案 (
𝒚
o
) 和校正 (
𝒚
c
) 之间的语义校正残差,如图
1
所示。
具体而言,我们使用部分训练数据构建了一个 Q-A-A 数据集,以初步训练一个身份
Aligner
,这个过程我们称为
warm-up
。
随后,我们利用 Q-A-C 数据集进行训练,在身份
Aligner
的基础上进行构建。
我们在 50K 训练数据集上的实验细节见第
3.3
节。
在对齐领域之外,ResNet
[13]
也采用类似的方法来缓解由神经网络深度增加引起的梯度消失问题。
Aligner
和 RLHF/DPO 之间的资源分析
与 RLHF 和 DPO
[6]
相比,
Aligner
在训练资源需求方面显示出显著优势。
在训练资源方面,
Aligner
-7B 在类似的性能条件下比其他方法更有效。
具体而言,对于 7B 源模型,DPO 需要比
Aligner
多 1.125 倍的资源,而 RLHF 需要多 2.25 倍的资源。
此外,随着源模型规模的增长,其他方法的资源需求急剧增加。
对于一个 70B 模型,DPO 需要比
Aligner
多 11.25 倍的资源,而 RLHF 需要多 22.5 倍的资源。
然而,由于
Aligner
对这些变化不敏感,其训练资源需求无论源模型规模如何变化都保持不变,这表明
Aligner
是一种高效且轻量级的对齐范式。
3
实验
表 1
:
Aligner
模型的性能。
结果表明,
Aligner
在所有设置中都取得了显著的性能。
本表中的所有评估都是基于将各种模型与 Aligners 集成,与原始模型进行比较,以量化
3H
标准的百分比增加。
当与各种上游模型集成和评估时,
Aligner
只需要一次训练会话(
即
,
Aligner
可以以零样本的方式运行并增强所有上游模型的性能)。
|
|
Helpful
|
Harmless
|
Honest
|
|
|
E-Dialogue
|
DialogSum
|
Beavertails
|
HarmfulQA
|
TruthfulQA
|
Aligner
|
Upstream LLM
|
Empathy
↑
|
Reasoning
↑
|
Helpful
↑
|
Harmless
↑
|
Helpful
↑
|
Harmless
↑
|
Reliable
↑
|
2B
|
GPT-4
|
26.0%
|
2.3%
|
8.0%
|
28.6%
|
12.5%
|
29.2%
|
-0.5%
|
GPT-3.5
|
26.3%
|
3.3%
|
3.1%
|
7.6%
|
3.6%
|
4.4%
|
0.7%
|
Claude 2
|
83.1%
|
6.0%
|
38.3%
|
15.1%
|
48.0%
|
14.4%
|
0.7%
|
2-9
|
Beaver-7B
|
95.3%
|
60.7%
|
9.9%
|
12.1%
|
7.8%
|
7.6%
|
5.4%
|
|
Alpaca-7B
|
97.7%
|
58.5%
|
5.8%
|
45.0%
|
22.6%
|
65.3%
|
10.0%
|
|
Vicuna-7B
|
44.9%
|
58.5%
|
16.9%
|
15.8%
|
17.7%
|
27.1%
|
4.9%
|
|
Vicuna-13B
|
53.9%
|
24.0%
|
19.4%
|
14.9%
|
17.1%
|
16.1%
|
7.6%
|
|
Vicuna-33B
|
45.7%
|
39.3%
|
24.4%
|
52.4%
|
26.9%
|
32.6%
|
5.1%
|
|
Llama2-7B-Chat
|
88.1%
|
69.5%
|
25.4%
|
7.2%
|
11.3%
|
25.9%
|
3.9%
|
|
Llama2-13B-Chat
|
85.3%
|
53.4%
|
18.4%
|
12.3%
|
18.6%
|
27.6%
|
1.2%
|
|
Llama2-70B-Chat
|
86.7%
|
47.9%
|
17.8%
|
5.5%
|
21.3%
|
7.2%
|
10.8%
|
|
Average
|
66.6%
|
36.4%
|
17.0%
|
19.7%
|
18.8%
|
23.4%
|
4.5%
|
7B
|
GPT-4
|
27.7%
|
6.2%
|
18.6%
|
25.8%
|
16.3%
|
28.0%
|
-1.2%
|
GPT-3.5
|
25.6%
|
6.8%
|
9.3%
|
9.3%
|
8.4%
|
7.0%
|
0.0%
|
Claude 2
|
90.4%
|
10.4%
|
58.4%
|
30.3%
|
69.4%
|
42.1%
|
2.0%
|
2-9
|
Beaver-7B
|
98.3%
|
83.5%
|
21.9%
|
12.0%
|
8.9%
|
6.0%
|
10.3%
|
|
Alpaca-7B
|
99.4%
|
78.7%
|
34.9%
|
47.0%
|
38.2%
|
70.7%
|
11.8%
|
|
Vicuna-7B
|
95.4%
|
73.6%
|
26.4%
|
15.9%
|
12.0%
|
29.3%
|
2.7%
|
|
Vicuna-13B
|
94.0%
|
49.5%
|
37.6%
|
16.6%
|
21.9%
|
18.9%
|
2.7%
|
|
Vicuna-33B
|
89.3%
|
58.5%
|
51.0%
|
55.9%
|
-1.0%
|
33.6%
|
3.2%
|
|
Llama2-7B-Chat
|
95.6%
|
98.8%
|
19.9%
|
7.4%
|
-5.7%
|
22.1%
|
1.5%
|
|
Llama2-13B-Chat
|
96.6%
|
70.8%
|
20.1%
|
10.3%
|
15.5%
|
28.6%
|
1.7%
|
|
Llama2-70B-Chat
|
95.0%
|
70.1%
|
5.2%
|
2.4%
|
-6.6%
|
4.1%
|
9.1%
|
|
Average
|
82.5%
|
55.2%
|
27.6%
|
21.2%
|
16.1%
|
26.4%
|
4.0%
|
13B
|
GPT-4
|
42.6%
|
9.7%
|
33.9%
|
25.1%
|
25.1%
|
20.1%
|
-0.2%
|
GPT-3.5
|
43.7%
|
15.6%
|
15.1%
|
10.9%
|
7.6%
|
7.7%
|
0.5%
|
Claude 2
|
90.6%
|
17.2%
|
50.0%
|
30.0%
|
45.9%
|
28.6%
|
0.5%
|
2-9
|
Beaver-7B
|
98.1%
|
87.6%
|
14.2%
|
19.1%
|
8.0%
|
11.6%
|
13.0%
|
|
Alpaca-7B
|
99.0%
|
82.9%
|
8.5%
|
53.4%
|
3.4%
|
75.9%
|
16.9%
|
|
Vicuna-7B
|
96.3%
|
78.5%
|
19.1%
|
24.0%
|
19.5%
|
31.0%
|
6.6%
|
|
Vicuna-13B
|
95.9%
|
58.7%
|
31.8%
|
26.7%
|
30.9%
|
18.9%
|
7.1%
|
|
Vicuna-33B
|
90.0%
|
65.9%
|
33.3%
|
63.3%
|
7.3%
|
33.3%
|
6.1%
|
|
Llama2-7B-Chat
|
96.0%
|
99.1%
|
13.5%
|
4.6%
|
12.6%
|
32.3%
|
4.2%
|
|
Llama2-13B-Chat
|
95.4%
|
73.1%
|
16.7%
|
10.6%
|
30.7%
|
35.0%
|
1.0%
|
|
Llama2-70B-Chat
|
94.6%
|
69.2%
|
10.6%
|
1.9%
|
6.3%
|
7.6%
|
10.3%
|
|
Average
|
85.6%
|
59.8%
|
22.4%
|
24.5%
|
17.9%
|
27.4%
|
6.0%
|
在本节中,我们评估了
Aligner
模块在 3H(有用、无害、诚实)评估指标和配置中的有效性。
有关详细的训练参数,请参见附录
E
。
图 2
:
有用性和无害性分数的分布。
(a)
训练数据集中首选答案和非首选答案的分布变化;
(b)
Aligner
-7B 的重新分布变化,基于评估数据集中 GPT-4(b1)、Alpaca-7B(b2)和 Llama2-70B-Chat(b3)等上游模型。
我们的发现包括:
(1)
训练数据集中首选答案在有用性和无害性方面都超过了原始答案;
(2)
GPT-4 的拒绝回答模式创造了一个过度修正答案的区域,其中有用性和无害性分数都很低,
Aligner
-7B 通过提供更多信息和修正来改善了这些答案。
(3)
Alpaca-7B 模型缺乏对齐,其答案被我们的
Aligner
-7B 显着修正,提高了两个分数。
(4)
Llama2-70B-Chat 模型已经与训练数据集修正的平均安全得分相一致,并且从
Aligner
-7B 修正中受益,显著提高了有用性,同时保持了无害得分。
3.1
实验设置
偏好数据集
我们利用两个开源偏好数据集,HH-RLHF
[5]
和 PKU-SafeRLHF
[17]
作为我们的偏好数据集。
考虑到 PKU-SafeRLHF 中的偏好对仅由 Alpaca-7B 生成,我们额外构建了一个基于这两个偏好数据集的 50K 偏好数据集。
此数据集中的问题来自 HH-RLHF、PKU-SafeRLHF 等等,导致后续答案和修正答案生成的 27K 个查询。
原始答案是使用各种开源模型生成的,包括 Alpaca-7B
[3]
、Vicuna-(7B,13B,33B)
[18]
、Llama2-(7B,13B)-Chat
[19]
和 Alpaca2-(7B,13B)。
2
.
我们使用 GPT-4、Llama2-70B-Chat 和人工标注者来修改上述问答数据集中的答案。
这些修改基于明确定义的原则,为训练 seq2seq 模型建立约束。
这些原则旨在有效地扩展到我们希望 LLM 体现的特征。
我们专注于 LLM 的 3H 维度(有用性、无害性和诚实性)
[10]
。
对于符合这些基本原则的答案,我们保留原始答案。
图
2
(a) 直观地显示了数据修正前后的分布变化,从而证明了修改过程对数据集的影响。
有关构建问答数据集的更多详细信息,请参见附录
E.1
。
模型和评估数据集
我们在三种模型规模上训练了
Aligner
,具体来说是基于 Gemma-2B
[20]
和 Llama2 (7B, 13B)
[19]
。
为了评估
Aligner
模块,我们利用五个数据集:E-Dialogue
[21]
、DialogSum
[22]
、BeaverTails
[17]
、HarmfulQA
[23]
和 TruthfulQA
[24]
。
更多细节可以在附录
C.1
中找到。
我们的评估重点关注两类模型:基于 API 的模型(例如,GPT-4
[25]
、Claude 2
[26]
)和开源模型(Llama2-(7B, 13B, 70B)-Chat
[19]
;Vicuna-(7B, 13B, 33B)
[18]
;Alpaca-7B
[3]
;Beaver-7B
[27]
)。
值得注意的是,Llama2 和 Beaver 模型已经过安全对齐处理。
评估指标
我们的评估取决于三个关键维度:有用性、无害性和诚实性。
这些维度的独立特征为答案提供了全面的视角,使我们能够在评估答案质量时平衡信息质量、安全性以及伦理考虑。
初始答案由开源模型和上游模型生成,
Aligner
对其进行细化,以产生修正后的答案。
更多细节和示例可以在附录
C
中找到。
3.2
实验结果
如表
1
所示,我们采用了不同规模的
Aligner
,仅需一次训练即可显着提升所有 11 个上游模型的性能。
在 3H 标准下,
Aligner
-7B 在所有模型中平均提高了 21.9% 的有用性和 23.8% 的无害性。
值得注意的是,
Aligner
-7B 可以将 GPT-4 的有用性提高 17.5%,将无害性提高 26.9%。
在
3H
标准上的性能
Aligner
保持上游模型不变,根据可用资源提供
Aligner
模型大小的适应性。
我们使用五个数据集根据 3H 标准评估了
Aligner
的有效性。
实验结果表明,
Aligner
显着提高了上游模型在各种参数尺度上的性能。
尤其是在所有五个维度上,
Aligner
-7B 显着提高了 GPT-4 模型的性能。
在推理维度上,随着参数的增加,
Aligner
提升了上游模型的能力,展示了
Scaling Laws
[28]
的特点。
值得注意的是,
Aligner
在同理心维度上表现出色,进一步证明了它在重新分配上游模型模式分布方面的效率。
为了检测
Aligner
是否会因误解而生成已知的虚假内容,类似于
[19]
,我们使用 TruthfulQA
[24]
来衡量
Aligner
生成的输出在真实性和常识性方面的可靠性。
结果表明,
Aligner
在纠正上游模型的同时,不会添加额外的幻觉信息。
评估
Aligner
在安全对齐模型上的堆叠
Llama2-Chat 模型,其多阶段对齐过程(预训练、SFT、RLHF),以及通过 Safe RLHF
[27]
微调的 Beaver,两者都表明
Aligner
具有适度的安全改进。
Aligner
的主要成就是它能够放大有用性,尤其是在倾向于避免冒险响应的模型中。
通过重新分配这些过于保守的答案,
Aligner
显着提高了整体有用性。
图
2
中直观地展现了这种有用性的提升,它显示了在
Aligner
-7B 的影响下,Llama2-70B-Chat 的答案分布向右移动,表明在强大的安全基础上提高了有用性。
3.3
消融研究
在身份映射上的消融
图 3
:
不同
身份映射
比例的消融研究。
我们首先训练了一个用于身份映射的
Aligner
,然后在此
Aligner
基础上进行了广泛的残差 Q-A-C 学习。
具体来说,我们通过从训练数据集中按 2%、10%、20% 和 50% 的比例提取部分数据来形成 Q-A-A 数据集。
为了验证不同
预热
比例的有效性,我们使用两个代表性数据集进行了实验:BeaverTails 和 HarmfulQA。
如图
3
所示,
预热
步骤通过最初帮助
对齐器
学习身份映射来帮助
对齐器
,从而提高最终性能。
此外,结果进一步表明,
预热
阶段的有效性在比例为 10k 到 50k 时达到峰值。
然而,确定
预热
的具体数据比例具有挑战性,需要更多训练资源。
表 2
:
对齐器
有效性与 CAI 和自我批评的消融研究。
实验结果表明,
对齐器
在有用性和无害性指标方面优于这些基线。
Model
|
Metrics
|
CAI
w/o
training
|
Self-Critique
|
Aligner
-7B
|
GPT-4
|
Helpfulness
|
+20.01%
|
+26.56%
|
+17.47%
|
Harmlessness
|
+9.65%
|
+15.30%
|
+26.88%
|
Alpaca2-7B
|
Helpfulness
|
+20.00%
|
+30.07%
|
+36.55%
|
Harmlessness
|
+24.08%
|
+14.36%
|
+58.86%
|
Beaver-7B
|
Helpfulness
|
+5.00%
|
+12.80%
|
+15.40%
|
Harmlessness
|
+7.70%
|
-11.6%
|
+9.00%
|
Llama2-13B-Chat
|
Helpfulness
|
-0.5%
|
+15%
|
+17.8%
|
Harmlessness
|
+27.4%
|
+11.1%
|
+19.45%
|
与自我细化、批评方法的比较
宪法人工智能 (CAI)
[29]
、自我批评
[30]
和自我细化
[31]
主要利用 LLM 的自我批评和细化能力来提高它们的性能。