好的、坏的、丑陋的:神经网络的记忆
原文towardsdatascience.com/the-good-the-bad-an-ugly-memory-for-a-neural-network-bac1f79e8dfd|人工智能|记忆|神经网络|学习|https://github.com/OpenDocCN/towardsdatascience-blog-zh-2024/raw/master/docs/img/1e1ee7fbb30819e6f820f4d17dcd3b74.png由作者使用 DALL-E 生成的图像没有人有足够的记忆力去成为一个成功的骗子。 —— 亚伯拉罕·林肯记忆比墨水更难以抹去。 —— 安妮塔·洛斯**记住错误泛化正确。**这被认为是人工智能的一个教条。但为什么记忆有什么问题直观地说一个记住了整本书的学生如果练习题与书中的不同仍然可能考试不及格。如果记忆不等于学习有时一点记忆也可能是有益的。例如学习复杂规则来记忆历史人物名单是没有意义的。你必须知道如何找到正确的平衡。神经网络中也在发生类似的事情。本文讨论了神经网络与记忆之间复杂的爱恨关系。人工智能正在改变我们的世界塑造我们的生活方式和工作方式。理解它的工作原理及其影响从未如此关键。如果您正在寻找对复杂人工智能主题的简单、清晰的解释您就来到了正确的位置。点击关注或*免费订阅*以获取我的最新故事和见解。记忆与学习之间的复杂关系通常情况下神经网络和记忆之间存在着复杂的关系。神经网络倾向于学习捷径或简单的规则这些规则对大多数数据来说都是好的。那些不符合这些规则的例子被模型视为例外。然而这些捷径可以作为一种加快训练和快速优化损失的方法尽管如此它们往往会产生意想不到的影响。对于一些作者[1]来说这就是神经网络能够同时表现出非凡的性能和惊人的失败的原因一个核心观察是许多失败案例并不是独立的现象而是相互关联的因为深度神经网络遵循了未预期的“捷径”策略。虽然表面上看起来成功但这些策略在稍微不同的环境下通常都会失败。 —— 来源…/Images/28d6f9e95651a487447fc5ba88a8c0cb.png图像来源[2]简而言之[神经网络](https://www.ibm.com/topics/neural-networks)试图以牺牲复杂性的代价学习简单的特征即使后者具有更大的预测能力使网络非鲁棒。这也使得神经网络无法产生可靠的置信度估计并且经常得出次优的泛化 [3]。其中一些甚至不是它们的错。像梯度下降、正则化、大的学习率和小的批量大小这样的训练技术倾向于更简单的模型 [4]。这是因为复杂的模型通常意味着过拟合即模型记住了训练数据中的模式这些模式对泛化没有用。更简单的模型应该学习超出训练数据的通用规则。同时降低复杂性有利于学习启发式方法。启发式方法即使它们是错误的对大多数数据也是有益的它们是模型可以用于大多数数据的简单特征或规则因此在训练中受到青睐。神经网络通常有足够的参数来记住整个数据集[5]。一方面它可能会记住数据集另一方面训练过程推动它走向简单的解决方案。结果是网络学习到对大多数数据集有效的简单解决方案并记住例外情况。为什么这是危险的在夜晚看星星时很容易得出结论它们是围绕地球运行的。以地球为中心的模型可以解释几乎所有的天体只有少数显著的例外。托勒密模型使用半圆来解释这些例外其余的则通过一个简单的规则来解释。神经网络做的是同样的事情它们寻找一个简单的规则一旦找到其余的就成了例外。当这些简单规则是虚假相关性时这成为一个严重的问题。例如许多用于诊断的神经网络设计失败因为它们学习了虚假相关性并使用它们进行预测 [6]那个著名的神经网络在诊断恶性皮肤病变的准确性上达到了与人类皮肤科医生相当的水平。然而对模型显著性方法的更仔细检查揭示了这样一个事实这个模型在某人皮肤的照片中寻找的最有影响力的单一因素是尺子的存在。来源尺子的存在意味着皮肤科医生已经识别出癌变病变因此模型是无用的。…/Images/804cb26930bf441464f5a32d0e4043a2.png图片来源[12]然而诊断神经网络是否已经学习到虚假相关性并不总是那么容易。在这种情况下我们可能会对神经网络的可靠性产生错误的认知。因此了解一个实现了近乎完美准确性的模型是学习到了可泛化的模式还是使用了虚假相关性进行记忆至关重要。因此有几个问题如何监控模型的泛化能力如何识别虚假相关性这些虚假相关性何时会影响训练我们如何纠正这种行为天才综合征模式识别等同于智能吗对虚假相关性的追求模型的泛化能力是在一个保留集上评估的。通常测试集是模型在训练期间没有看到的 dataset 的一部分。因此避免任何数据泄露至关重要否则这种评估将没有用。虚假相关性指的是变量之间在数据中看似具有统计学上的显著性但实际上并非真正的因果关系或反映真实潜在关系的关联。这些模式通常只存在于训练集中而不存在于新的或未见过的数据中。这尤其发生在训练集有偏差或不能代表数据的真实分布时。…/Images/af5e3f50341fd64c8ec0b35105825514.png图片来源[7]通常情况下人们认为在初始训练阶段模型学习这些虚假相关性并记住这些例子。只有在第二阶段才会出现真正的泛化。掌握学习是泛化而非记忆因此不同的研究试图利用这一事实来创建自动系统以识别虚假相关性。这些方法随后寻找在早期学习或过于简单以解决复杂问题的模式[9–10]基于这个观察我们对复杂问题的非常简单的解决方案持怀疑态度并相信它们将具有较差的 o.o.d.泛化。 – 来源因为捷径简单且易于学习小模式可以用来识别它们。其他方法试图通过纠正损失函数来识别和消除这些相关性 [11]。虚假相关性的影响虚假相关性降低了模型泛化的能力。本身这是不好的但通常是可以诊断的因为模型的表现会次优。在存在虚假相关性的情况下模型首先学习对大多数示例有用的模式。一旦它在大多数示例上达到近乎完美的准确率它就开始学习少数示例 [2]。在分类的情况下这意味着模型学习到一个不是最优但仍然具有预测性的决策边界。如果模型有足够的参数或在另一种可能导致记忆化的情况下模型会记住少数示例。这将导致模型专注于学习示例而不再尝试学习真正的核心特征。…/Images/1c842ff157d246a893e58ab90a49d8f1.png左面板模型学习到虚假的相关性但仍然能够进行次优的泛化。中央面板模型学习到少数示例但无法泛化。右面板模型能够泛化并且没有记住少数示例。图片来源[2]神经网络可以利用虚假特征并记住异常情况以实现零训练损失从而避免学习更可泛化的模式。然而一个有趣且有些有争议的问题是记忆化是否总是不好的 – 来源不一定。模型可能会导致记忆化但它可能不会影响泛化。这完全取决于数据的性质和训练的动态。一般来说我们可以有三种情况 [2]良好的记忆法。模型学习数据背后的真实函数但也记住了一些训练数据中的残余噪声。这种记忆法是无害的因为它不会损害泛化。这种现象也被称为良性过拟合即模型对训练数据进行过拟合但仍然能够泛化到未见过的数据。不良的记忆法。模型更多地依赖于示例特定的特征而不是真正的函数这减少了可泛化模式的学习并导致次优性能。丑陋的记忆法。模型进入过拟合状态学习了一个非线性且复杂的函数然而这个函数并不适用于泛化。…/Images/63edb7a820dae9d66bfbbe350ca3b052.png图片来源[2]因此记忆减少了网络的泛化能力。网络存储的例子要么是例外要么是异常值。这本身可能导致性能下降或多或少严重但通常不足以导致灾难性的下降。当模型学习虚假相关性不反映数据真实潜在函数的模式并将它们记住时这将是灾难的配方。模型依赖于虚假相关性进行预测并依赖于记忆进行其余部分。打开人工大脑用于 LLM 检查的稀疏自动编码器通过不可思议的镜子LLMs 是否像人类大脑一样记忆我们如何解决这个问题显然在训练期间识别记忆现象并不容易。当模型在测试集上进行测试时可以识别记忆。基于[2]中的这个假设他们提出了记忆感知训练MAT来解决神经网络中的记忆问题。MAT 旨在识别记忆行为并利用它们来指导训练过程。为此它使用对保留数据保留以进行这些预测的数据的预测。这种方法鼓励模型通过调整 logits模型的原始预测来修改其输出使其对记忆数据点不那么敏感。然后我们使用验证集或另一个未用于训练的数据集来识别是否存在任何存储。如果模型在训练集上表现出低错误率但在这个保留集上有高错误率那么模型可能记住的比学习可泛化模式更多。如果发生记忆MAT 通过向损失函数正则化防止模型过于接近数据因此倾向于记住数据添加正则化项来阻止这种现象。作者[2]定义一个自我影响分数作为一个度量用于识别模型在训练期间记住哪些数据点。这提供了对数据点的预测受同一数据点影响的程度的洞察。直观地说如果一个示例的预测受其自身影响这意味着模型已经记住了它而不是使用一般规则进行预测。从数学上讲这个自我影响分数是通过当数据点被扰动或移除时模型损失函数的变化来计算的。如果自我影响分数高则模型对那个数据点敏感可能过度拟合或记忆它。相反低分表明模型学习了一般规则并且对任何单个例子都不是过于具体。作者表明对于少数类使用经典梯度下降训练的模型显示出高自我影响分数因此存在记忆。当使用 MAT 算法时这种行为得到纠正。…/Images/4403eb00735b137edc1fa9c80ce5752f.png图片来源[2]离别时的思考学习与记忆不同。真正的学习是理解一些一般规则并学习如何将这些规则应用到解决问题上。任何学生在考试前都会记住一些公式。本身这并不理想但这并不意味着学生会考试不及格。然而他可能会做一些他无法回答的练习因为他会应用这些公式而没有真正理解。对于神经网络来说情况相同如果模型学习了一般化的模式并且只记住少数几个例子其性能会受到轻微的影响。另一方面模型可能会学习虚假的相关性并存储不符合这些模式的异常情况。虚假的相关性更容易学习因为它们代表了复杂问题的简单解决方案。神经网络试图尽可能快地优化损失启发式方法有助于这一目标。拥有足够的参数神经网络可以记住其余的例子并在训练数据上实现完美的损失。之后它们将在未见过的数据上失败得非常惨烈。在训练过程中识别哪些例子被存储以及哪些学习到的模式是虚假的相关性这不是一项容易的任务。能够在训练过程中识别记忆现象这允许这种行为得到纠正。由于这种现象可以在测试集上测试模型时被识别我们可以使用一个保留集。在[2]中他们正是这样做的他们使用一个保留集来识别存储现象并使用正则化来纠正训练的方向。神经网络有记忆的倾向。它们拥有的参数越多记住例子的风险就越大。大型语言模型LLMs 拥有巨大的参数量可以在内存中存储大量数据。记忆、虚假的相关性和 LLMs 之间的关系尚未完全理解。似乎在存储训练数据和学习一般化模式之间存在一种平衡[13–15]。这仍然是未来研究的一个引人入胜的前景。你怎么看你有没有观察过存储或虚假的相关性请在评论中告诉我如果您觉得这个内容很有趣您可以在其他地方找到我的其他文章您也可以在*LinkedIn上与我联系或找到我。查看包含每周更新的机器学习与人工智能新闻的这个仓库。我愿意接受合作和项目您也可以在 LinkedIn 上联系我。您还可以免费订阅**以便在发布新故事时收到通知。*每当 Salvatore Raieli 发布内容时您都会收到电子邮件通知。以下是我 GitHub 仓库的链接我在那里收集与机器学习、人工智能以及更多相关的代码和资源。GitHub – SalvatoreRa/tutorial: 有关机器学习、人工智能、数据科学等的教程或者您可能对我的最近的文章感兴趣为所有 Transformer 提供记忆共享以表现更好从解决方案到问题更智能的 AI 的反向路径你不是作家ChatGPT – 但你听起来像一位。控制论神经科学家比专家更聪明吗参考文献部分这里是我在撰写本文时参考的主要参考文献列表文章只引用了作者的名字。Geirhos, 2020, 深度神经网络中的捷径学习链接Bayat, 2024, 记忆的陷阱当记忆损害泛化时链接Shah, 2020, 神经网络中简单偏差的陷阱链接Dherin, 2022, 为什么神经网络找到简单的解决方案几何复杂性的许多正则化器链接Zhang, 2016, 理解深度学习需要重新思考泛化链接Roberts, 2021, 使用胸部 X 光片和 CT 扫描检测和预测 COVID-19 的常见陷阱和建议链接Kim, 2019, 学习不学习使用有偏差数据进行深度神经网络训练链接Li, 2019, 通过数据集重采样消除表示偏差的 REPAIR链接Dagaev, 2021, 一个过于完美的先验以减少捷径依赖链接南某, 2020, 从失败中学习从有偏分类器训练无偏分类器链接刘某, 2023, 通过 logit 校正避免虚假相关性链接叶某, 2024, 机器学习中的虚假相关性综述链接卡林尼, 2022, 量化神经语言模型中的记忆链接施瓦茨 child, 2024, 通过对抗压缩的视角重新思考大型语言模型的记忆链接王某, 2024, 泛化与记忆追踪语言模型能力到预训练数据链接
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2616660.html
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!