语言模型为何如此难以理解
Why Language Models Are So Hard to Understand
AI 研究者正借鉴神经科学方法研究语言模型内部机制,试图解释其如何表征概念、完成检索与简单算术等任务。他们发现模型对同一任务的不同变体可能采用不同流程,还存在多个独立组件重复同一功能,以及关闭部分组件后其他组件会"涌现式自我修复"的现象。Google DeepMind 的 Asma Ghandeharioun 指出,许多看似必然成立的直觉在细究后并不成立。
SERIES
人工智能研究人员正在使用受神经科学启发的技术来研究语言模型如何工作——并揭示它们可能有多么令人费解。
You通常不会在不了解机器如何工作的情况下建造它。但对于构建大型语言模型的人工智能研究人员来说,理解恰恰是他们尚未实现的一件事。事实上,有时他们的工作感觉更像是园艺而非工程。
“把一颗番茄种子埋进土里,你就能得到一株番茄植株,”哈佛大学的语言模型研究员Martin Wattenberg说。“你给它浇水,在它周围除草,但这株番茄植株到底是如何工作的呢?”
一些科学家通过观察语言模型对不同提示的响应来研究它们——这种方法类似于行为心理学。受神经科学启发,在机制可解释性这一新兴子领域的研究人员则试图通过打开模型并在内部探查来理解它们。他们早期的努力已经帮助解释了语言模型如何表示概念,以及它们如何完成某些简单任务。他们还揭示了一些意外发现,表明真正理解人工智能可能有多么棘手。
大型语言模型是围绕数学对象构建的,这些对象大致基于人脑的结构。它们被称为人工神经网络,将许多简单的数学运算串联在一起,处理表示词语的数字串。语言模型对提示的响应是胡言乱语还是异常流畅,取决于另一组称为参数的数值,这些数值描述了其神经网络内部的连接。大型语言模型可以拥有数十亿甚至数万亿个参数,而研究人员不知道如何预先选择一组好的数值。相反,他们从随机数值开始,然后给模型大量数据和一个简单目标:给定该数据集中的任何文本片段,预测下一个词。
模型将这个词语预测任务重复数万亿次。每次尝试之后,一个单独的算法会微调模型的参数,使其朝着让正确答案稍微更可能的方向移动。这个过程被称为训练,但这有点用词不当。一旦研究人员启动它,他们参与模型发展的程度就像园丁看着番茄植株生长一样。
理论上,研究人员可以窥视一个完全训练好的语言模型内部,读出其所有参数的值。他们还可以通过记录模型每个内部组件的输出或“激活”来衡量模型对任何特定提示的响应。这些共同提供了任何神经科学家都会羡慕的大量数据——类似于一个人大脑的完美地图,以及用于监测每个神经元活动的独立电极。但所有这些数字并不能构成解释。祝你好运能用它们来预测模型将如何响应新的提示。
幸运的是,可解释性研究人员能做的不仅仅是读取参数和激活值:他们还可以修改它们。编辑参数类似于超精准的脑部手术——一把能够微调单个神经元的手术刀。编辑激活值使研究人员能够暂时改变特定组件对任何给定刺激的响应,以观察这如何影响模型的输出。
激活编辑还允许研究人员做类似于复制和粘贴心理状态的事情:他们给模型一个提示,记录某些组件的激活,然后将这些激活插入模型对第二个提示的响应中。研究人员已使用这种技术来精确定位某些事实在语言模型中的存储位置。但这样的结果并不总是直截了当的。即使有强有力的证据表明某个概念存储在模型的某一部分,有时也可以通过在另一部分进行调整来改变其对该概念的认知。这是神经网络内部运作违背人类直觉的众多案例之一。
“有太多事情看起来应该是绝对正确的,但当你仔细观察时,它们却并非如此,”Google DeepMind 的可解释性研究员 Asma Ghandeharioun 说。
研究人员在识别语言模型执行任务时所使用的程序方面也取得了进展,例如从句子前面检索相关词汇、识别某些词的语法功能或进行简单算术运算。他们观察到,有时模型对同一任务的不同变体会遵循不同的程序,其方式显得随意。这就像在刷牙前先查看天气,因为如果下雨你就总是使用一支亮粉色的牙刷。在其他情况下,研究人员发现模型包含许多独立的组件集群,它们做着完全相同的事情,这可能会妨碍区分不同组件效果的努力。他们甚至观察到一种“涌现式自我修复”现象,即停用模型的一部分会导致其他组件改变其行为并承担被关闭部分的功能。
尽管存在这些挑战,许多可解释性研究人员对该领域的前景仍持谨慎乐观态度。“取得进展是可能的,”Wattenberg 说。“我们远远领先于五年前的水平。”
来源:Hacker News · quantamagazine.org