智东西5月10日报道,今天,OpenAI官方博客发布新的研究进展,研究人员正在使用GPT-4来自动解释GPT-2的行为。
当下大型语言模型正在扎堆发布,但对于它背后的思考过程我们知之甚少。而今天,OpenAI正在打开大型语言模型的思考“黑盒”,让AI被自己解释!
这一技术的具体实现方式是,研究人员先给定GPT-2一个主题,并让其生成文本序列,再用GPT-4解释GPT-2生成的内容,再通过GPT-4模拟GPT-2的下一步操作,最后将GPT-4模拟生成的和GPT-2实际生成的内容进行对比评分。
目前,OpenAI已经通过GPT-4对GPT-2中307200个神经元进行了书面解释,从结果来看,绝大多数的解释评分并不高,超过1000个神经元的解释得分高于0.8,不过研发人员称,这一结果意味着基于GPT-4,他们已经解释了神经元的大部分激活行为。
虽然目前从结果来看,OpenAI通过GPT-4解释GPT-2的效果并不完美,但这一阶段性的成果给AI可解释性研究提供了思路,这一方法会随着AI的发展而不断精进。
此外,OpenAI正在开源其307200个神经元的书面解释的数据集和可视化工具,以及使用OpenAI API上公开可用的模型进行解释和评分的代码。
论文地址:
https://openaipublic.blob.core.Windows.net/neuron-explainer/paper/index.html
神经元查看器:
https://openaipublic.blob.core.windows.net/neuron-explainer/neuron-viewer/index.html
GitHub开源地址:
https://github.com/openai/automated-interpretability
OpenAI解释神经元的过程使用了三种算法,分别是能显示神经元对文本摘录响应的解释器模型Explain、使用模拟器模型Simulate根据生成文本解释模拟神经元激活、Score算法对模拟激活内容与真实激活内容的匹配程度进行评分。
在测试过程中,研究人员使用GPT-2预训练模型作为被解释的模型,使用GPT-4作为解释器和模拟器模型。
研究人员选择不同的文档来生成解释和模拟,这一方法包括在每个神经元上运行下面3个步骤:
首先,先给定GPT-2一个主题去生成文本,然后使用GPT-4来生成对GPT-2生成文本序列的行为解释。
如,当GPT-2生成“漫威漫画(Marvel comics vibes)”相关内容时,GPT-4生成的解释是其文本中有“对电影、角色和娱乐的引用”。给定主题是“明喻(similes)”时,GPT-4生成的解释是“比较和类比,常用‘like(类似)’这个词”。
▲测试案例:上图主题是“漫威漫画(Marvel comics vibes)”、下图主题是“明喻(similes)
第二步,使用GPT-4模拟神经元的行为。这一步骤想要回答的问题是,假设GPT-4的解释准确而全面地解释了神经元的行为,那么该神经元将如何针对特定序列中的每个标记激活。
刚开始,研究人员使用了“一次一个(one at a time)”方法,提供给GPT-4的提示由一些小样本和预测单个神经元激活的单样本示例组成,但这种方法速度较慢。随后,研究人员使用少量示例并行化了所有标记的概率预测,使得激活值变为文本序列中随机位置的实际值,他们将这种方法称为“一次全部(all at once)”。
经验证,这种研究方法在预测人类偏好方面,与速度较慢的“一次一个”方法效果类似。
第三步,将GPT-4模拟的内容与GPT-2真实生成的内容进行对比,根据其匹配程度进行评分。
研究人员采用的主要评分方法是相关性评分,如果模拟神经元的行为与真实神经元相同,则得分为1。如果模拟神经元的行为是随机的,当解释与神经元行为无关得分将趋向于0。
不过,基于模拟的评分实际上并不能反映人类对解释的准确评估。因此他们收集了人类对GPT-4生成解释质量的评估,并与模拟生成的评分结果相比较。
结果表明,人类往往更喜欢得分较高的解释而不是得分较低的解释,随着得分差距的扩大,这种现象的发展趋势也会更加明显。
从整体评分结果来看,OpenAI测验生成的绝大部分解释得分都较低。不过同时,研究人员也发现了一些GPT-4不理解的有趣神经元。
如“dollars”的意思,第一层理解为“与货币和金钱有关的词”;第二层为“‘buck(美元)’一词或包含‘buck(美元)’的实例”;第29层为“提及‘美国’及相关术语”。
因此,研究人员希望随着解释的改进,能够快速理解这些大型语言模型生成的有趣内容。研发人员认为,他们可以使用机器学习技术来进一步提高GPT-4解释的能力。
以下几种方法可以帮助提高评分结果:
1、迭代解释(Iterating on explanations)。研发人员通过要求GPT-4提出可能的相反案例,然后根据它们的激活结果修改解释来提高分数。
2、使用更大的语言模型来给出解释(Using larger models to give explanations)。随着解释器模型能力的提高,平均分数也会上升。然而,即使是GPT-4这样参数规模的大型语言模型也给出了比人类更差的解释,这表明还有改进的余地。
3、更改已解释模型的架构(Changing the architecture of the explained model)。具有不同激活函数的训练模型提高了解释分数。
因此基于上述考虑,OpenAI开源了数据集,他们希望研究界能够开发新技术来生成更高分的解释,并开发更好的工具来解释GPT-2。
目前,OpenAI用于解释GPT-2的方法还有很多局限性:
研究人员希望GPT-4生成的解释是简短的自然语言,但神经元可能具有非常复杂的行为,无法被简洁清晰的叙述出来。例如,神经元可以代表许多不同的概念,或者可以代表人类不理解或无法用语言表达的单一概念。
他们希望最终自动找到并解释实现复杂行为的整个神经回路,使得神经元和注意力中枢协同工作。OpenAI当前的方法仅将神经元行为解释为原始文本输入的函数,而没有说明其接下来产生的影响。例如,当神经元激活的位置是一个句号,这可以指向后面的英文单词应该大写开头等。
这一评分系统解释了神经元的行为,但没有试图解释产生这种行为的机制。由于这一方法更多描述的是测试文本上的相关性,因此模拟过程中获得高分的解释,对于测试外的文本解释效果可能也很差。
最后,用GPT-4来解释GPT-2的整个过程是计算密集型。
不过,OpenAI的研究人员仍对这一方法的推广感到兴奋。最终,他们希望使用大型语言模型来生成、测试和迭代完全通用的预测。
大型语言模型在内容生成、理解上的强大能力我们已经有目共睹,但其内部的工作原理我们知之甚少,也很难从大型语言模型的最后输出结果中检测到它们的“思考过程”是有偏见的或者是错误的。
尽管从结果看,OpenAI的研究方法还有很大的进步空间,但这一技术路线也为AI的可解释性研究提供了思路。