我们去年做MathGPT的时候,很多大模型领域的专家、学者以及领导过来,他们问的第一个问题是“为什么你们要做数学?”“大模型做数学这条路可行吗?”今天在这里回答一下我们为什么要做数学这个问题。
首先,做数学的出发点是利他。
数学是大语言模型最弱的地方,有时候连简单的加减乘除都算不对,但孩子学数学非常重要,大模型也需要教,于是我们选择数学作为切入口。
而且,数学是攻克大语言模型天然好场景。ChatGPT火之前有一篇论文是这么说的,我们已经观察到大模型具有所谓的涌现能力,什么是“涌现”?当模型在做一个数学问题,以及8位数的加法,参数从百亿(10B)到千亿(100B)以上的大规模之后,这个能力突然开始出现,这就是“涌现”。
大模型里为什么会提到“涌现”?大模型任务已经非常复杂,复杂到了很多时候并不能以传统的分析学或分析解构的视角去思考,于是就有了“涌现”。
涌现这个词来自复杂科学,技术领域很少见,生命就是典型的复杂科学。研究复杂科学的规律,实验素材的选择至关重要。孟德尔之所以能够发现遗传三定律,至关重要的原因是选择了豌豆,豌豆“闭花传粉,自花授粉”在有性生殖的物种中是一个特殊的存在。遗传底层的真相是父母基因的组合违反绝大部分人对遗传的直觉,也就是遗传底层是“量子化”的,而不是连续的。
回过头来说,数学是不是我们解决大模型里面的豌豆,是不是那个好场景?
大家都知道ChatGPT是通过预测下一个词来决定它如何学习。大模型现在唯一Work的第一性原理是:通过预测下一个词去Scale,站在语言模型的视角是合理的。那么,从数学的视角还合理吗?
举个例子,我们都知道高考会考填空题。如果做高考的填空题也是通过预测下一个词的方式,这显然有问题。为什么?因为即使考上清华、北大,或哈佛、耶鲁的学生,也没有可能看完一个题目之后,就填出答案,即使聪明的人类,也一定需要详细的思考步骤,才能解决问题。不是说前后词之间没有关系,而是不能直接预测出来。
还有大语言模型主要靠抓取互联网上的语料来预训练得到的,训练之后再做微调。这个过程乍一看挺对的,但仔细一想其实有问题。因为它假设了我们全部的知识都是线上化的。虽然互联网已经发展了20年,但还有很多知识没有完成线上化,一旦没有完成这个过程,大模型是不可能学会的。
仍然以数学为例。没有完成线上化过程的原因,有的是太难,有的是太容易。比如孩子会做很多的加减乘除算术题,但在网上很少看到这些题目,因为这样的过程在搜索、检索或信息获取的过程中不提供信息价值,但大模型需要这样的知识,孩子的练习也需要这样的知识。因此我们需要补上这些知识。
接下来是我们
为什么做数学的第二个原因——使命。
学而思于2003年成立时就是以数学起家。同时,数学还是人类思维能力提升的最重要的手段之一,严谨的逻辑思维推导过程是需要训练的,没有哪个孩子生下来就会。
第三点是方法。
AlphaGeometry搞定了几何证明难题,这进一步印证我们选择大模型解决数学的可行性。数学难点在于联想能力,推导过程是其次的。生成式大模型最大的优势在于联想,所以用大模型做数学从方法上来说是可行的。虽然一开始的起点低,但是增长曲线有可能非常陡峭,可能比语言会更让人类惊艳。
综上,数学是攻克大模型技术的好场景。也是我们的立家之本,使命当为。AlphaGeometry的成功更进一步印证了大模型解决数学的潜力。
第二个问题,为什么要解决逻辑推理的思维能力和幻觉?因为无论是大模型还是人,整个学习过程都需要经历四个阶段:
记忆、联想、推理和泛化
。一个孩子最开始让大家感觉到他比较机智是因为这个孩子的记忆力很好,慢慢就会发现,这个孩子的联想能力很好,他可以联想到很多事,当上学之后,下一步他需要解决推理的严谨。幻觉是联想能力的副作用,没有联想就不会有幻觉。反过来说,只要联想能力够厉害,就一定会有幻觉。那么模型如何解决幻觉?
这就需要去检验模型输出的观点,检验分为两点:
第一,为观点找到事实依据
第二,逻辑自洽。
小孩子在成长过程中,也会经历一个“胡说八道”幻觉很重的阶段,解决方法同样是为自己的观点找到依据,同时让自己的观点逻辑自洽。为观点找到依据就需要Verifier,逻辑自洽就需要逻辑推理能力。
最后一个阶段是泛化。总体来说大模型的泛化应该要远远差于人类。以数学为例,即使一个孩子考到清华、北大,总共加起来最多做10万道题,但是即使到目前为止,大模型训练了100倍,训练过千万题,能力可能比人差得多。核心在于大模型的举一反三能力弱很多。如果这个层面有所突破,那么强人工智能就会出现。
目前,大模型已经解决了联想能力,下一步是如何把推理解决好,完成前三步,这个过程需要时间。