和风网标志

机器如何“理解”数据? |广达杂志

日期:

介绍

尽管人工神经网络非常出色,但它仍然像以前一样难以理解。随着这些网络变得越来越大,它们的能力也会爆炸,但破译它们的内部运作方式却几乎是不可能的。研究人员不断寻找对这些模型的任何见解。

几年前,他们发现了一种新的。

2022 年 XNUMX 月,ChatGPT 背后的公司 OpenAI 的研究人员, 报道 当这些系统意外地允许比平常更长时间地咀嚼数据时,它们会开发出解决问题的独特方法。通常,当工程师用神经网络(由称为人工神经元的计算单元组成)构建机器学习模型时,他们倾向于在某个点停止训练,称为过度拟合状态。此时网络基本上开始记忆其训练数据,并且通常不会推广到新的、未见过的信息。但当 OpenAI 团队意外地训练了一个小型网络,超出了这一点时,它似乎对这个问题的理解超出了简单的记忆——它可以突然在任何测试数据上取得优异成绩。

研究人员将这种现象命名为“grokking”,这是科幻小说作家 Robert A. Heinlein 创造的术语,意思是“彻底理解某件事,使观察者成为被观察过程的一部分”。经过过度训练的神经网络旨在执行某些数学运算,它已经了解了数字的一般结构并将结果内化。它灵光一闪,成为了解决方案。

“这非常令人兴奋且发人深省,”说 米哈伊尔·贝尔金 加州大学圣地亚哥分校的教授,研究神经网络的理论和经验特性。 “这激发了很多后续工作。”

事实上,其他人已经复制了结果,甚至对其进行了逆向工程。最近的论文不仅阐明了这些神经网络在思考时正在做什么,而且还提供了一个新的镜头来检查它们的内部结构。 “grokking 设置就像一个很好的模型有机体,可以帮助理解深度学习的许多不同方面,”说 埃里克·米肖 麻省理工学院。

窥视这个有机体的内部有时是相当有启发性的。 “你不仅可以找到美丽的结构,而且这种美丽的结构对于理解内部发生的事情很重要,”说 尼尔·南达,现在在伦敦的 Google DeepMind。

超越极限

从根本上来说,机器学习模型的工作似乎很简单:将给定的输入转换为所需的输出。学习算法的工作就是寻找能够做到这一点的最佳函数。任何给定的模型只能访问有限的函数集,并且该集通常由模型中的参数数量决定,在神经网络的情况下,这大致相当于人工神经元之间的连接数量。

介绍

当网络进行训练时,它往往会学习更复杂的功能,并且预期输出与实际输出之间的差异开始取决于训练数据。更好的是,这种差异(称为损失)对于测试数据(训练中未使用的新数据)也开始下降。但在某些时候,模型开始过度拟合,在训练数据的损失不断下降的同时,测试数据的损失开始上升。因此,通常情况下,研究人员会在此时停止训练网络。

当 OpenAI 团队开始探索神经网络如何进行数学计算时,这是普遍的观点。他们当时用的是一个小 变压器 - 一种网络架构,最近彻底改变了大型语言模型 - 进行不同类型的模块化算术,其中您使用有限的一组数字进行循环。例如,模 12 可以在钟面上完成:11 + 2 = 1。该团队展示了将两个数字相加的网络示例, a b,产生输出, c, 以 97 为模(相当于有 97 个数字的钟面)。然后他们在未见过的组合上测试了变压器 a b 看看它是否能正确预测 c.

正如预期的那样,当网络进入过度拟合状态时,训练数据的损失接近于零(它已经开始记住所看到的内容),并且测试数据的损失开始攀升。这并不是一概而论。 “有一天,我们很幸运,”团队负责人 Aletha Power 说道, 2022 年 XNUMX 月讲话 在旧金山举行的一次会议上。 “我所说的幸运,是指健忘。”

正在训练网络的团队成员去度假了,忘记停止训练。随着这个版本的网络继续训练,它突然对看不见的数据变得准确。自动测试向团队其他成员揭示了这种意想不到的准确性,他们很快意识到网络已经找到了安排数字的巧妙方法 ab。在内部,网络表示某些高维空间中的数字,但是当研究人员将这些数字投影到二维空间并映射它们时,这些数字形成了一个圆圈。

这太令人惊讶了。该团队从未告诉模型它正在执行模 97 数学运算,甚至没有告诉模型模是什么意思——他们只是向它展示了算术示例。该模型似乎偶然发现了一些更深层次的解析解——一个推广到所有组合的方程 a b,甚至超出训练数据。网络已经畅通无阻,测试数据准确率达到100%。 “这很奇怪,”鲍尔告诉她的观众。

该团队使用不同的任务和不同的网络验证了结果。这一发现成立了。

时钟和比萨饼

但网络找到的方程式是什么? OpenAI论文没有说,但结果引起了Nanda的注意。 “神经网络的一个核心谜团和令人烦恼的事情是,它们非常擅长自己所做的事情,但默认情况下,我们不知道它们是如何工作的,”南达说,他的工作重点是对训练有素的逆向工程网络来弄清楚它学到了什么算法。

Nanda 对 OpenAI 的发现很着迷,他决定拆开一个已经出现的神经网络。他设计了一个更简单版本的 OpenAI 神经网络,这样他就可以在模型学习进行模块化算术时仔细检查模型的参数。他看到了同样的行为:过度拟合让位于泛化和测试准确性的突然提高。他的网络也将数字排列成一个圆圈。虽然费了一番功夫,但南达最终还是明白了原因。

虽然它代表的是一个圆圈上的数字,但该网络并不是像幼儿园的孩子看时钟那样简单地计算数字:它正在做一些复杂的数学运算。通过研究网络参数的值, Nanda 和同事透露 它通过对时钟数字执行“离散傅立叶变换”来将它们相加——使用正弦和余弦等三角函数转换数字,然后使用三角恒等式操纵这些值以获得解决方案。至少,这是他的特定网络正在做的事情。

当麻省理工学院的一个团队 随访 在 Nanda 的工作中,他们表明摸索神经网络并不总能发现这种“时钟”算法。有时,网络会找到研究人员所说的“披萨”算法。这种方法想象将披萨分成几片并按顺序编号。要添加两个数字,请想象从披萨中心向相关数字绘制箭头,然后计算平分前两个箭头形成的角度的线。这条线穿过披萨片的中间:披萨片的数量是两个数字之和。这些运算也可以写成正弦和余弦的三角和代数运算 a b,理论上它们与时钟方法一样准确。

介绍

“时钟和披萨算法都有这种循环表示,”说 刘子明,麻省理工学院团队成员。 “但是……他们利用这些正弦和余弦的方式是不同的。这就是为什么我们称它们为不同的算法。”

但这还不是全部。在训练大量网络进行模数学之后,Liu 和同事发现这些网络发现的算法中约有 40% 是披萨或时钟算法的变体。该团队无法破译网络在其余时间里在做什么。对于披萨和时钟算法,“它恰好找到了我们人类可以解释的东西,”刘说。

无论网络在解决问题时学习什么算法,它的泛化能力都比研究人员想象的更强大。当马里兰大学的一个团队 喂养一个简单的神经网络 当训练数据带有随机错误时,网络最初的表现与预期一致:训练数据、错误等都过拟合,并且在未损坏的测试数据上表现不佳。然而,一旦网络摸索并开始正确回答测试问题,即使是错误的条目,它也可以产生正确的答案,忘记记忆的错误答案,甚至可以推广到其训练数据。 “grokking 任务实际上对于此类腐败非常强大,”说 达希尔·多西,该论文的作者之一。

控制权之战

因此,研究人员现在开始了解网络收集数据的过程。南达认为,摸索的明显外在突然性是从记忆到泛化的逐渐内部转变的结果,这种转变在神经网络内部使用了两种不同的算法。他说,当网络开始学习时,它首先会找出更容易记忆的算法;然而,即使算法更简单,它也需要大量资源,因为网络需要记住训练数据的每个实例。但即使在记忆过程中,神经网络的某些部分也开始形成实现通用解决方案的电路。这两种算法在训练期间争夺资源,但如果网络使用称为正则化的附加成分进行训练,泛化最终会获胜。

“正则化慢慢地将解决方案转向泛化解决方案,”刘说。这是一个降低模型功能能力的过程——模型可以学习的功能的复杂性。随着正则化修剪模型的复杂性,复杂性较低的泛化算法最终取得了胜利。 “对于相同[水平]的性能,泛化更简单,”南达说。最后,神经网络抛弃了记忆算法。

因此,虽然延迟的泛化能力似乎突然出现,但网络内部的参数正在稳步学习泛化算法。只有当网络既学习了泛化算法又完全删除了记忆算法时,你才会感到困惑。南达说:“看似突然的事情有可能在表面之下实际上是渐进的。”这个问题也出现在 其他机器学习研究.

尽管取得了这些突破,但重要的是要记住,摸索研究仍处于起步阶段。到目前为止,研究人员只研究了极小的网络,尚不清楚这些发现是否适用于更大、更强大的网络。贝尔金还警告说,与当今神经网络完成的所有不同任务相比,模块化算术只是“沧海一粟”。对此类数学问题的神经网络解决方案进行逆向工程可能不足以理解推动这些网络走向泛化的一般原理。 “研究树木真是太棒了,”贝尔金说。 “但我们还必须研究森林。”

尽管如此,洞察这些网络内部并分析理解它们的能力具有巨大的影响。对于我们大多数人来说,傅里叶变换和平分圆弧是一种非常奇怪的模加法——人类神经元不会那样思考。 “但如果你是用线性代数构建的,那么这样做实际上很有意义,”南达说。

“这些奇怪的[人造]大脑的工作方式与我们的不同,”他说。 “[他们]有自己的规则和结构。我们需要学会思考神经网络是如何思考的。”

现货图片

最新情报

现货图片