您的位置:首页 > 经济 >

【AI小杂谈】语言模型与推理

最近出来了一个MathGPT,据说数学能力非常强,并且已经开始测试了。我个人使用的体验还可以,毕竟这个东西主要是为了中小学数学题服务的,难度不至于特别高。


(资料图片)

然而,自从大语言模型(LLM)出现以来,推理和数学能力就一直是关注的焦点,毕竟这里面涉及到的东西就多了,例如如何理解当前的问题、在数学问题中如何避免幻觉、推理过程中对之前信息的记忆能力等等都会被考察到。不过,很遗憾的是,对于目前的LLM来说,数学和推理依然是弱项。

我们首先从最基本的一些知识来分析,这也是之前一个朋友在某个动态的评论中和我讨论了好几轮的一个话题。

以ChatGPT为代表,现在大部分语言模型都是基于Transformer架构的,并且训练方式简单来说就是“预测下一个token”,token一般翻译成“词元”、“子词”等,例如apple可能被拆分为“app”和“le”,这俩都是token。当然,如果你觉得理解起来有些难度,那么就简单理解成“预测下一个词”就好,两者只是粒度上的差别,所以后面以中文为例的话,我就当做“预测下一个汉字”来举例了。

举个例子,假设我问ChatGPT“在中国一般旺财指代哪种动物?”,ChatGPT会把这段话作为输入,首先预测并生成下一个字“旺”,然后把“在中国一般旺财指代哪种动物?旺”作为输入预测并生成“财”,就这样一步步地生成整个回答“旺财在中国一般指代狗”。在使用的时候是这样,训练的时候也是这样,也就是说,在ChatGPT“预”训练期间它所做的就是使得预测下一个词的精度尽可能高。

所以从根本上来说,ChatGPT并不会像我们学习一样,一开始掌握概念、掌握方法,然后一步步分析问题,他所做的只是根据当前的输入预测出下一个词罢了。

那么问题来了,为什么ChatGPT能够有很惊艳的表现,而且看起来至少能做很多低难度的数学题呢?

关键就在于巨量的训练语料,因为“1+1=2”这样的东西在训练语料中反复出现,ChatGPT从中学到了“1+1=”后出现“2”的几率更高,或者说,仍然是基于统计的。

当然,大模型还有很多神秘的地方,例如很多研究都表明语言模型不是只会停留在简单的统计和记忆阶段,他们也会在内部模拟一些很抽象的东西,一个例子就是代码追踪。

这里举个简单的例子:“a=10;b=20;c=a+b;d=c/2”这段话中并没有显示给出c的值,但是我们是可以发现ChatGPT在内部一些地方模拟出c的值的(这是MIT的一篇研究论文,实际上比这个复杂,这里为方便理解做了简化),这说明大模型是超越了简单的统计的,当然究竟超过了多少仍然是一个有待研究并且要研究很久的的问题。

当然,虽然“大模型学到了一些抽象的东西”基本上可以算的上是共识了,但这并不意味着当前的大模型就会推理了,有篇文章的标题就很直白《GPT-4 can't reason》,说明大模型在解决一些推理问题(大部分都是数学题)时会犯很多人类完全不会犯的奇怪的错误,所以即使很多时候我们可能觉得ChatGPT能解决一些复杂问题,也不意味着它真的在做推理。

当然,这事情还可以继续“滑坡”,甚至直接滑到哥德尔不完备性定理这堵叹息之墙那里,当然这里就不展开谈了。

从我的观察来看,目前很多人看待AI都陷入了两个极端,要么直接批判AI什么都做不到,要么把AI目前亮眼的表现捧得很高。

不过很多时候也只是视角的问题,有些人预设了“AI能解决一切问题”,然后发现它从理论上就做不到,然而如果预设了“AI什么都做不到”,那“为什么AI有时候确实能有亮眼的表现”这个问题就值得研究了。算了,这个问题要谈起来确实太复杂了,杂谈就懒得展开了

最后还是需要说,不要无条件相信大模型的输出,这是“尽信书则不如无书”的最好的试金台。

关键词:

相关新闻