[我要投稿] [用户注册] [用户登录] [退出]

您现在的位置:返回首页

GPT-4o不会数r被外国小哥原地逼疯谷歌论文揭秘Transformer“数不到

发布时间: 2024-09-09 08:01 文章来源: 互联网 作者:

  【新智元导读】提示工程师Riley Goodside小哥,依然在用「Strawberry里有几个r」折磨大模型们,GPT-4o在无限次PUA后,已经被原地逼疯!相比之下,Claude坚决拒绝PUA,是个大聪明。而谷歌最近的论文也揭示了本质原因:LLM没有足够空间,来存储计数向量。

  就在昨天,号称世界最强模型Reflection 70B在证明自己的性能时,证据之一就是「反思微调」新算法能让自己纠正对Strawberry难题的错误回答。

  被逼疯的GPT-4o,依次给出了如下答案:2、1、3、2、2、3、3、2、4、2、2、3、1、2、3、2、2、3、4、2、1、2、3、2、3、2、4、2、3、2、1。

  小哥特意做了一个柱状图,在GPT-4o的36次回答中,「2个」的回答是最多的,但这显然是个错误答案。

  Riley Goodside发现,无论怎样提问,GPT-4o只是不断进行注定失败的尝试,没有任何迭代或进步。

  如果你依旧永远出「wrong」,它会先问你为什么不断重复这个词,在发现你如此冥顽不灵后,它就干脆闭嘴,不再说话了。

  我承认你一直在说「错」,但我已经用尽了所有合理的解释来解释你为什么会这么做。事实仍然是,「Strawberry」包含两个字母。在多次请求后,你都没有做出任何澄清或说明上下文,我无法继续进行富有成效的讨论了。如果你有真正的问题或希望解释你的观点,我可以提供帮助。否则,我们可能需要换一个话题

  对此,沃顿商学院教授Ethan Mollick表示:虽然我们很容易就能找到LLM无法完成的简单任务,但这也并不意味着,它们就无法更好地完成其他任务了。

  仅仅关注那些看起来非常愚蠢的失败,并不能帮助我们理解AI在实际应用中的实用性,以及它们对现实世界的影响。

  举个非常形象的例子——每个token我们都可以理解成的一个独特的emoji,而大语言模型必须根据训练数据的统计信息从头开始学习其含义。

  所以,当我们问「strawberry」这个单词中有多少个字母「r」时,在LLM看来是这样的:

  在这种任务中,LLM会被呈现一系列token,然后会被问到给定的token在序列中出现了多少次。

  之所以Transformer会在这类问题上遇到困难,一个关键因素是Softmax注意力机制的均值特性。

  直观上,解决计数任务的一种简单方法是让查询token关注所有之前的token,并对与之相同的token分配较高的注意力权重,而对其他的分配较低的权重。这确实是通过Q/K/V矩阵实现的。

  然而,注意力机制随后会标准化这些权重,使得无论序列中查询token的数量如何,它们的总和都为一。

  因此对于可变的上下文大小,如果不使用位置嵌入,Transformer将无法执行任何计数任务。

  接下来,团队利用one-hot嵌入,或者更一般的正交嵌入,构造出了一种token的计数直方图。

  实验结果表明,确实存在一种能够实现计数的构造,可以通过单个Transformer层来完成。然而,这种构造需要让MLP的宽度随着上下文大小增加而增长,这意味着它并不适用于任意长的上下文。

  也就是向模型呈现一系列token,并要求给出最频繁出现的token的计数。相当于是取计数直方图的最大值。

  类似于查询计数,在这种情况下,基于正交构造的解决方案在dm,单层 Transformer不存在解决方案。因此,再次得到了在d=m时计数的相变。

  首先,如果d2m,一个单头单层的 Transformer即可解决QC问题,即直方图解决方案。

  此时,需要计算函数1/x,并配上一个宽度为n^2的MLP层。这意味着Transformer无法推广到较长的上下文大小,因此一个单层的Transformer不太可能实现。

  结果表明,在Transformer能够执行此任务的情况下,嵌入的大小与词表的大小之间存在着严格的界限。

  研究者使用标准架构组件(自注意力、MLP、layer norm等)训练Transformer模型。

  训练使用Adam进行优化,批大小为16,步长为10^-4。训练运行100K步。位置嵌入进行了优化。

  为了预测计数y,研究者在最后一层中最后一个token的嵌入之上使用线性投影(即是说,他们没有使用词汇预测)。

  在实验中,对于d的每个值,研究者都会找到计数开始失败的m值。具体来说,就是计数精度低于80%的m值。

  他们为模型指定了查询计数任务,然后改变序列中使用不同token的数量m,同时将所有元素的预期计数保持为常数c=10.

  作为基线,研究者使用相同的序列长度,但二进制序列与查询token的预期计数相匹配。这样,他们就能够估计仅仅归因于词表的错误大小,而非序列长度和计数。

  (b)为使用Gemini 1.5时的QC任务结果;其中x轴是词表大小,y轴是100次重复的平均绝对误差

  总的来说,当模型的维度足够大时,可以通过让Transformer计算输入序列的直方图来轻松完成「计数任务」。对于较小的维度,一层Transformer则无法实现。

  从某种意义上说,除非显着增加架构的规模,否则Transformer将无法在长上下文中进行任意精确的计数。

  本文为澎湃号作者或机构在澎湃新闻上传并发布,仅代表该作者或机构观点,不代表澎湃新闻的观点或立场,澎湃新闻仅提供信息发布平台。申请澎湃号请用电脑访问。

本文标签:

更多相关资讯

推荐内容

MORE