|AI|持续学习|深度学习限制|
作者使用 AI 生成的图像
“智者适应环境,如水就壶形。” —— 中国谚语
“适应或灭亡,现在就像过去一样,是自然不可抗拒的命令。” —— H. G. Wells
人工智能近年来取得了巨大进步。所有这些系统都以某种形式使用人工神经元。这些算法受到了其生物对应物的启发。例如,神经元聚集来自先前神经元的信 息,如果信号超过某个阈值,它就会将信息传递给其他神经元。这一想法由权重矩阵和激活函数表示。其他例子可以在卷积网络(受视觉皮层启发)或遗传算法中找到。在训练过程中,各种神经元之间的连接(由权重表示)会加强或减弱,类似于神经元突触的强度。这个过程是随机梯度下降(SGD)和反向传播算法的基础,并且在几十年的时间里经历了最小变化。
描述这些智能与生物成分之间的相似性有助于更好地理解,但也存在危险。 首先,生物系统比人们想象的要复杂得多,并且使用了强制性的简化。其次,其中一些比较是不准确的。这种情况也适用于持续学习。
在本文中,我们将回答这些问题:
-
什么是持续学习?为什么它很重要?
-
所有深度学习架构都遭受了可塑性的损失吗?
-
什么是导致可塑性损失的原因?
-
如何解决它?
TL;DR 和参考文献在文章末尾。
什么是持续学习?
大脑极其灵活,能够适应新的任务和新的信息类型。相比之下,神经网络在适应数据流的变化方面存在问题。
例如,大型语言模型(LLMs) 是在预训练期间在大量数据上训练的通用模型。微调是一种使模型学习新知识或技能的系统。尽管如此,微调有两个问题:
这使得持续学习在实践中变得不可能。我们冒着损害模型功能的风险。很难平衡新数据对模型预先获得知识的影响。
这种新旧数据之间的风暴关系目前尚未完全理解
结果是,这些微调技术远非完美。因此,通常更倾向于从头开始训练新模型或使用其他策略,如检索增强生成(RAG)。
然而,从头开始训练一个新模型成本巨大,但有时被认为是唯一的替代方案。这远非最佳选择,许多现实世界的应用需要模型能够适应变化(如金融市场预测、市场需求、物流需求、控制系统等)。
为什么神经网络无法获取新信息?
主要有两个问题:
-
灾难性遗忘。模型忘记了之前学到的内容
-
塑性丧失。模型无法学习新信息或技能
我们将重点关注塑性丧失
当我们尝试训练一个预训练模型,而它无法学习新信息或新技能时,就发生了塑性丧失。更技术性地:
理想情况下,这个新的训练过程是从昨天模型的参数初始化的,即它从这些参数而不是从全新的初始化开始,即“冷启动”。然而,似乎冷启动会损害深度神经网络的泛化能力。 – [1]
使用预热启动(在持续学习期间)训练的模型[10]在测试集中表现更差。因此,持续学习似乎损害了模型泛化的能力,从而难以适应新数据。
<…/Images/3ca01de52dd2f2d452013bff10869da6.png>
图片来源:[1]
一些研究[2]表明,这源于学习存在一个关键阶段,这个阶段既在训练的早期时期(记忆阶段)存在,然后在后期阶段会伴随着信息的减少(重组)。改变这个初始阶段会损害训练和泛化本身。
其他研究似乎证实了学习存在两个阶段(记忆和精炼)[3]。然而,这并不能解释为什么在呈现新数据时塑性会丢失。其他研究提出了梯度下降、损失表面和架构选择(归一化会促进塑性的更好维持)的作用[4]。然而,这个问题仍然悬而未决,我们将在本文的后面详细讨论。
塑性损失对所有深度学习模型普遍存在
灾难性遗忘比塑性损失研究得更多。不幸的是,很少有研究关注它。因此,我们不知道塑性损失是一个普遍问题,还是某些参数选择的特殊情况。
为了证明它影响所有深度学习模型,塑性损失应该在不同的架构、参数和算法中使用时保持一致。然而,今天的模型拥有数十亿个参数,使得系统操作变得复杂。在这项研究[5]中,他们通过在两个主要数据集上测试来试图弥补这一不足:ImageNet 和 CIFAR。
ImageNet 由 1000 个图像类别(总共有 1M 个图像)组成,它是最知名的形象分类基准。作者进行了 0.5M 的二分类任务(每次取两个类别),以测试持续学习中的塑性损失。换句话说,作者训练一个模型来区分‘狗’和‘猫’,然后在新任务(区分‘叶子’和‘花朵’)上训练它,以此类推。准确度是在第一个任务结束后以及随后每个任务结束后测量的。任务的难度相同,但如果模型的表现下降,这意味着它已经失去了塑性。
<…/Images/ff4b9eb3d2125d596be44eb4c6a4bb3b.png>
图片来源:[5]
作者测试了不同类型的深度学习网络和这些设置中的不同参数。使用标准的反向传播,模型在前几个任务中表现良好,但随后它们迅速失去可塑性,直到它们的性能与线性模型相似。因此,一个针对一个任务调整良好的模型,在面临新任务时开始迅速失去性能,直到低于基准线。
<…/Images/4dae3504a2ef2a56666867aa0282bcea.png>
图片来源:[5]
研究证实,正则化有助于维持神经可塑性。更普遍地说,正则化方法旨在保持网络权重较小。L2 正则化似乎有助于维持可塑性,但其原因尚不清楚。
<…/Images/212696cfe6a469d6934bc3598fb9b8ad.png>
图片来源:[5]
在后续的实验中,作者使用了CIFAR(最受欢迎的图像数据集之一,包含 100 个类别)。他们采用了一个包含残差连接的 18 层ResNet模型[11],这是计算机视觉中最广泛使用的模型之一,并在 5 个类别上开始训练它。之后,他们开始添加更多类别,直到达到 100 个类别。
在每次添加后,模型都会对所有可用的类别进行性能测试。这可以被认为是模型在数据集不断扩大的同时进行训练的情况(就像随着时间的推移而不断扩大的社交网络)。由于作者专注于可塑性和不遗忘,当添加新类别时,不会删除旧类别。同时,作者训练了从零开始训练所有可用类别的模型(如果模型最初在五个类别上训练,然后在第二次迭代中在另一个 5 个类别上训练,从头开始的模型将直接在 10 个类别上训练)。
<…/Images/6cd63a6f9bff0fa626cd09e2d3cb7cdc.png>
图片来源:[5]
最初,增量训练似乎比重新训练更好,但随着类别的增加,模型的可塑性开始丧失。添加图像类别后,性能开始逐渐下降。在添加了几种类别之后,基准(从头开始训练的模型)上的改进就消失了,并且通过添加类别,性能显著下降。再次,正则化技术(如 Shrink 和 Perturb [12] 是一种也使用 L2 归一化的算法)的性能下降较少。
<…/Images/786f1fcdcaace8e37d716d70abb75d56.png>
图片来源:[5]
持续学习在强化学习中具有重要作用。 代理必须能够探索并从环境中学习,而环境可能会发生变化。例如,在视频游戏中,前几个级别可能与最后几个级别非常不同,需要代理适应新的挑战。
在这项研究[5]中,作者分析了类似蚂蚁的机器人在探索其周围环境并接收奖励时的行为。每隔几百万步,他们改变摩擦系数,使得模型必须重新学习如何行走(模拟机器人面对新任务)。
<…/Images/5cd16fb7b44a224e5c65d6151802fb2e.png>
图片来源:[5]
再次,模型显示出性能下降和缺乏可塑性。有趣的是,即使在这些设置中,正则化技术也能提高可塑性。
<…/Images/6fea4e1bbf289e4f4dd649853787a311.png>
图片来源:[5]
我们现在知道可塑性的丧失是普遍存在的,但为什么会出现这种情况?
可塑性丧失的原因
正则化技术有助于保持可塑性的事实表明,可塑性与模型权重的一些属性相关。毕竟,正则化技术对权重施加了约束。
在某种意义上,模型随时间真正发生变化的是其权重。这些权重是随机初始化的,但在模型学习任务时,权重会被优化。后来,如果我们为另一个任务进行训练,这些权重应该为下一个任务进行优化(以此类推)。但这并没有发生,因为模型失去了可塑性。因此,这些权重最初可以针对一个任务进行优化,这意味着在最初的几个时期,它们必须具有某些特定的属性,以便它们能够学习(在训练过程中后来丢失的属性之一或多个)。
这些属性的丧失应该可以解释可塑性的丧失。
我们可以研究在训练过程中权重的哪些属性发生变化,特别是在模型开始失去可塑性时。这应该有助于我们了解原因。
在训练过程中,随着可塑性的丧失,恒定单元的比例会增加。当一个神经元变得恒定时,由此产生的梯度变为零或接近零。同样,这个权重不再改变,我们可以将其定义为不再具有适应性或可塑性。在ReLU 激活的情况下,当每个输入都产生零[6–7]时,神经元被定义为死亡。我们可以注意到,可塑性的丧失伴随着死亡神经元数量的增加[5]。
<…/Images/152c33508b331a0987a6ccce6d4bd0ba.png>
图片来源:[5]
一旦一个单元死亡,它将永远死亡。这意味着死亡神经元的增加对应于网络学习能力(活跃神经元较少,神经网络容量较少)的降低。
另一个有趣的现象是,当性能下降时,权重的平均幅度会增加。一般来说,权重幅度的增长与学习速度减慢和梯度下降收敛速度降低相关。
<…/Images/ae8da646853d44be381128925cdaef92.png>
图片来源:[5]
与塑性丧失同时发生的第三个有趣现象是表示的有效秩下降。有效秩考虑了每个维度如何影响由矩阵引起的变换。简单来说,有效秩与信息量相关。包含重要信息的维度越少,矩阵中冗余信息就越多。对于神经网络的权重矩阵,隐藏层的有效秩代表了产生该层输出所需的神经元数量。它越低,产生层输出所需的神经元就越少(因此大多数神经元不产生有用的信息)。随着训练的增加,网络的有效秩降低,因此产生相关信息的神经元减少,网络的表示能力也降低。这不利于学习新信息,因为我们只能依赖少数有用的神经元。
<…/Images/c62ba5b8dbdf5857e2ee07705f8f5188.png>
图片来源:[5]
这些因素解释了为什么我们以前看到正则化技术有所改进。L2-正则化确实减少了权重的幅度,但不会影响死亡单元和有效秩。Shrink and Perturb 是 L2-正则化和随机高斯噪声注入的组合,因此它也减少了死亡单元的数量。然而,这些技术中的任何一个都没有解决第三个问题。
我们如何提高模型中的神经元塑性?
提高网络塑性
我们需要一个方法,使我们能够拥有小的权重、少数死亡神经元(减少休眠),并在网络中保持变异性。通过了解需求,我们可以修改神经网络的学习方式,以保持塑性。
在反向传播的初始步骤中,权重被随机初始化,这允许有很高的变异性。然而,这种变异性在训练过程中(连同塑性一起)会丢失。我们可以在重新初始化一些权重时添加变异性。但我们必须小心,避免破坏网络学到的知识。因此,我们应该只重新初始化少量且未被网络使用的权重。作为一个一般的直觉,神经元的激活给我们提供了关于其价值的信息。如果一个神经元对其他神经元的贡献很低,它就没有传递重要信息,因此我们可以重新初始化它们。
这种方法被称为持续反向传播,并允许保持更多的可塑性。
<…/Images/1a79b9df8efdfd9370935b20d921618e.png>
由作者改编。图片来源:[5]
因此,持续反向传播似乎可以长时间维持网络的可塑性。遗憾的是,作者没有在 LLM 上对其进行测试。
离别感言
通常,大多数持续学习的研究都集中在保持网络稳定性(保留先前任务中学习到的信息,从而避免灾难性遗忘)上。然而,缺乏可塑性会影响网络获取新信息和新技能的能力,这在持续学习中同样重要。最近的研究阐明了为什么会出现这种可塑性的丧失。而且,这种可塑性的丧失是反向传播算法本身的内在属性。确实,这一点通过缺乏可塑性在各种架构和任务中的普遍存在得到了证明 [5]。
一方面,正则化技术促进了可塑性,而显然其他常见的参数选择会加剧这个问题(dropout,ADAM 优化器)。直到最近,我们不知道为什么;今天我们知道,这是权重爆炸、神经元休眠和效率排名之间微妙平衡的结果 [5, 8, 9]。因此,我们可以修改反向传播算法来考虑这些因素。
<…/Images/d3c9c03bbe120170b3a20fd1b8eb390a.png>
图片来源:[5]
持续反向传播 [5] 是一种保持可塑性的有趣方法。这是一个简单的方法,并且计算量不大,它重新初始化那些通常贡献很少的神经元(这些神经元通常是尝试减小模型大小的技术中剪枝的对象)。
持续反向传播使用效用度量来寻找和替换低效用单元,这意味着它基于启发式方法,因此不是最优的。此外,这些研究中的大多数都是在玩具模型上进行的(即使它们是广泛的基准测试),而不是在 LLM 这样的模型上。看到持续反向传播这样的方法在 LLM 上如何工作,以及它们是否允许这些模型学习新的知识或新技能,将会很有趣。
无论如何,可塑性的丧失是自然神经元和人工神经元之间明显的区别。持续学习对于许多应用都很重要,例如机器人遇到新的地形,或者将 LLM 适应于特定领域和新任务。今天我们更了解问题的起源以及如何提高模型的可塑性,但仍然存在一些开放性问题(以及需要进一步研究)。
您有什么想法?您尝试过持续学习的模型吗?请在评论中告诉我
如果您觉得这很有趣:
您可以查找我的其他文章,您也可以在*LinkedIn上与我联系或找到我。查看包含每周更新的机器学习与人工智能新闻的**此存储库。我开放合作和项目,您也可以在 LinkedIn 上联系我。您还可以免费订阅**以获取我发布新故事的提醒。*
以下是到我的 GitHub 存储库的链接,我在那里收集与机器学习、人工智能等相关代码和资源。
或者您可能对我的最近文章感兴趣:
TL;DR
-
今天的神经网络不具备持续学习的能力。这是因为它们无法保留之前学习到的信息(灾难性遗忘)或在训练后学习新信息(可塑性丧失)。
-
网络的可塑性丧失是所有深度学习模型的通病。无论架构、超参数或损失函数如何,可塑性丧失无处不在。尽管正则化技术有助于模型保持可塑性,但这意味着权重与可塑性丧失相关。
-
单元死亡增加、权重爆炸和有效网络秩的丧失是可塑性丧失的原因。正则化技术可以作用于前两个原因,但我们需要解决第三个问题。
-
我们可以通过采用某种方式重新初始化网络不再使用的神经元的反向传播修改来提高可塑性丧失。持续反向传播就是这种方法的例子。
参考文献
这里是撰写本文时参考的主要参考文献列表(仅引用文章的第一作者姓名)。
-
Ash, 2020, 关于神经网络训练的 Warm-Starting,链接
-
Achille, 2019, 深度网络中的关键学习期, 链接
-
Berariu, 2023, A study on the plasticity of neural networks, 链接
-
Lyle, 2023, Understanding Plasticity in Neural Networks, 链接
-
Dohare, 2024, Loss of plasticity in deep continual learning, 链接, 代码
-
Lu, 2019, Dying ReLU and Initialization: Theory and Numerical Examples, 链接
-
StackExchange, What is the “dying ReLU” problem in neural networks? 链接
-
Lyle, 2024, Disentangling the Causes of Plasticity Loss in Neural Networks, 链接
-
Lewandowski, 2023, Directions of Curvature as an Explanation for Loss of Plasticity, 链接
-
Wang, 2023, A Comprehensive Survey of Continual Learning: Theory, Method and Application, 链接
-
He, 2015, Deep Residual Learning for Image Recognition, 链接
-
Chebykin, 2023, Shrink-Perturb Improves Architecture Mixing during Population Based Training for Neural Architecture Search, 链接
128

被折叠的 条评论
为什么被折叠?



