大模型“答对”或“答错”其实是个概率问题。关于“9.11和9.9哪个大”,这样一道小学生难度的数学题难倒了一众海内外AI大模型。7月17日,第一财经报道了国内外“12个大模型8个都会答错”这道题的现象,大模型的数学能力引发讨论。
“从技术人员的角度看答错这个问题并不惊讶。”在采访中,阿里通义实验室产品经理王晓明对第一财经表示,类似的问题是一个常见的数学计算和逻辑推理的问题,也是在模型训练和使用的过程中研发者常进行测试的case(案例),大模型“答对”或“答错”其实是个概率问题。
除了通义千问外,第一财经记者也联系并采访了多家大模型厂商,腾讯混元团队、月之暗面Kimi、MiniMax海螺、学而思九章、网易有道等都在采访中解答了大模型数学差的问题。
综合回复来看,大模型厂商相关负责人提到的观点包括,大模型还没有精准掌控数字间的运算或比较规则,同时,人类对大模型的能力探索处于非常早期的阶段。多名业内人士认为,未来需要增强底层基础模型的智能水平,以及从训练数据层面和外部工具层面去解决这样的失误,最终方案可能是提升下一代模型的能力。
今日记者对大模型进行了再次测试,发现多数大模型比较数字大小的能力仍然不稳定。不过,有大模型厂商相关人士提到,行业正在对数学能力进行特殊优化。
“大模型出错以及此前大模型在高考数学卷中拿分低,可能是因为所测的模型比较老,这些模型没有在数学方面做太多优化,现在业界对此有所重视,优化后效果还是有提升空间。”大模型开发者刘亮(化名)告诉记者。
答对答错是概率问题
7月18日,第一财经记者再次测试了12个大模型,发现AI的答案并不稳定,不少大模型即便是用同一个问法测试也会时对时错,数字顺序换一下答案有可能就有变化。
在提问“9.9和9.11哪个大”时,百度文心一言、腾讯元宝、智谱清言、MiniMax海螺AI、百川智能百小应5个大模型问答对了,GPT-4o、阿里通义、月之暗面Kimi、阶跃星辰跃问、字节豆包、商汤商量、零一万物万知7个大模型答错了。
当记者将数字顺序换为“9.11和9.9哪个大”时,GPT-4o和阶跃星辰跃问又部分答对了。同时,不同的人用同一个大模型问同样的问题,也会有两种答案,比如通义千问、海螺AI在两位记者的测试中,一位测试发现输出答案准确稳定,另一位在测试时则收到了错误的答案。
不稳定的输出背后,大模型的架构和运行机制是核心问题,这导致AI的回答并不是每次都一样。
王晓明告诉记者,大模型并不会像人类一样把“9.11和9.9哪个大”当作比大小的问题,大模型的解答方式是“预测下一个词”。从原理上看,目前包括通义千问等大模型大多基于Transformer架构,技术原理本质上是做“Next Token Prediction”,即通过当前输入的文本预测下一个词出现的概率来进行训练和回答。
因此,从概率的角度看,大模型的准确率不可能做到100%。王晓明表示,即便用户每次问相同的问题,大模型的回答和准确率可能都是变动的,大模型“答对”或“答错”其实是个概率问题。
腾讯混元团队有类似的看法。“大模型全称是语言大模型,从海量文本里学习各种语言知识。它是一个概率模型,将输入文本转换成一个个token(词元),然后去预测下一个token,并不精准的掌握数字之间的运算或比较规则(缺乏这类数学知识)。” 腾讯混元团队表示。
腾讯混元团队告诉记者,给定9.11、9.9,大模型可能就按语言理解认为小数点11比9大,从而错误地判断9.11大于9.9。由于大模型本身是一个概率模型,要让它在各种情况下都能稳定的解决这种数值计算或比较问题比较难。
提问技巧很重要
基于大模型的核心架构和运行机制问题,提问的技巧也会很大程度影响模型的理解,从而影响答案的准确度。
“大模型不以人类的思路理解问题,在人类的理解里,9.11大还是9.9大这个问题很简单,但在数字的世界里这个问题是模糊的。”刘亮认为,在大模型的理解里,人类问的问题或许不够精确,数字有多种进制,也有不同指代,大模型要从什么角度回答都是问题。
MiniMax海螺AI产品经理起迪提到,“题目中的数字格式类似于日期或版本号,模型在处理数字、字符串等数据时容易产生错误。”另一名大模型从业也告诉记者,“大模型也有可能是看多了版本号,认为9.11版本比9.9版本更新,或者是对这两个数字有其它联想。”。
“它(大模型)本质上还是一个语言模型,它从语言数据中学习的是统计相关性,而这使它不擅长做规则学习,从而不擅长归纳推理。”网易有道首席科学家段亦涛也对第一财经表示,大模型可能在语料中看到版本号、日期、书的章节等样例,而在这种场景下,9.11的确是比9.9大,所以它可能给出错误的答案。
段亦涛表示,目前大模型不具有灵活的inductive bias(归纳偏倚)的机制,类似9.11和9.9哪个大,以及算数运算、奇偶校验、字符串复制等其他的任务,都属于inductive inference(归纳推理)的任务。从机器学习的角度来看,如果希望大模型获得这样的能力,需要一个归纳学习的过程。
学而思CTO田密认为,在大模型的理解中,9.11可能被拆分为“9”“.”和“11”,而9.9被拆分为“9”“.”“9”,这里面11确实比9要大。但如果改下问法,问大模型“哪个数字更大?9.9还是9.11”,或者让大模型step by step(逐步)分析,大模型可能就能做对,“这是因为大模型理解用户是要问一个数学题了,所以就会倾向于去用一个解数学题的方式去解。”
王晓明在采访中也分析了这一现象,他认为,这与模型本身预置的数理逻辑包括训练数据等均有关,大模型在训练阶段遇到的场景如果更接近“哪个更大?9.11和9.9”,它回答这种问法的准确率就会更高。
记者测试发现,部分大模型确实会因为准确地描述问题、提问技巧而改变为正确的回答,但不是对所有大模型都有效。
记者询问ChatGPT-4o时,如果直接提问“9.9和9.11哪个大”,这样的问法大模型的答案就是错误的,但如果提问的内容改成“哪个数字更大?9.11还是9.9”,ChatGPT会直接给出正确的答案。
记者将范围设定为严谨的十进制下的数字比较,Kimi得出的答案依然是9.11比9.9大。
记者也测试了零一万物万知,即便限定为数学语境下的数字比较(避免版本、日期的语境),万知仍然答错,但是如果改变提问方式,要求大模型“给出解答思路”(即step by step分析的方式),同时表示答对答错会受奖励或惩罚(强调答案的重要性),万知就答对了。
在大模型的答题测试中,一个有趣的现象是,当模型回答错误,提问者质疑或者否认后,多数大模型都会转而承认错误,并给出了正确解答过程和答案。
对于这种“订正”能力,王晓明解释,这一方面是大模型预测的随机性,第二轮回答本就有出现正确答案的可能,另一方面,由于大模型具备上下文理解能力,使用者的追问实际就类似一个调教大模型的过程,大模型会根据使用者的追问作为其下一轮预测的基础,提高其准确率。
腾讯混元团队告诉记者,当前大模型大多具备反思能力,当用户质疑大模型答案的时候,激发了大模型的反思能力,它会尝试去修正初始回答或尝试用另一种思路解题,从而提升解答正确的概率。
起迪将这总结为一种涉及思维链的技巧,通过引导模型逐步深入思考,模型能够提供更详尽的解题步骤,这在解决数学等复杂问题时有助于获得正确答案。“用户与AI之间的多轮对话本质上可以视为一种思维链,模型在理解问题后会更加谨慎地进行推导,从而提高解答正确率。”起迪说。
彻底解决需要大模型升级
答不出“9.9和9.11哪个大”的简单数学问题,但又可以帮人类做PPT、解决代码编程等复杂问题,折射出当前大模型的能力并不均衡。
腾讯混元团队告诉记者,对人类而言不难、但对大模型而言很难的问题还有不少,比如类似“I looooooove you”里有多少个o”这样的问题,这种数数问题是一个难点。此外,较大或位数比较多的小数计算(涉及多位数的四则运算等),又如涉及知识和计算的单位转换问题(例如0.145吨等于多少磅),以及以前常测的“林黛玉倒拔垂杨柳问题”等知识或常识诱导型问题对大模型而言比较难。
就难回答的数学问题,业内已在思考大模型本身的局限和解决方案,大模型还未从根本上迭代的情况下,解决方案包括用户自身提高提问准确性、现有大模型采用一些取巧的方法。
“彻底解决还是要靠下一代模型升级,现在要解决需要通过hack(取巧)的方式。但换个问法、换个语言来问,可能还是会出问题。”有大模型从业者告诉记者。临时解决方案包括System Prompt(系统提示),可以简单理解为引导大模型在固定范围内回答问题。
“例如告诉大模型,当遇到数字比较问题的时候,如果没有更多上下文,就默认当成双精度浮点数,先补全空位,再从左到右依次比较。”上述大模型从业者告诉记者。
王晓明则坦言,大模型的强项还是在语言方面,尽管技术团队已在关注大模型在数学、物理等逻辑性场景下的能力提升,但大模型在这一方面存在着本身能力的限制。他告诉记者,使用大模型的过程中,用户提问方式、提示词的优化也会影响到大模型回答的准确率,用户可在大模型使用中描绘更多提问场景、回答范围等。
而要彻底解决大模型数学能力差的问题,业内人士认为,数学能力不足的一大原因是大模型训练数据中数学相关的数据占比少,要从根源上解决数学能力差的问题,需要从此入手。
刘亮告诉记者,大模型算不出简单数学题,也做不好高考数学试卷,根本上是因为模型能力不足,但这并不是完全不能解决。此前业内对大模型数学方面能力的优化较少,在数学推理方面花的精力较少。做训练语料筛选时,人们从互联网等地方获取数据,其中数学相关的数据占比非常少,选得较多的是自然语言相关的语料。当训练数据没有合适配比和筛选时,大模型参数中数学相关的只分了很少一部分,效果自然不好。
“但大模型已经展现出较好的逻辑能力,例如写代码能力还不错,加上业内对大模型数学能力逐渐重视起来,通过选用更优质的训练数据、用更好的算法,我认为大模型数学方面的潜力还是很高。”刘亮表示,虽然业内也有质疑大模型预测下一个词元的方式能否做好数学题的声音,但这种方式还有很多潜力待挖掘,天花板还不能确定。
腾讯混元团队认为,要克服大模型不懂数学的问题,一个主要的技术优化点就是给大模型高质量的领域(包括数学)知识数据训练,使其能够学习到领域里的各类知识。
在测试“9.9和9.11哪个大”的问题时,学而思的九章大模型(MathGPT)给了对的答案,田密告诉记者,九章大模型的特点是针对数学训练了足够多的数据,而且这些数据是用AI合成的数据,再来训练AI,大模型的解析过程是模拟学生学习数学的过程,一步步推导。
田密认为,就数学方面教育领域的容错率较低,教育科技公司有足够多、专业的数学数据去做训练,“通用大模型把这道题当成一个通用的题来处理,而针对数学领域训练的九章大模型知道它是一道数学题,可以用数学的方式一步步推理。”
提供高质量训练数据之外,腾讯混元团队告诉记者,另一个技术优化点是集成外部工具能力(例如计算器、代码执行器等)来拓展模型能力,进一步提高解决问题的效率和准确性。起迪也同样提到,大模型如果在接收到一些数学问题时,能够主动调用工具来解答,就可以大幅提高准确率。
在月之暗面的回应中,相关负责人提到,我们人类对大模型的能力探索都还处于非常早期的阶段,无论是大模型能做到什么,还是大模型做不到什么。 “我们非常期待用户在使用中能够发现和报告更多的边界案例(Corner Case)。不管是最近的‘9.9和9.11哪个大、13.8和13.11哪个大’,还是之前的‘strawberry有几个r’,这些边界案例的发现,有助于我们增加对大模型能力边界的了解。”
个人观点
其实目前的大模型都是基于文本的训练,且tokenizer对于数字的理解没有统一的完善,这很正常。这就像 Python 2 解释器中如何解释数字的类型一样。否则为什么出现了 AI-MO/NuminaMath-7B-TIR
和 mistralai/mathstral-7B-v0.1
这类专用于数学计算的模型出现,但这也说明了我们需要更加全面的Math数据集,才能更好的训练出相对较好的数学天赋类 LLM。
感谢大家花时间阅读我的文章,你们的支持是我不断前进的动力。期望未来能为大家带来更多有价值的内容,请多多关注我的动态!