在本文中,通过深入浅出的方式,为读者提供了对大模型技术全面而深入的理解,同时也强调了理性看待大模型的重要性。
为什么要聊这个话题?
原因有三:
- 读懂历史才能预测未来。我们了解一个新事物最快速的方式就是从它历史出发,更能清楚的知道它从哪里来要到哪里去;
- 知其然更要知其所以然。了解大模型生成能力背后的运作方式,才能更好地结合我们自有的一些业务来提升效率。
- 祛魅。相信我们大家也都看过很多鼓吹大模型的一些文章,当然也有一些diss大模型的一些文章。知道它的原理、流程之后,我们就更能够理解大模型的能力边界,更理性地看待这一场大模型的风波。
一、大模型之前的人工智能——弱人工智能(Weak AI)
在大模型之前的人工智能,属于弱人工智能,你可以把它理解为它就是一个专才,它是服务于某个专业领域的一个技术人员。即使是强者如阿尔法狗,它是在这个地球上最强的一个下围棋的智能体。但是它除了围棋之外,其他领域依旧是一个小白。
但大模型是一个通才。因为它接受了大量的各种领域的数据训练,像语文、数学、围棋等等,ChatGPT也在两个月的时间突破了一亿的用户,也超过了之前tiktok 9个月创下的记录。
那为什么它在这个时间点横空出世呢?以下是三个必不可少的一个因素,而且这三个因素也是训练大模型的一些核心要素,也就是数据、算法以及算力。
数据的话贯彻了字节的大力出奇迹,把模型的参数量还有训练数据搞的无限量大,然后就出现了某种程度上的智能,也叫涌现,也就是他可以执行他之前没有预料到的一些任务;
第二个就是算法,目前国际上以及国内的主流的大模型都是transformer作为底层的模型架构;
第三个就是算力,有一篇论文就是在讲训练大模型的时候,用GPU来训练大模型会比CPU训练的效率更好。所以我们就开始用GPU来进行训练大模型,后来也造就了英伟达目前两兆亿美元的市值。
二、大模型是通往强人工智能(strong AI)/通用人工智能(AGI)之路吗?
刚才说到像大模型这样的通才,更符合我们对于人工智能的想象,我们的想象可能就像是钢铁侠里面的他的助手贾维斯一样,他是跟我们人可以这种这种可以自在流畅的一个交流,而不是像siri或小爱同学,某种程度上它是有点像人工智障。因为它是这种关键词的一个匹配,触发到某个关键词,它就会有对应的回复。我们想象中的这种人工智能,我们也把它称为强人工智能(strong AI),或者就是通用人工智能(AGI)。
AGI时代的大模型是一个通才,是一个无所不知的一个一种能力,它也是AGI时代机器人的大脑,给它装上四肢后,他就是一个机器人。所以大模型也带火了另一个产业,就叫具身智能(Embodied AI),这个赛道我也很看好。
三、大语言模型与 AGI 的关系
那大模型和人工智能之间是什么样的关系呢?
通用人工智能是我们在追寻的一个目标,机器学习和深度学习,它都是我们想去实现这个目标的一个手段。
生成式人工智能其实是通用人工智能的目标之一,但是因为目前我们的生成式人工智能都是用深度学习这样的技术来去实现的,所以我们把它归到深度学习里面。大模型是生成式人工智能的一个技术之一。
因为大语言模型是目前非常多,像主流的国内主流的像文心言、kimi、通义千问,国际上ChatGPT、llama、gemini,但他们的原理都是很类似的,这里讲解主要用ChatGPT作为例子。
那什么是机器学习呢?我们刚才有提到机器学习和深度学习,机器学习其实就是在去再去从一堆资料当中去找一个方程式。相信我们大家都会解这样的一个方程式:y=ax+b
给定X1多少,Y1是多少,然后X2是多少,Y2是多少,那我们就可以把这个未知数a和b给求出来,也就是两个已知条件,两个未知数。那时候我们叫未知数a、b,在机器学习当中他们就叫参数。ChatGPT中介绍的那种参数,千亿级别的或者10亿级别的,其实就是这边的一个参数量,目前普遍的定义是大于10亿的参数量才叫大语言模型,小于10亿的它就不叫大语言模型。有了这样的一组参数之后,我们给他一个输入,他是就会有一个输出了,这也就是ChatGPT在做事情。
四、ChatGPT在做的事:预测下一个字的文字接龙游戏
那ChatGPT它其实就是一个大于10亿参数量的方程式。给模型一批训练资料,从这些训练资料去把数10亿参数给找出来,这个过程就叫训练,或者我们要叫学习过程。训练好之后,给它一个输入,它有一个输出,这个使用的过程叫推理,或者叫测试的阶段。
我们在买GPU的时候,厂商就会介绍说,这样的GPU是适合训练阶段的,还是适合推理阶段的。可以理解为推理就是我们直接使用这样的一个大语言模型,训练的阶段就是要把它训练成我们想要的这种大语言模型的样子。
ChatGPT在做的事情就是预测下一个字的文字接龙的游戏。比如说一个输入(比如:保护地)给它,在其内部有多个可以选择的选项以及概率,这时候就掷骰子,看看他最有可能出现哪一个。像图片中概率最高“球”,那它就是50%,它就大概率用输出球。所以ChatGPT的输出是那种流式的那种结构,一个字一个字的吐出来,它其实就是在预测下一个字。