(2025|ICLR|华南理工,任务对齐,缓解灾难性遗忘,底层模型冻结和训练早停)语言模型持续学习中的虚假遗忘
Spurious Forgetting in Continual Learning of Language Models

目录
1. 引言
2. 动机:关于虚假遗忘的初步实验
3. 深入探讨虚假遗忘
3.1 受控实验设置
3.2 从性能角度分析
3.3 从损失景观角度分析
3.4 从模型权重角度分析
3.5 从特征角度分析
3.6 结论
4. 理论分析
5. 虚假遗忘的解决方案
5.1 现有方法的局限性
5.2 冻结底层参数(Freeze)
5.3 在真实场景中的应用
1. 引言
持续学习(Continual Learning, CL)中的大语言模型(LLMs)面临严重的遗忘问题,尤其是在新任务训练时,旧任务的表现显著下降。这种现象通常被认为是 “灾难性遗忘”(Catastrophic Forgetting)。
本文首次提出 “虚假遗忘”(Spurious Forgetting)的概念,指出这种性能下降主要是任务对齐(Task Alignment)问题,而非知识丢失(Knowledge Loss)。
研究发现:
- 旧任务的表现下降可以通过训练少量数据恢复,表明知识仍然保留。
- 训练新任务的初期步骤会破坏已建立的任务对齐,使得模型难以应用已存知识。
- 通过冻结(Freezing)底层模型参数可以显著改善持续学习中的性能。

2. 动机:关于虚假遗忘的初步实验
本文在两个持续学习场景中观察到虚假遗忘:
1)安全对齐(Safety Alignment)
- 研究发现,仅 10 个不安全的样本(Identity Shifting Instances)即可完全破坏一个经过数十万安全样本训练的 LLM 的安全性。
- 但只需再次使用 10 个不安全的样本进行拒绝响应(rejection responses)训练,模型的安全性能几乎可完全恢复(99%)。
2)持续指令微调(Continual Instruction Tuning)
- 在 TRACE 基准测试中,模型在新任务上的学习会导致先前任务的准确率骤降至 0%。
- 然而,在后续训练中,这种性能下降可以部分或完全恢复。
这些实验表明,LLM 可能并未真正丢失知识,而是由于任务对齐的改变导致了虚假遗忘。
3. 深入探讨虚假遗忘
3.1 受控实验设置
为了进一步分析虚假遗忘,本文构建了一个合成数据集(Biography Dataset),用于模拟持续学习:
- 该数据集包含 20 万个合成人物,每个具有六个属性(生日、出生地、大学、专业、公司、工作城市)。
- 持续学习任务分为:
- 任务 0(Task 0):在 10 万个个体数据上训练 QA 任务,建立稳健的知识基础。
- 任务 1(Task 1):在新增的 2 万个个体数据上训练 QA 任务。
3.2 从性能角度分析

在训练任务 1 时:
- 任务 0 的准确率在 前 150 步 骤降至约 10%。
- 但用任务 0 的部分数据进行重新训练时,准确率几乎完全恢复。
3.3 从损失景观角度分析

在训练任务 1 时:
- 任务 0 的损失在 前 150 步 急剧上升,而任务 1 的损失迅速下降。
- 这表明,模型在适应任务 1 的初始阶段,正破坏任务 0 的对齐。
3.4 从模型权重角度分析

在训练任务 1 时:
- 在训练初期,权重更新方向几乎与任务 0 的对齐方向正交(orthogonal)。
- 这意味着,模型在学习任务 1 时,会无意中 “撤销” 任务 0 的对齐。
3.5 从特征角度分析
对于每个训练阶段,计算每个 Transformer 层的隐藏状态(特征)的差异以及这些特征的主要主成分(principal component)的差异。
主成分的微小偏移表明特征变化发生在相对于原始特征接近正交的方向上,这表明修改后的特征可能在很大程度上保留了其先前的表示,并且可以通过逆转偏移来恢复。

在训练任务 1 时:
- 任务 0 和任务 1 的特征表示在初期对齐过程发生较大变化(很大的主成分偏移),但最终可恢复
- 这表明,知识仍然存在,只是任务对齐发生了改变。
3.6 结论
虚假遗忘的根本原因在于 任务对齐的变化,而非知识的遗失。
4. 理论分析
本文通过数学推导,提出了一个关于虚假遗忘的理论框架:
- 在任务切换时,特征空间的主要方向不会完全改变,而是发生近正交(near-orthogonal)变化,导致任务对齐的丢失,但知识仍然存在。
- 层数越多,累积偏移(Shift Accumulation)越严重,因此冻结底层参数可以减少任务对齐的扰动,从而缓解虚假遗忘问题。
5. 虚假遗忘的解决方案
5.1 现有方法的局限性
本文测试了多种持续学习方法:


实验表明:
- 数据回放(Replay)最有效,但需要存储旧数据。
- 冻结底层参数(Freeze)在不存储旧数据的情况下表现最佳。
- 其他方法(EWC、任务向量等)效果有限。
5.2 冻结底层参数(Freeze)
冻结层数的影响:
- 冻结过多层会降低任务 1 的学习能力,因此需要平衡冻结层数和任务 1 的性能。
- 实验发现,冻结 7 层时效果最佳。
早停策略(Early Stopping):
- 当任务 1 的准确率接近 99% 时,适当停止训练可进一步优化任务 0 的恢复能力。
5.3 在真实场景中的应用
Freeze 策略在四种持续学习任务中均取得了显著提升:

任务类型相似时,冻结更多层(如安全对齐 SA)更有效。例如,安全对齐(SA)任务涉及模型对抗性对齐(如拒绝有害输入),冻结 6 层后可以保持原有对齐能力,防止安全性被破坏。
任务类型差异大时,冻结较少层(如知识编辑 CKE)更有效。例如,知识编辑和实例增量学习(IIL)涉及模型新知识的注入,因此冻结 3 层即可,防止过多干预模型的学习能力。
论文地址:https://arxiv.org/abs/2501.13453
项目页面:https://github.com/zzz47zzz/spurious-forgetting
进 Q 学术交流群:922230617
相关文章:
(2025|ICLR|华南理工,任务对齐,缓解灾难性遗忘,底层模型冻结和训练早停)语言模型持续学习中的虚假遗忘
Spurious Forgetting in Continual Learning of Language Models 目录 1. 引言 2. 动机:关于虚假遗忘的初步实验 3. 深入探讨虚假遗忘 3.1 受控实验设置 3.2 从性能角度分析 3.3 从损失景观角度分析 3.4 从模型权重角度分析 3.5 从特征角度分析 3.6 结论 …...
从两指到三指:Robotiq机器人自适应夹持器技术解析
工业自动化离不开高效工具的支持。Robotiq机器人工具凭借其模块化设计和智能化编程技术,提升了设备的灵活性和操作效率。Robotiq机器人工具精准的传感器和自适应夹持器技术,能够满足多样化的应用需求,为制造业、物流和科研等领域提供可靠的解…...
【css酷炫效果】纯CSS实现悬浮弹性按钮
【css酷炫效果】纯CSS实现悬浮弹性按钮 缘创作背景html结构css样式完整代码效果图 想直接拿走的老板,链接放在这里:https://download.csdn.net/download/u011561335/90492020 缘 创作随缘,不定时更新。 创作背景 刚看到csdn出活动了&…...
力扣222. 完全二叉树的节点个数(Java实现)
222. 完全二叉树的节点个数 1. 思路 这个题最简单的做法就是暴力遍历,时间复杂度为O(n)。 我们现在用低于O(n)的做法解决问题。 对于一棵满二叉树,它的节点数 2 h - 1 (h 是指树一共有多少层) 头节点不断遍历左孩子直至为null,得到树高…...
MySQL函数大全(持续更新)
MySQL常用函数 一、字符串函数 函数功能 CONCAT(s1, s2, ...) 拼接字符串 CONCAT_WS(sep, s1, s2, ...) 指定分隔符拼接字符串 SUBSTRING(str, start, length) 截取字符串 LEFT(str, length) 从左边截取指定长度字符串 RIGHT(str, length) 从右边截取指定长度字符串 LENGTH(s…...
Django系列教程(13)——Cookie和Session应用场景及案例
目录 什么是cookie,cookie的应用场景及缺点 Django中如何使用cookie Cookie使用示例 什么是session及session的工作原理 Django中如何使用会话session Session使用示例 小结 HTTP协议本身是”无状态”的,在一次请求和下一次请求之间没有任何状态保…...
element-ui pagination 组件源码分享
pagination 分页组件源码分享,主要从以下三个方面: 1、pagination 组件页面结构。 2、pagination 组件属性。 3、pagination 组件方法。 一、组件页面结构。 二、组件属性。 2.1 small 是否使用小型分页样式,类型为 boolean,…...
【css酷炫效果】纯CSS实现火焰文字特效
【css酷炫效果】纯CSS实现火焰文字特效 缘创作背景html结构css样式完整代码基础版进阶版(冰霜版) 效果图 想直接拿走的老板,链接放在这里:https://download.csdn.net/download/u011561335/90492005 缘 创作随缘,不定时更新。 创作背景 刚…...
【java面型对象进阶】------继承实例
继承结构下的标准Javabean 代码如下: package demo10;//定义员工父类 public class Employee {private String id;private String name;private double salary;//构造方法public Employee(){}public Employee(String id,String name,double salary){this.idid;thi…...
Oracle 19c 子分区表索引测试
一、建表语句放在最后,方便查看 二、创建各类索引 --创建本地的主键约束,但必须加上分区键、子分区键MT_O_CODE,M_YMD alter table MS_DMG.A_RED drop constraint MGR_PK_AREAD ; alter table MS_DMG.A_RED add constraint MGR_PK_AREAD primary key …...
【数据分享】1999—2023年地级市固定资产投资和对外经济贸易数据(Shp/Excel格式)
在之前的文章中,我们分享过基于2000-2024年《中国城市统计年鉴》整理的1999-2023年地级市的人口相关数据、染物排放和环境治理相关数据、房地产投资情况和商品房销售面积相关指标数据、社会消费品零售总额和年末金融机构存贷款余额、各类用地面积、地方一般公共预算…...
Spring Boot 与 Couchbase 整合教程
精心整理了最新的面试资料和简历模板,有需要的可以自行获取 点击前往百度网盘获取 点击前往夸克网盘获取 Spring Boot 与 Couchbase 整合教程 环境要求 JDK 8Spring Boot 2.7.xCouchbase Server 7.xMaven/Gradle 步骤 1:创建Spring Boot项目 使用 st…...
数据结构——串、数组和广义表
串、数组和广义表 1. 串 1.1 串的定义 串(string)是由零个或多个字符组成的有限序列。一般记为 S a 1 a 2 . . . a n ( n ≥ 0 ) Sa_1a_2...a_n(n\geq0) Sa1a2...an(n≥0) 其中,S是串名,单引号括起来的字符序列是串的值, a i a_i a…...
Spring中DI与IOC的关系解析
在Spring框架中,DI(依赖注入)和IOC(控制反转)是两个核心概念,它们密切相关但有不同的侧重点。 IOC(控制反转) IoC 是一种设计原则,将对象的创建和依赖管理交给框架或容…...
pycharm-python國際象棋遊戲代碼
嗯,用户的问题是“pycharm寫關於python國際象棋遊戲代碼”,也就是要用PyCharm来写一个Python的国际象棋游戏代码。我需要先整理一下用户提供的搜索结果,看看有什么相关的信息可以利用。 首先看搜索结果中的各个网页内容。网页1主要讲的是象棋…...
【Java代码审计 | 第十四篇】MVC模型、项目结构、依赖管理及配置文件概念详解
未经许可,不得转载。 文章目录 MVC模型模型(Model)视图(View)控制器(controller)MVC工作流程 项目结构java目录resources目录webapp目录 依赖管理配置文件 MVC模型 MVC(Model-View-…...
单片机ADC+NTC温度采集电路学习
文章目录 前言一、NTC是什么?二、NTC重要参数三、实际应用举例四、NTC和PTC的区别总结 前言 NTC常用来检测外部环境或者电池温度,及汽车水温传感器。 有时候电池并不内置NTC,所以需要外置NTC来采集电池温度,注意要紧贴电池&#…...
【Spring Boot 中 `@Value` 注解的使用】
文章目录 一、前言二、Value 注解简介三、Value 注解的常见用法1. 读取 application.properties 或 application.yml 配置值(1)配置文件示例(2)Java 代码示例(3)测试输出 2. 使用 Value 设置默认值3. 读取系…...
分布式数据库系统(DDBS)
分布式数据库系统(DDBS) (Distributed Database System)的概念及其特点: 分布式数据库系统是一种数据库系统,它将数据分散存储在多个地理上分散的节点上,通过一个全局数据库管理系统(DBMS)来协调…...
2025年,电脑还需要分区吗?
随着2025年的到来,电脑存储空间已经不像以前那么金贵,固态硬盘(SSD)容量更大、速度更快,云存储也成了日常标配。许多人开始质疑:电脑还需要像以前那样分区吗? 一、分区到底是什么意思ÿ…...
一个成功的Git分支模型
本作品原发布账号为【白鸽子中文网】,现转至当前账号【飞翔中文网】。 反思备录(2020/3/5) 这个模型构思于2010年,现已过去10余年,(2010年)那时正处于Git诞生后不久。在这10年间,git-flow(本文中提到的分支模型) 在许多软件队伍里…...
Kafka可视化工具KafkaTool工具的使用
Kafka Tool工具 介绍 使用Kafka的小伙伴,有没有为无法直观地查看 Kafka 的 Topic 里的内容而发过愁呢?下面推荐给大家一款带有可视化页面的Kafka工具:Kafka Tool (目前最新版本是 3.0.2) 注意:以前叫Kafk…...
【嵌入式Linux】基于ArmLinux的智能垃圾分类系统项目
目录 1. 功能需求2. Python基础2.1 特点2.2 Python基础知识2.3 dict嵌套简单说明 3. C语言调用Python3.1 搭建编译环境3.2 直接调用python语句3.3 调用无参python函数3.4 调用有参python函数 4. 阿里云垃圾识别方案4.1 接入阿里云4.2 C语言调用阿里云Python接口 5. 香橙派使用摄…...
同等学力申硕-计算机专业-数学基础-历年真题和答案解析
同等学力申请硕士学位考试是比较适合在职人员的提升学位方式,了解过的人应该都知道,现在社会的竞争压力越来越大,为了提高职业生存能力,提升学位在所难免。 为了通过同等学力申请硕士学位考试,对于计算机专业的人来说…...
网络安全漏洞与修复 网络安全软件漏洞
文章目录 一、软件漏洞的概念 1、信息安全漏洞简述2、软件漏洞3、软件漏洞概念4、软件漏洞的成因分析 二、软件漏洞标准化管理 1、软件漏洞分类2、软件漏洞分级3、安全漏洞管理规范 一、软件漏洞的概念 1、信息安全漏洞简述 信息安全漏洞是信息安风险的主要根源之一&…...
STM32:Default_Handler问题
记录代码进入Default_Handler错误的解决办法 一、 问题表述 在一次调试代码的时候,发现代码卡死在启动文件 startup_at32f423xx_.s 的367行,即 B. 处B.是汇编代码,B:跳转到一个标号,这里跳转到一个‘.’,…...
iwebsec-SQL数字型注入
1.判断是否存在漏洞 添加and 11发现正常显示,添加and 12无回显条目,则存在sql注入漏洞 2.因为有回显,尝试union联合注入,使用order by判断出有3个字段 3.使用union联合注入查看回显位,发现3三个字段均有回显ÿ…...
基于Spring Boot的冷链物流系统的设计与实现的设计与实现(LW+源码+讲解)
专注于大学生项目实战开发,讲解,毕业答疑辅导,欢迎高校老师/同行前辈交流合作✌。 技术范围:SpringBoot、Vue、SSM、HLMT、小程序、Jsp、PHP、Nodejs、Python、爬虫、数据可视化、安卓app、大数据、物联网、机器学习等设计与开发。 主要内容:…...
LLM(6):理解词嵌入
深度神经网络模型,包括 LLM,无法直接处理原始文本。由于文本是分类的,它与用于实现和训练神经网络的数学操作不兼容。因此,我们需要一种方法来将词语表示为连续值向量。 注意:如果读者对向量和张量不太了解,…...
SQLMesh系列教程:利用date_spine宏构建日期序列实践指南
引言:为什么需要日期维度表? 在数据分析和报表开发中,日期维度表是不可或缺的基础结构,其中包括一定日期范围的日期序列,每个序列包括对应日期属性,如年季月日、是否周末等。无论是计算日粒度销售额、分析…...
