从大型语言模型(LLM)中提取概念:Anthropic的最新发现 📖

社区文章 发布于2024年6月20日

大型语言模型(LLM)是大量神经元的集合,它们以某种方式输出有用的结果,但我们仍然不确定其内部机制是如何运作的:真实的“概念”是如何从这种复杂的数学结构中浮现出来的?

现在,大型语言模型(LLM)研究已经超越了“我们不明白这为什么有效,但扩大规模有效,所以我们堆积数万亿参数”的时代,人们重新聚焦于“让我们理解这些算法是如何工作的,以改进它们”。Anthropic团队多年来一直致力于可解释性研究,这让他们取得了显著的领先优势,并在理解大型语言模型的过程中发表了引人入胜的发现:在这里,我想分享我通过阅读一些里程碑式的出版物所学到的知识。

1. 模型实际上在每个神经元中叠加特征 - 叠加的玩具模型

  • 当你有2个神经元时,为什么不在整个集合中编码超过2个特征呢?(参见下图) ⇒ 这将允许在相同参数数量下通过编码更细粒度的概念来获得更好的性能!

image/png

  • 研究人员假设“我们实际观察到的神经网络在某种意义上嘈杂地模拟了更大、高度稀疏的网络”。

image/png

  • 这些特征会是什么?如果它们是以下特性会很好:
    1. 可解释的,这将使我们能够更好地理解大型语言模型(LLM)的工作原理。
    2. 超越性的,以实现更大的通用性:多语言、多模态等。
    3. 对模型行为产生明确影响:最好是你可以操作特征,并观察其对输出的影响。

2. 提取特征 - 迈向单义性

  • 利用LLM叠加特征有什么好处?
    • 将特征作为输出:它将提供更好的可解释性
    • 将特征作为输入:操纵特征将允许引导模型!
  • 在这篇论文中,研究人员简单地使用一个在模型 MLP 层激活上训练的稀疏自动编码器 (SAE),并训练它来寻找特征。这似乎有效,提取出了一些有意义的特征,例如“阿拉伯文本”或“遗传密码”!但由于实验仅限于一个非常简单的单层模型,提取出的概念仍然非常基础。

image/png

3. 将其扩展到真实的LLM - 扩展单义性

  • 研究人员扩展了先前的技术,并将其应用于 Anthropic 的中型 LLM Claude-3-Sonnet。
  • 他们获得的特征令人惊叹。
    1. 可解释性:✅ 你可以使用另一个LLM来标注特征(在他们的交互式地图中探索特征),它们确实对应着复杂的概念:参见下面的例子:有一个清晰的“旅游景点”特征,当提及埃菲尔铁塔或蒙娜丽莎时就会激活。对于大多数概念,相关的特征比任何一组神经元的相关性都要好得多。

image/png

  • 他们还检查了这些方面
    1. 超验性:✅,这些特征是多语言和多模态的,在不同模型中出现相同类型的特征。
    2. 控制模型行为的能力:✅,请看下面增加“金门大桥”特征如何改变模型行为!🤯

image/png

但是,SAE提取的特征是否比特定神经元更能代表特定概念呢?为了衡量这一点,研究人员首先要求Claude-3-Opus解释每个特征(比如一个简短的标签:“关于金门大桥”),然后要求它根据一个具体的句子(例如“我参观了金门大桥”,激活应该接近1)预测该特征的激活程度,然后将其与神经元或提取特征的实际激活进行比较。结果清楚地表明,SAE提取的特征比神经元更有意义,并且其意义随着SAE大小的增加而提高,这验证了使用这些特征的方法。

image/png

4+. 展望未来

OpenAI昨天也发表了一篇论文:它更侧重于概念的技术优化。他们沿用了Anthropic的方法,使用SAE来编码MLP层的激活,并且他们为这种方法添加了一个非常有见地的限制:当强制所有模型激活通过SAE解码的特征时,性能会下降到计算量减少10倍的模型水平。

这一限制意味着这种方法仍然远未完全解释大型语言模型(LLM)的工作原理,仍有进步空间:希望未来能继续分享更多成果,造福社区!

社区

注册登录 发表评论