NLP高频面(38)什么是LLM的灾难性遗忘?如何避免灾难性遗忘?¶
本文讨论了近年来大语言模型在人工智能领域取得显著进展的背景下,出现的灾难性遗忘问题,包括其产生原因和避免或减轻该问题的策略。关键要点包括:
灾难性遗忘定义:大模型在连续学习新知识或新任务时,先前掌握的旧知识会迅速被覆盖或遗忘,导致在旧任务中表现明显下降。
参数更新机制:深度学习模型用梯度下降学习,新任务数据显著影响模型参数,剧烈更新忽视旧任务重要特征,使模型遗忘原有知识。
数据分布非平稳性:实际中数据随新任务引入不断变化,干扰模型内部表征,使其难保持对旧任务稳定认知。
回放机制:训练新任务时融入旧任务数据,模仿人类复习巩固知识,提高模型对旧知识保持能力。
正则化方法:如弹性权重巩固(EWC),在损失函数中加正则项,限制重要参数更新幅度,保护旧任务知识。
动态扩展网络结构:给模型动态增加新网络模块或神经元应对新任务,少修改原有结构,保持旧任务知识结构。
生成回放:用生成模型创造旧任务相关合成数据,让模型学习新任务时回放巩固旧知识,避免大量存储历史数据。
近年来,大语言模型在人工智能领域取得了显著进展。然而,随着模型的不断更新和新任务的引入,出现了一个重要的问题,即灾难性遗忘(Catastrophic Forgetting)。灾难性遗忘指的是大模型在连续学习新知识或新任务时,先前掌握的旧知识会迅速被覆盖或遗忘,从而导致模型在旧任务中的表现明显下降。
灾难性遗忘产生的原因¶
灾难性遗忘主要有以下几个方面的原因:
参数更新机制
深度学习模型通常采用梯度下降方法进行学习,新任务的数据会显著影响模型参数。这种参数的剧烈更新往往忽视了旧任务的重要特征,使模型迅速遗忘原有知识。
数据分布的非平稳性
模型训练通常假设数据的分布保持不变,但在实际应用中,数据往往随着新任务的引入而不断变化。数据分布变化会干扰模型的内部表征,使得模型难以保持对旧任务稳定的认知。
如何避免或减轻灾难性遗忘¶
针对灾难性遗忘的问题,研究人员提出了以下几种有效的缓解策略:
回放机制(Rehearsal)¶
回放策略通过在训练新任务时适当融入旧任务的数据,有助于模型保持对过往知识的记忆。这种方法模仿了人类通过复习巩固知识的过程,显著提高模型对旧知识的保持能力。
正则化方法¶
以弹性权重巩固(Elastic Weight Consolidation, EWC)为代表的正则化方法,通过在模型的损失函数中加入正则项,限制重要参数在新任务中的更新幅度,从而保护旧任务的知识。
动态扩展网络结构¶
该方法通过给模型动态增加新的网络模块或神经元以应对新任务,同时不修改或很少修改原有的网络结构。这种方式使模型在处理新任务的同时,尽可能保持旧任务的知识结构。
生成回放¶
通过使用生成模型创造出与旧任务相关的合成数据,模型在学习新任务时可以借助这些合成数据来回放和巩固旧知识,从而避免大量存储历史数据。
对抗特征对齐¶
利用对抗训练的方式,使新旧任务的特征表示在潜在空间中趋于一致。这种方法能够有效减少新任务引起的知识干扰,从而提升模型跨任务的表现稳定性。