# Learning and Forgetting Unsafe Examples in Large Language Models

<figure><img src="https://1203660092-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FVIbHxVNUonwDG5X6HrVv%2Fuploads%2F03q5IlCREN5afsPvgo2L%2Fimage.png?alt=media&#x26;token=d176cddf-9b4e-46ab-898c-b97e72bee18d" alt=""><figcaption></figcaption></figure>

## 阅读总结报告

### 1. 研究背景

随着大型语言模型（LLMs）在高风险、真实世界场景中的不断部署，理解它们在一系列不良或不安全输入上的行为变得越来越重要。LLMs通常采用“发布和微调”的范式，即预训练的LLM通过API提供给用户进行“定制化微调”。尽管这种范式具有潜在价值，但也存在风险，因为它允许LLMs从事各种用户指导的行为，包括潜在的不安全行为。例如，第三方企业可能会在客户服务聊天机器人的训练中使用含有有毒和歧视性语言的数据，从而导致微调后的聊天机器人复制类似的不安全行为。因此，研究如何在定制化微调中确保发布的LLMs的安全性变得尤为重要。

### 2. 过去方案和缺点

过去的AI安全研究主要假设LLM和训练数据不会公开发布。一种常见的安全策略是在发布前对LLM进行安全微调，通过监督训练或强化学习来实现与人类偏好的对齐。然而，这些预防措施在抵抗定制化微调期间的潜在漏洞方面的有效性仍然不确定。此外，安全微调可能会导致灾难性遗忘（CF），即LLMs在安全微调期间不仅忘记了不安全知识，还可能忘记了其他重要知识。

<figure><img src="https://1203660092-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FVIbHxVNUonwDG5X6HrVv%2Fuploads%2F5PDTY5O4nCoIFHnLqO73%2Fimage.png?alt=media&#x26;token=93829067-0ca7-4008-ad0f-f3260155c6dd" alt=""><figcaption></figcaption></figure>

### 3. 本文方案和步骤

本文提出了“ForgetFilter”算法，该算法基于模型对数据的遗忘信号来过滤不安全数据。具体步骤包括：

* 在微调过程中，首先保存对齐模型的初始检查点。
* 使用包含不安全示例的噪声数据对模型进行微调，以获取新的模型状态。
* 在安全示例上对模型进行微调，以重新对齐模型。
* 评估新模型在噪声数据上的遗忘率，并过滤掉遗忘率超过阈值的数据。
* 使用过滤后的数据对初始检查点进行训练，以获得最终模型。

### 4. 本文创新点与贡献

* 本文关注于公开发布的LLMs在定制化微调中的安全性问题，研究了不安全示例在微调中的影响以及在后续安全微调阶段的遗忘模式。
* 提出了ForgetFilter算法，该算法能够在不损害下游任务性能的情况下，过滤噪声数据中的不安全示例，保持LLMs的安全性。
* 进一步研究了“交错训练”，即连续微调和安全微调交替进行的情况。结果表明，ForgetFilter在长期安全性方面提供了最强的保护。

### 5. 本文实验

实验通过构建包含偏见、毒性和有害性的不同安全风险数据集来模拟噪声数据，并在这些数据集上对不同规模的LLMs进行微调和安全微调。实验结果证实了对齐的LLMs在噪声数据集上学习不安全示例的脆弱性，并展示了更大的LMs在学习不安全知识方面速度更快。实验还发现，在安全微调期间，不安全示例的遗忘速度比其他示例更快。

### 6. 实验结论

实验结果表明，ForgetFilter算法在保持安全性的同时，能够有效地保持下游任务的性能。与其他基线方法相比，ForgetFilter在安全性指标和下游任务性能方面都表现出色。在交错训练设置中，ForgetFilter再次提供了对学习不安全示例的最强长期保护。

### 7. 全文结论

本文针对公开发布的大型语言模型在定制化微调中可能遇到的安全性问题进行了深入研究，并提出了ForgetFilter算法，该算法能够有效地过滤不安全示例，同时保持模型在下游任务上的性能。通过一系列实验，本文证明了ForgetFilter在不同安全性方面的有效性，并在长期安全性方面展示了其强大的保护能力。未来的研究将进一步探索LLMs的遗忘行为背后的原因，并评估保留的知识如何影响它们对新任务的泛化能力。

### 阅读总结

本文探讨了大型语言模型在面对不安全数据时的安全性问题，并提出了一种新颖的ForgetFilter算法来解决这一挑战。通过对不同规模的模型进行实验，本文证实了不安全数据在微调过程中的学习与遗忘特性，并展示了ForgetFilter在保持模型安全性的同时，对下游任务性能的积极影响。这项工作不仅为LLMs的安全性研究提供了新的视角，也为未来的研究和实践提供了宝贵的经验和方法。
