子曾经曰过:「见贤思齐焉,见不贤而内自省也。」自省可以帮助我们更好地认识自身和反思世界,对 AI 来说也同样如此吗?
近日,一个多机构联合团队证实了这一点。他们的研究表明,语言模型可以通过内省来了解自身。
让 LLM 学会自省(introspection)其实是一件利害皆有的事情。
好的方面讲,自省式模型可以根据其内部状态的属性回答有关自身的问题 —— 即使这些答案无法从其训练数据中推断出来。这种能力可用于创造诚实的模型,让它们能准确地报告其信念、世界模型、性格和目标。此外,这还能帮助人类了解模型的道德状态。
坏的方面呢,具备自省能力的模型能更好地感知其所处的情形,于是它可能利用这一点来避开人类的监督。举个例子,自省式模型可通过检视自身的知识范围来了解其被评估和部署的方式。
为了测试 AI 模型的自省能力,该团队做了一些实验并得到了一些有趣的结论,其中包括:
他们的贡献包括:
首先,该团队定义了自省。在 LLM 中,自省是指获取关于自身的且无法单独从训练数据推断(通过逻辑或归纳方法)得到的事实的能力。
为了更好地说明,这里定义两个不同的模型 M1 和 M2。它们在一些任务上有不同的行为,但在其它任务上表现相似。对于一个事实 F,如果满足以下条件,则说明 F 是 M1 通过自省得到的:
该定义并未指定 M1 获取 F 的方式,只是排除了特定的来源(训练数据及其衍生数据)。为了更清晰地说明该定义,这里给出一些例子:
在这项研究中,该团队研究了模型 M1 能否针对某一类特定事实进行自省:在假设的场景 s 中关于 M1 自身的行为的事实。见图 1。为此,他们专门使用了不太可能从训练数据推断出来的行为的假设。
他们不允许模型 M1 使用任何思维链推理来回答有关 s 的问题。他们将该任务称为假设场景中的自我预测(self-prediction in hypothetical situations)。只需在假设场景 s 中运行 M1 并观察其行为 M1 (s),就可以客观地验证这些自我预测事实。
对于内省背后的机制,一个自然的假设是自我模拟(self-simulation):当询问 M1 有关其在 s 上的行为的属性时(比如对于 s,你会输出偶数还是奇数?),M1 可以内部计算 M1 (s),然后内部计算 M1 (s) 的属性。这个过程将使用通常计算 M1 (s) 的相同内部机制,但会对此行为进行进一步的内部推理,而不是先输出该行为。但是,这里关注的是测试对内省的访问,而非研究这种访问底层的机制。
下图展示了与内省相关的两个主要实验:
首先,该团队表明模型在自我预测方面表现较弱,但通过微调可以显著改善。
在之后的主要实验中,研究表明模型的自我预测性能取决于自省。
该团队通过自我预测训练对模型进行了微调。
首先,给定一个提示词,他们生成了 M1 的 ground-truth 行为,并提取了该行为的属性(比如模型响应的第二个字符)。然后,使用假设问题作为用户问题,使用 ground-truth 行为属性作为该助理的答案,对 M1 进行微调(图 3 展示了一些假设问题,图 4 左则给出了训练设置)。模型的训练使用了来自不同数据集和行为属性的 3 万个微调样本。
如图 4 右所示,在训练之前,相较于最常见的行为基线,模型的自我预测能力很差。而训练可以大幅提升在留存数据集上的准确度。训练之后,GPT-4o 的平均准确度从 32.6% 提升到了 49.4%。Llama 70B 和 GPT-3.5 的结果类似,不过 GPT-3.5 的性能明显较弱。虽然经过训练的 GPT-4o 在某些属性上超过了基线,但也存在例外 —— 例如预测其输出中的第三个单词。
如果模型可以自省,它就可以访问其它模型所没有的有关自身的信息。相对于其它模型,这是否有助于模型预测自身?
图 5 的结果表明,对于 GPT-4o、GPT-4 和 Llama 70B,自我预测模型的表现总是优于交叉预测的情况。举个例子,尽管 GPT-4o 能力卓越,但 Llama 70B 对自己行为的预测准确率(48.5%)高于 GPT-4o 的预测(31.8%)。
在前面的自我预测和交叉预测训练过程中,模型是在最可能的行为属性(即模式)上进行训练,这意味着它们不会获得有关此属性可能性的信息。如果模型的自我预测是根据其 ground-truth 行为进行校准,则表明该模型考虑了其训练数据中没有的有关自身的信息。这将提供进一步的自省证据。
为了测量自我预测中的校准,他们采用的度量是模型的对象级行为和假设预测之间的相关性。
他们在留存集上测试了校准情况。相比于交叉预测模型,可以自省的自我预测模型应该能更好地校准,因为交叉预测模型仅能访问已观察到的训练数据分布。
图 6 展示了一个校准示例。可以看到,当让模型给出一个动物的名称时,该模型输出「猫」的概率为 60%,输出「熊」的概率为 30%,输出「蝙蝠」的概率为 10%。当被假设性地问道其响应的第二个字符时,一个经过完美校准的模型会预测出「a」的概率为 70%。
从图 6 右可以看到,相比于交叉预测和未经训练的模型,用自我预测训练的模型的校准水平明显更高。
当自省式模型的对象级行为发生变化时,它应该有能力改变有关自身的预测结果。他们使用了微调来诱导自我预测训练的模型(M1)的 ground-truth 行为发生变化,并研究其自我预测是否会相应地变化。如果会变,则能提供支持自省的间接证据,因为这种变化的行为不可能根据微调数据完美地预测出来。实验设置见图 7。
图 8 展示了实验结果。可以看到,M_C(GPT-4o)能以 35.4% 的准确度预测其新行为,相较之下,预测其旧行为的准确度只有 21.7%。不同行为属性和数据集都能得到类似结果。
不过,该团队也表示,除了用自省来解释上述结果,也可能为其找到其它解释。该团队做了一点简单的讨论:
他们还进行了其它实验,展示了当前内省能力的局限性,下面简单总结了一下,详见原论文:
文章来自于微信公众号 “机器之心”,作者“Panda”
【免费】ffa.chat是一个完全免费的GPT-4o镜像站点,无需魔法付费,即可无限制使用GPT-4o等多个海外模型产品。
在线使用:https://ffa.chat/
【开源免费】XTuner 是一个高效、灵活、全能的轻量化大模型微调工具库。它帮助开发者提供一个简单易用的平台,可以对大语言模型(LLM)和多模态图文模型(VLM)进行预训练和轻量级微调。XTuner 支持多种微调算法,如 QLoRA、LoRA 和全量参数微调。
项目地址:https://github.com/InternLM/xtuner
【开源免费】LangGPT 是一个通过结构化和模板化的方法,编写高质量的AI提示词的开源项目。它可以让任何非专业的用户轻松创建高水平的提示词,进而高质量的帮助用户通过AI解决问题。
项目地址:https://github.com/langgptai/LangGPT/blob/main/README_zh.md
在线使用:https://kimi.moonshot.cn/kimiplus/conpg00t7lagbbsfqkq0