Representation Tuning

📄 arXiv: 2409.06927v4 📥 PDF

作者: Christopher M. Ackerman

分类: cs.LG, cs.CL

发布日期: 2024-09-11 (更新: 2024-11-24)

备注: 10 pages, 7 figures, 6 tables

🔗 代码/项目: GITHUB | HUGGINGFACE


💡 一句话要点

提出表征调优方法,通过微调激活向量提升LLM的安全性,无需在线控制。

🎯 匹配领域: 支柱九:具身大模型 (Embodied Foundation Models)

关键词: 表征调优 激活向量 大型语言模型 安全性 微调 在线steering 诚实性 双重损失函数

📋 核心要点

  1. 现有在线控制方法虽然可以引导LLM行为,但需要在推理时进行干预,效率较低且可能影响模型性能。
  2. 论文提出表征调优,通过微调模型内部的激活向量,直接将期望的行为(如诚实性)嵌入到模型中。
  3. 实验表明,表征调优在提升模型诚实性方面优于在线steering,且泛化能力更强,具有安全应用潜力。

📝 摘要(中文)

本文提出了一种名为“表征调优”的方法,旨在提升大型语言模型(LLM)的安全性。该方法通过将代表特定行为方向(例如诚实性)的激活向量直接微调到模型中,从而避免了在线控制的需求。首先,在开源LLM(Llama-2-13b-chat)中识别与诚实性相关的激活向量。然后,证明通过在生成过程中向残差流激活添加这些向量的正或负倍数,可以使模型输出更加或更不诚实。接着,展示了通过使用基于残差流激活与向量的余弦相似度的双重损失函数,结合标准的基于token的损失(“表征调优”),可以将这些向量直接微调到模型中,从而实现类似的效果。最后,将由此产生的模型对诚实性探测提示的生成结果与仅使用基于token的损失进行微调的模型以及进行在线steering的未调优模型的结果进行比较。总体而言,使用余弦相似度加token损失将向量微调到模型中显示出比在线steering更强的效果,并且比使用标准损失更好地泛化,表明该方法作为安全措施的潜在效用。代码和数据可在https://github.com/cma1114/representation_tuning 获取。调整后的模型可在https://huggingface.co/collections/cackerman/representation-tuning-66da1e5ab41cd1b824687d9f 获取。

🔬 方法详解

问题定义:现有的大型语言模型(LLM)存在潜在的安全风险,例如生成不诚实或有害的内容。传统的在线控制方法,如激活工程,虽然可以在推理时引导模型的行为,但需要持续的干预,计算成本高昂,并且可能影响模型的生成质量。因此,需要一种更高效、更持久的方法来提升LLM的安全性。

核心思路:论文的核心思路是将代表特定行为方向(例如诚实性)的激活向量直接微调到模型中。通过这种方式,模型可以在生成过程中自动地倾向于期望的行为,而无需额外的在线控制。这种方法旨在将安全约束内化到模型的表征空间中,从而提高模型的安全性和可靠性。

技术框架:该方法主要包含以下几个步骤:1) 激活向量识别:首先,识别与目标行为(例如诚实性)相关的激活向量。这可以通过分析模型在不同输入下的激活模式来实现。2) 在线steering验证:通过在线steering验证识别出的激活向量是否能够影响模型的行为。具体来说,通过在生成过程中向残差流激活添加这些向量的正或负倍数,观察模型输出的变化。3) 表征调优:使用双重损失函数,将激活向量直接微调到模型中。该损失函数包括基于残差流激活与向量的余弦相似度的损失项,以及标准的基于token的损失项。4) 评估:评估微调后的模型在目标行为上的表现,并与在线steering和标准微调方法进行比较。

关键创新:该论文的关键创新在于提出了“表征调优”的概念,即将代表特定行为方向的激活向量直接微调到模型中。与传统的在线控制方法相比,表征调优可以更高效、更持久地提升模型的安全性。与标准的微调方法相比,表征调优可以更精确地控制模型的行为,并提高模型的泛化能力。

关键设计:在表征调优过程中,使用了双重损失函数。其中,余弦相似度损失项用于鼓励模型的残差流激活与目标激活向量对齐,从而使模型倾向于期望的行为。标准的基于token的损失项用于保持模型的生成能力。这两个损失项的权重需要仔细调整,以平衡模型的安全性和生成质量。此外,激活向量的选择和微调的位置(例如,模型的特定层)也可能影响最终的性能。

🖼️ 关键图片

fig_0
fig_1
fig_2

📊 实验亮点

实验结果表明,使用余弦相似度加token损失进行表征调优的模型,在提升诚实性方面表现优于在线steering方法,并且比仅使用token损失进行微调的模型具有更好的泛化能力。这表明表征调优是一种有效的安全措施,可以提高LLM的可靠性和安全性。

🎯 应用场景

该研究成果可应用于各种需要安全可靠的LLM应用场景,例如:智能客服、内容生成、代码生成等。通过表征调优,可以有效地防止LLM生成不诚实、有害或不符合要求的输出,从而提高用户信任度和应用安全性。未来,该方法可以扩展到其他行为方向,例如公平性、无害性等,从而构建更加安全可靠的LLM系统。

📄 摘要(原文)

Activation engineering is becoming increasingly popular as a means of online control of large language models (LLMs). In this work, we extend the idea of inference-time steering with vectors that represent a behavioral direction of interest to tuning those vectors directly into the model, obviating the need for online control. First, we identify activation vectors related to honesty in an open-source LLM (Llama-2-13b-chat). Next, we demonstrate that model output can be made more or less honest by adding positive or negative multiples of these vectors to residual stream activations during generation. Then, we show that a similar effect can be achieved by fine-tuning the vectors directly into the model, by use of a dual loss function based on the cosine similarity of residual stream activations to the vectors combined with a standard token-based loss ("representation tuning"). Finally, we compare the generations in response to honesty-probing prompts from the resulting models to those from models fine-tuned with a token-based loss alone, and to those from the untuned model subjected to online steering. Overall, fine-tuning the vectors into the models using the cosine similarity plus token loss showed a stronger effect than online steering, and generalized better than using the standard loss, suggesting the potential utility of this approach as a safety measure. Code and data are available at https://github.com/cma1114/representation_tuning. Tuned models are available at https://huggingface.co/collections/cackerman/representation-tuning-66da1e5ab41cd1b824687d9f.