大语言模型的后训练与“灾难性遗忘”问题——李宏毅2025大模型第六讲笔记

当你看到这样一个新闻:

"A 实验室/公司喜报:A使用某开源基座模型Q,经过后训练得到模型Q',Q'在数学编程领域的得分超过Q。"

请思考这样的模型会有什么问题,Q'真的超过了Q吗?学习本节课,你将得到答案

目录

一、后训练(Post-training)是什么?

二、后训练的核心挑战------灾难性遗忘

典型案例

三、遗忘的根源

四、解决方案:让AI用自己的话学习

[1. 经典经验回放](#1. 经典经验回放)

[2. 伪经验回放](#2. 伪经验回放)

[3. Self-Output 系列方法](#3. Self-Output 系列方法)

[4. 巧妙的解法:过滤高难度Token](#4. 巧妙的解法:过滤高难度Token)

五、结论与建议


一、后训练(Post-training)是什么?

后训练目标:将通用的"基础模型"变成特定任务或领域的"专才模型"。(如把Llama后训练后,变成金融、法律领域的专有模型)

后训练仍然沿用现有的模型训练范式:

  1. 预训练式:继续做文字接龙,使用领域文本。
  2. 有监督微调式:使用"指令-回答"对训练。
  3. 强化学习式:通过人类反馈优化模型。

二、后训练的核心挑战------灾难性遗忘

"手术成功,但病人死亡"------模型学会了特定的新东西,但是原有的通用知识记忆严重衰退,甚至完全丧失原有能力。

典型案例:

1、学中文,忘安全

* 基座模型:LLaMA-2-Chat只用英文回答问题,问它危险问题LLaMA-2会拒绝回答

* 用中文后训练之后:LLaMA-2会用中文回答问题,但安全对齐被破坏,开始回答危险问题。

2、即使用无害数据微调,模型的安全能力也会下降。[1]

3、专才代价是通才能力下降

* 提升某一能力(如编程),其他能力(如数学、语文)下降。

4、学新模态,忘旧格式

  • 通过后训练,想教纯文本语言模型LLaMA识别语音
  • 第一个Epoch:要求语言模型输出语音的情绪,并要求用json格式输出,模型输出错误的情绪,但是会用json格式输出结果(因为LLaMA知道什么是json)
  • 多轮Epoch后:能输出正确的情绪,但模型忘记了如何输出JSON格式。

三、遗忘的根源

那么为什么模型会发生灾难性遗忘?原因如下

  • 单目标优化:训练只优化新任务,不保护旧知识。
  • 知识覆盖:新任务参数覆盖旧任务参数。
  • 模型大小无关:研究1B-7B参数的模型,大小与遗忘程度无显著相关。而模型学的新知识越多,旧知识就遗忘得越厉害。
  • LoRA 不能根本解决:只是"学得少,忘得少"。

四、解决方案:让AI用自己的话学习

1. 经典经验回放

  • 在训练新任务时,混入5%旧任务数据,可有效防止遗忘。
  • 问题:商业模型原始训练数据不可获取。

2. 伪经验回放

目前商业开源大模型的训练资料不可取,那就让模型自己生成旧任务数据,作为回放材料。

  • 虽可能有事实错误,但能保留模型风格与知识结构。

3. Self-Output 系列方法

  • Mega-Pie:让模型自问自答,生成SFT数据。
  • Paraphrase答案改写:用模型自己改写后的答案训练。
  • self-output 选择性自我排练:模型答对时,用自己的答案训练;答错时才用人类答案。(这种方式跟RL-based的post-training很像)
  • "说我的语言":用LLM生成的答案教另一个LLM,比只用人类数据集的效果更好。[2]

4. 巧妙的解法:过滤高难度Token

人类写的数据,总有一些词汇是模型输出的过程中,模型很难学到的(如截图)。那么在训练中忽略模型最难预测的Token,避免强制教学。可提升泛化能力,减少遗忘。[3]

五、结论与建议

  1. 遗忘不可避免:后训练本质是单目标优化,会干扰旧知识。
  2. 安全与通用能力最易丢失。
  3. 最有效策略:让模型用自己的话学习,保持训练目标与自身分布一致。
  4. 警示:看到某个模型说自己通过后训练,某个专项能力吊打xx模型,需要警惕,它可能失去了很多通用能力。

1\][Fine-tuning Aligned Language Models Compromises Safety, Even When Users Do Not Intend To!](https://arxiv.org/abs/2310.03693 "Fine-tuning Aligned Language Models Compromises Safety, Even When Users Do Not Intend To!") \[2\][I Learn Better If You Speak My Language](https://arxiv.org/abs/2402.11192 "I Learn Better If You Speak My Language") \[3\][https://arxiv.org/abs/2501.14](https://arxiv.org/abs/2501.14 "https://arxiv.org/abs/2501.14")

相关推荐
北堂飘霜1 天前
AI 求职工具评测:简小派 vs Jobscan、Teal 与国内同类
人工智能
孙严Pay1 天前
快捷支付和网关支付到底哪个更安全呢?
笔记·科技·计算机网络·其他·微信
糖果罐子♡1 天前
在 openEuler 上快速体验 PyTorch 深度学习
人工智能·pytorch·深度学习
周杰伦_Jay1 天前
【Conda 完全指南】环境管理+包管理从入门到精通(含实操示例+表格对比)
开发语言·人工智能·微服务·架构·conda
暗碳1 天前
ai分析aweme-app.xml,default_config .xml文件
xml·人工智能
凌晨一点的秃头猪1 天前
构建视觉词典(visual vocabulary / codebook)
人工智能
PS1232321 天前
城市安全建设中的风环境监测解决方案
大数据·人工智能
梯度下降不了班1 天前
【mmodel/xDiT】多模态^_^从入门到放弃的学习路径
人工智能·学习·stable diffusion
说私域1 天前
基于开源AI大模型AI智能名片S2B2C商城小程序的爆品力构建:兴趣电商生态下的能力解构与实践路径
人工智能·小程序·开源