在神经科学和心理学的世界里, 预测理解之间始终存在着一种张力。

如果你只想单纯预测人类或动物接下来会做什么,你可以在他们的行为数据上训练一个庞大的循环神经网络 (RNN) 。RNN 可能会达到很高的准确率,但它就像一个“黑盒”。它给你答案,却不会告诉你大脑如何解决问题。它无法提供科学理论。

另一方面,如果你想理解大脑,你需要构建符号认知模型 。 这些是紧凑的、可解释的方程 (就像简单的代码片段) ,描述了诸如“学习率”或“遗忘曲线”等机制。这些模型对科学家来说很容易阅读,但设计起来却极其困难。它们需要人类的直觉、反复试验,而且往往无法捕捉现实世界行为中杂乱的细微差别。

但如果我们能两全其美呢?如果我们能利用人工智能自动为我们撰写科学理论呢?

在一篇引人入胜的新论文《Discovering Symbolic Cognitive Models from Human and Animal Behavior》 (从人类和动物行为中发现符号认知模型) 中,来自 Google DeepMind 和多家学术机构的研究人员介绍了 CogFunSearch 。 该系统利用大型语言模型 (LLM) 充当自动化科学家,编写、测试和进化 Python 代码,以解释人类、老鼠和果蝇是如何学习的。

本文将深入探讨 CogFunSearch 的工作原理,为什么它能超越人类设计的理论,以及它揭示了关于思维隐藏算法的哪些奥秘。

科学家的困境: 理论优先 vs 数据优先

要理解这项研究的重要性,我们需要看看通常是如何进行认知建模的。

几十年来,标准的方法一直是理论优先 。 科学家阅读文献,迎来“尤里卡时刻” (灵光一现) ,然后写下一个方程 (例如,“我认为大脑根据预测误差乘以学习率来更新价值”) 。然后他们用数据测试这个模型。这种方法的局限性在于人类的想象力;可能的数学模型空间是无限的,而我们往往局限于我们已知的模型,比如 Q-learning。

最近,该领域开始涉足使用神经网络的数据驱动方法。虽然这些网络非常灵活且能完美拟合数据,但它们由数百万个无法解释的权重组成。知道 RNN 拟合了数据,并不能告诉你为什么受试者做出了某个选择。

CogFunSearch 试图通过搜索可解释的计算机程序空间来弥合这一差距。

核心方法: 进化算法遇上 LLM

CogFunSearch 建立在一种称为 FunSearch (函数搜索) 的技术之上,该技术将预训练的 LLM 与进化算法相结合。其目标不仅仅是输出文本,而是输出能解决特定科学问题的可执行 Python 代码。

发现的架构

这个过程是一个创造和评估的循环。它的运作方式就像一个自动化实验室:

  1. LLM 作为生成器: 系统从包含“种子程序”的提示词开始——这是认知模型的一个基本骨架。LLM 充当变异引擎。它获取代码并建议更改、添加或重写,有效地提出了关于大脑如何工作的新假设。
  2. 评估器 (批评家) : 生成的代码随后在真实的行为数据集上运行。如果代码崩溃或产生无意义的结果,它将被丢弃。如果它能运行,系统会根据它预测动物行为的准确程度对其进行评分。
  3. 进化选择: 表现最好的程序会被保存到数据库中,并作为下一代的提示词反馈给 LLM。经过数千次迭代,这些程序“进化”成了更好的科学家。

CogFunSearch 概览。图 A 展示了利用 LLM 进行进化的循环。图 B 展示了程序如何处理输入 (选择和奖励) 以更新隐状态。图 C 展示了评分机制。

双层优化问题

这个特定应用的棘手之处在于,认知模型不仅仅是代码逻辑;它还包含参数

例如,一个模型可能会说: “通过 alpha 乘以奖励来更新价值。”

  • 逻辑 (代码结构) 是 LLM 编写的。
  • 参数 (alpha) 是一个数值,因个体而异 (例如,一只老鼠学得可能比另一只快) 。

CogFunSearch 通过双层优化解决了这个问题:

  1. 外层循环 (LLM) : 搜索最佳结构 (Python 代码逻辑) 。
  2. 内层循环 (梯度下降) : 对于 LLM 编写的每个程序,系统使用梯度下降法为被测试的特定动物计算出最佳的特定参数 (\(\theta\)) 。

这确保了 LLM 不必猜测 42 号老鼠的确切学习率。它只需要写出学习的公式,内层循环会计算出该老鼠的最佳速率。

严格的评估

为了确保 AI 不仅仅是在死记硬背数据 (过拟合) ,研究人员使用了严格的交叉验证方案。

组织训练和测试数据。图表展示了数据如何被划分为训练集和测试集,并进一步细分为“拟合”和“评估”子集以确保评分的稳健性。

如上图 8 所示,数据被以多种方式划分。首先,受试者被分为训练组和测试组。在一个受试者内部,他们的会话被分为“偶数”和“奇数”。模型参数在偶数会话上拟合,并在奇数会话上评分 (反之亦然) 。这保证了高分代表了对行为真正的预测性理解。

实验: 从果蝇到人类

团队在三个不同的数据集上测试了 CogFunSearch,涵盖了生物复杂性的不同范围:

  1. 人类: 862 名参与者执行四臂老虎机任务 (在 4 个选项中选择以找到最佳奖励) 。
  2. 老鼠: 20 只老鼠执行具有二元奖励的双臂老虎机任务。
  3. 果蝇: 347 只果蝇在 Y 形迷宫中导航,通过气味获得奖励。

数据集图解。图 A 显示人类键盘选择。图 B 显示老鼠鼻触选择。图 C 显示果蝇 Y 形迷宫选择。

选择这些数据集是因为它们很大,而且至关重要的是, 它们已经被深入研究过。 顶尖科学家已经花费数年时间为这些特定数据集手工制作模型。这提供了一个可以去挑战的“人类专家基线”。

结果: 击败人类专家

主要问题是: AI 能写出比人类专家更好的科学理论吗?

答案是响亮的肯定的。

在所有三个物种中,CogFunSearch 发现的最佳程序都优于神经科学文献中最先进的模型。

  • 人类: AI 击败了“固执遗忘 Q-learning”模型 (Eckstein et al., 2024)。
  • 老鼠: AI 击败了“寻赏/习惯/赌徒谬误”模型 (Miller et al., 2021)。
  • 果蝇: AI 击败了“差分遗忘 Q-learning”模型 (Ito & Doya, 2009)。

发现的模型优于人类设计的模型。散点图显示了发现的模型与基线模型之间似然度的差异。平均值 (黑色条) 始终为正,表明性能更优。

在上图中,零线以上的任何点都代表 AI 模型比人类设计的模型更能预测该个体受试者。对于老鼠数据集,AI 模型为 100% 的测试受试者提供了更好的拟合。

缩小与神经网络的差距

研究人员还将他们可解释的符号模型与“黑盒”RNN (GRU 模型) 进行了比较。通常,RNN 由于其灵活性而远远优于符号模型。

然而,如下图所示,CogFunSearch 程序 (蓝色十字) 成功缩小了基线模型与 RNN 之间的大部分差距。虽然 RNN (橙色十字) 在原始预测能力上仍略占优势,但 AI 发现的程序在保持可读 Python 代码的同时,具有很强的竞争力。

CogFunSearch 与 RNN 的比较。图表显示 CogFunSearch 程序弥合了传统模型与深度神经网络之间的大部分性能差距。

解读“外星”科学

这种方法的真正价值不仅仅在于获得更高的分数;还在于阅读代码以了解 AI 如何解决问题。发现的程序为认知提供了几个有趣的见解。

1. 新颖的机制

针对人类数据集的最佳程序引入了一种机制,即学习到的价值会向其均值 (平均值) 衰减,而不是衰减为零或保持不变。它还追踪复杂的选择历史——诸如“距离上次切换的试验次数”之类的变量——这表明人类严重依赖重复和交替的模式,这与简单的奖励追踪截然不同。

对于老鼠数据集,AI 重新发现了人类科学家找到的“习惯”和“赌徒谬误”项,但改进了学习规则。它实现了一种“交叉学习”机制,即更新被选选项的价值也会微调未选选项的价值——这是标准模型经常忽略的一种微妙的依赖关系。

2. 生成有效性

一个好的模型应该能模拟出看起来像真实生活的行为。研究人员利用 AI 发现的程序生成“合成受试者”,并分析了他们的行为模式 (例如他们在获得奖励后重复选择的可能性) 。

发现的程序生成的合成数据集匹配真实数据中的模式。蓝线 (AI 模型) 在寻赏和选择固执性行为方面都紧密跟踪红线 (真实数据) 。

图 6 中真实数据 (红色) 与 AI 合成数据 (蓝色) 之间的匹配证实了程序不仅仅是在拟合统计噪声——它们捕捉到了决策的实际动态。

3. 复杂性权衡

CogFunSearch 最强大的功能之一是它生成一个程序,而不仅仅是一个。这使得科学家能够分析复杂性准确性之间的权衡。

我们可以绘制发现的程序图表,以找到“帕累托前沿”——即在给定代码复杂性水平下提供最佳准确性的程序集。

拟合质量与复杂性的权衡。散点图显示了明显的相关性: 更复杂的程序往往能更好地拟合数据,但高效的程序存在于“前沿”上。

在上图中,研究人员可以选择一个模型。他们是想要“得分最高的程序” (蓝色 X) ,这可能较难阅读?还是更喜欢“示例程序 3” (橙色十字) ,它简单得多但仍然优于基线?这种选择权使科学家能够选择他们所需的可解释性水平。

结论: 探索发现的新工具

CogFunSearch 代表了我们进行科学发现方式的转变。我们不再仅仅依靠人类的创造力来产生假设,而是可以使用 LLM 对“假设空间”进行广泛、公正的搜索。

这里发现的程序不是黑盒。它们是可读的、变量追踪的、基于逻辑的算法。它们表明人类和动物的学习涉及微妙的机制——如均值衰减和复杂的探索策略——这些是标准教科书模型所忽略的。

虽然这些符号模型与神经网络的原始能力之间仍有微小差距,但这种差距正在缩小。我们正在走向这样一个未来: AI 不仅为我们预测世界,而且帮助我们解释世界,用一行行 Python 代码写出思维的方程。