导读
写这篇文章的初衷:作为一个AI小白,把我自己学习大模型的学习路径还原出来,包括理解的逻辑、看到的比较好的学习材料,通过一篇文章给串起来,对大模型建立起一个相对体系化的认知,才能够在扑面而来的大模型时代,看出点门道。
为什么要写这篇文章?
首先我关注到了两个变化。从chatGPT发布之后,网上突然出现很多和AI、大模型有关的一些话题,就拿我关注的几个B站up主举例,几乎每个人都会做几期与之有关的视频,这里面有研究财经的,有专门分享热点事件解读的,更别说专职研究科技的up主了,他们基本都是在chatGPT发布后的第一时间就上线相关科普视频的,生怕赶不上这波流量热点。
而作为一家AI科技公司的一员,也能明显感受到公司内部对这个话题讨论氛围的变化。印象中从22年7月,就开始组织和智算有关的培训,不过当时还不是举公司之力去推,而且分享的内容也比较技术,所以整体关注度不算太高,我翻了下那时候组织的第一场和智算有关的培训,到现在也就116个人听了;而在早些时候,某车企的案例也突然被曝光,当时我除了感叹项目金额之大以外,好像也没有意识到这个项目的价值以及为什么要花这么多钱;包括那一年的云栖大会,还专门有一个展台是设给灵骏的,我印象中那个展台不大,参观的人也不算多,而且我听了展台同学的介绍之后,也还是对智算、灵骏一知半解。
但从去年开始,好像身边的人都陆续开始学习大模型,能明显发现都来找我要学习资料了,这里不仅有销售同学,也有很多产研同学;再到前段时间我报名参加了一个复旦教授做的和大模型有关的分享,是在一个工作日下午,我居然在现场遇到了很多销售线的同学,这跟我过往对大家参加培训的积极性的认知很不一样,说明这个话题对当前一线销售来说绝对是顶流。
其次我有一个困惑,我是做销售培训运营的,其实我觉得过往陆续也积累了很多和智算大模型相关的培训,毕竟我们在chatGPT发布之前,组织上就已经开始重视这一块的培训,但最近我还是经常会收到很多对组织此类培训的迫切需求,而且需求往往都非常集中:基础知识!!!这让我意识到,虽然大模型时代已来,大家都是站在自己的屁股来介绍各自板块的内容,每块内容又讲得非常专业,这就导致每一个话题或产品单独理解起来都有难度,比如深度学习、神经网络、AGI、EFLOPS…这些专有名词到底是什么意思,彼此之间有什么样的关联关系,和我们公司又有什么关系?如果自己都还是一知半解,就很难建立起一个相对体系化的认知,更别说给客户去讲明白了。
所以我想说是不是可以写一篇文章,把围绕大模型背后一个个点状的专有名词的来龙去脉,以及我看到的比较好的培训分享给串一串,这样我们就可以在大模型方面建立起一个相对体系化的认知框架,当再出现一个新的概念或产品的时候,应该就比较好理解背后的含义。当然如果大家读完也能给我一些新的输入,或者帮我纠正一些错误的理解,那也算意外的惊喜了。
我想从以下四个方面分别谈一谈我自己的理解:
1、从chatGPT来理解什么是大模型以及支撑模型背后的算法、算力和数据;
2、云计算厂商和大模型之间的关系;
3、大模型对未来生活和就业的影响;
4、对未来的一些猜想,在新基建领域,大模型是不是可以变成一种核心生产力;
一、通过了解chatGPT来理解什么是大模型
不得不说,是22年底chatGPT的发布让人工智能再次被得到广泛关注。chatGPT所有人都听过,最初我听到它只粗浅的知道它是一个对话工具,好像很厉害,对GPT的认知也以为只是一个简单的品牌代号,就跟AMG、BMW这种类似,没去想会有啥意思。但当后来认真了解了chatGPT每一个字母的详细释义之后,才发现原来人家取名并不是随便取的,在GPT命名的时候就已经告诉我们大模型的一些突出特点了。
chatGPT:
chat——会聊天的
G——generative,生成式
P——pre-trained,预训练
T——transformer,新型神经网络
会聊天的这个特点很显而易见,说明他是一个对话机器人,这没啥好说的。而后面的三个字母分别代表了这个机器人背后使用的三种关键技术。
首先讲“生成式”,顾名思义也很好理解,如果用过此类工具就知道它们的内容生成形式是一个字一个字吐出来的,不像以前用搜索,一股脑儿啪给你一段话或一堆信息。其实在这个吐字的过程中模型是在做逐字的推理:基于上下文,预测下一个可能的字的输出概率,而且通常会生成好几个可供选择的候选答案,最终只选择概率最高的那个输出给你。
举个例子就很好理解:生日蛋糕很——chatGPT——甜(0.2)、香(0.18)、大(0.15),最后给到你也就是“生日蛋糕很甜”。这里面可以看出推理的关键就是机器在根据概率来做选择性的输出。
再来看什么是“预训练”。在理解预训练之前,有必要先理解什么是训练。在《AI计算101》开篇中对训练和推理的过程做了非常通俗的介绍,从讲师的释义看,模型训练的过程简化起来就是:给机器一堆的x和y,通过一通操作,最终得出一个所谓最合适的w和b的过程,最终抽象成一个函数来表达。所谓推理就更好理解了,就是基于已知函数,输入x得到y的过程。
理解了训练,再理解预训练就比较容易了。预训练就是让机器自己学习大量的资料,学习的目标是如果让它参加高考,至少能考六七十分水平的过程。这里学的知识一般都是一些通用知识,比如chatGPT学的内容就包括维基百科、图书、杂志期刊、链接(高浏览网络内容)、网页内容、github代码这些。通过学习,让chatGPT这个机器开始了解人类世界。
如果再把过程简化一点,把模型的训练简单看做是一个输入输出过程的话,这个过程就是:通过一套程序,触发机器去“学习”这些知识,最后的输出是啥呢?我理解最后的输出就是一堆的函数集,以及函数背后的w和b,而这个w和b,就是所谓的参数。咱们都知道通义有Qwen7B、14B,GPT3的参数规模是175B,这些xx B就代表的是参数量,比如GPT3的175B,就代表这个模型有1750亿个参数。如果按照上面的理解,就是这个模型有很多的函数集,有1750亿个w和b。什么概念呢?据说下载一个LLaMa2的开源模型需要140G的内存空间。
这样就能理解,其实14B的模型掌握的基础知识要比7B多,或者可以理解为机器的脑容量更大,那肯定能力就更强。但在实际应用中,模型的选择往往要兼顾能力和性价比,所以这也就是为什么咱们家要开源这么多模型的原因。
还有一个因参数量的变化而带来的一个关键变化就是,模型会具备涌现能力。下面这个图想必能很直观的理解什么是涌现:随着参数量的不断增加,机器突然具备某些新的技能。(涌现这个词最早是个哲学术语,大家感兴趣的话可以去深入了解下,还是有几分浪漫主义色彩的。)
最后再来看看transformer。中文的释义是它是一种新型神经网络,干嘛用的呢?我的理解他就是机器学习或者是模型训练的一个算法框架。其实对我们这样的小白没必要做深入的研究,只要理解他是一个模型训练的工具或者方法就好了。上面讲到模型训练的过程,不是会给机器一堆的x和y,再通过一通操作,最终得出w和b吗,这里面的一通操作,我的理解就是transformer在发挥作用:机器在transformer的方法论指导下,做输入和输出。Transformer是当下比较主流的深度学习算法框架,由谷歌在2017年提出的,有意思的是紧接着在2018年openAI就基于transformer发布了GPT1。
理解了GPT的特征之后,理解其他大模型就可以举一反三了。
那如果把GPT比作一辆汽车的引擎的话,openAI是怎么组装chatGPT这个产品的?模型从预训练结束到能被商业化的使用,中间还需要经历哪些环节,这些环节的背后又需要投入多少硬件、时间和人力资源呢?
这张图其实比较清晰的把模型训练的过程以及所需要的资源都做了直观的归纳,能够看到模型训练的过程除了前期的预训练,还包括有监督的微调、奖励建模、强化学习,以及这些过程都需要底层硬件GPU来做支持。
我们分别来理解一下上面的这些专有名词。首先什么是SFT(Supervised Finetuning)有监督微调。按照我自己的理解,如果把模型训练完成的标志看成是高分通过高考的话,那从预训练完成到参加高考之前还需要有几次模拟考试,而SFT就是第一次的模拟考试。这场考试的特点就是,出卷老师人类会给出一批高质量的问答对(试题和标准答案),这些问题不来自预训练阶段前期学到的内容。机器首先根据问题来给出自己理解的答案,然后再比对是否接近人类给出的标准答案,并进而优化参数的过程。
那什么是RLHF(Reinforcement Learning by Human Feedback)人类反馈强化学习呢?这个过程区别于SFT就是让机器一次给出多个答案,人类对不同答案来打分,分数越高代表越接近符合人类想要的答案,最终让机器再次优化参数的过程。而奖励建模是强化学习过程日益成熟,人类发现这件事也可以交给机器去做,通过再训练一个新的强化学习模型,让机器去训练机器,同样通过让机器调整参数,直至让模型输出的结果越来越接近人类思维会给出的答案。
所以总体来看,整个模型训练的过程我自己概括一下就是:通过输入大量的人类知识,经过深度学习,输出一个函数集及函数背后的参数集,目标是让这些参数驱动的机器的回答更接近人类间对话的回答的过程。
说完了训练过程,再来看看训练所需要的硬件资源。从刚才这张图能看到,实现上述这些过程对计算机来说都需要A100 GPU作为底层计算硬件来支撑。那why GPU?在《AI计算101》里有两页片子很形象地解释了这一点。首先GPU在某种程度上可以理解是CPU的演进,原本它是专为处理图形计算而设计的芯片,最早应用的场景是在游戏等需要做大量图形计算的场景。到后面随着AI等场景的兴起,大家发现GPU的特点不仅适合处理图形计算,也适合用在处理大量、重复且简单的计算场景,而人工智能也是满足上述计算特点的场景之一。
上面这张图从芯片设计的角度给出了解释。红色、绿色、黄色部分分别代表了芯片用于控制、缓存、计算的实际物理面积,可见GPU相较CPU显著的特点就是,计算单元多、逻辑简单(因为计算面积大、单元多,且控制区域小)。再回到大模型的训练过程,深度学习其实就是让机器做大量且重复的解方程的过程,这就是为什么GPU适合AI计算的原因。
在比较完GPU和CPU的差异后,再来看看不同GPU间又有什么差异?
上面说到,GPU为大模型训练全过程提供计算支持,而模型的参数越大,代表模型的能力越强。当AI时代来临,大型科技公司的目标就是能够以最快的速度,发布能力更强、参数量更大的大模型,这一点从open AI发布模型的路径就不难看出。
而目前市面上主流的国内外GPU芯片算力是多少呢?在FP16计算精度下,英伟达的A100和H100的计算性能是312TFLOPS和1000TFLOPS,而目前海光的最高性能的GPU深算2号K100的计算性能是100TFLOPS;目前国产GPU性能相对更好的应该是华为的昇腾910B,计算性能也只是280TFLOPS,所以这就是为什么英伟达的GPU会受到如此追捧的原因之一。
这里再补充解释下312TFLOPS是什么意思,这里可以拆分成三个部分来理解。FLOPS:Floating Point Operations Per Second(浮点运算次数);T:Tera,计量单位,代表 (10^{12})(一万亿),所以312TFLOPS是代表一块GPU每秒能够进行312 万亿次浮点计算。除此之外对应的计量单位还有GFLOPS、TFLOPS、PFLOPS、EFLOPS,分别代表每秒能够执行10{9}、10{12}、10{15}、10{18}次浮点计算,分别用于衡量PC、HPC(高性能计算机)、超级计算机、最前沿超级计算机。
最后再来总结一下什么是大模型。按照我自己的理解,大模型就是基于已经被培训过的,具有很大参数量、知识储备丰富的,能够用人类思维来和人类进行直接对话的生成式问答机器。
二、如果把模型训练过程看做炼丹
那大模型和智算集群就是仙丹和炼丹炉的关系
公司服务客户使用大模型至少有两种商业模式,首先是公共云,未来应该主要以MaaS对外提供基于通义大模型的服务,就是我们已经把通义大模型这个“引擎”给客户训练好了,大家直接调用使用就好了,这种模式在此不过多展开。
另外一种是自22年以来政企大客户更为青睐的建设模式,客户希望自己也能有类似通义的大模型,但是他们又缺少搭建模型训练平台的经验,所以就想找阿里云来合作,端到端地帮他建设一套用于炼大模型这个仙丹的“炼丹炉”(模型训练平台)。
上面这张图是咱们自家通义大模型的三大块产品,如果把通义也当做是找我们来建设炼丹炉的客户的话,由此可见目前政企客户至少有两大块建设需求:一类客户比如某通用人工智能服务公司,就希望能自己训练出和通义一样的基础模型,掌握核心生产力;还有一类客户比如某电力国企,他们希望直接开发一些像通义智文、听悟、仁心、法睿这样的垂直应用,客户可以开箱即用,直接来帮助他提升现有业务的工作效率。
围绕第一类的建设需求,建设群体还可以再做细分。一类是像某通用人工智能服务公司、某车企这样的客户,他们建设智算集群是希望自建自用,这些客户一般都比较有钱;但因为建一个智算集群需要非常大的资金投入,且建完之后也未必会经常使用,加之GPU芯片短缺的背景,即使有钱也未必能搞到GPU,这时候就出现了一些专门的资方,手里有GPU资源,可能也有一些管理职能,就会由他们来统一的做集约化的智算集群建设,建设完成后以租售GPU资源的方式,再给到他的“客户”来使用。这些资方包括地方政府、科研机构或高校、以及一些大型央国企,比如某电力国企,所以这才有了围绕智算集群建设的三个方向:城市智算、科研智算和企业智算。
现在建设目标明确了——就是建设一个大的智算集群,建设的原材料——GPU也有了,就差一个施工队了。那客户为什么会选择阿里云来做这个“炼丹炉”的施工队呢?是因为在建设“炼丹炉”的过程中往往会面临以下几个棘手的挑战:
我问了下chatGPT,训练一个GPT3需要多少计算资源,他给我的回答是10.5 EFLOPs。这是什么概念呢?这意味着需要成千上万个高性能GPU串联起来同时处理才能完成这一巨大的工程。这就带来第一个挑战:大规模组网。
组完网之后GPU之间就具备了数据交换的条件,然后每个GPU就开始吭哧吭哧的根据领到的计算任务开始并行做题。关于并行计算有三种计算方式,包括数据并行、流水线并行、张量并行,这些专业术语分别代表啥大家其实可以去问问通义千问,它能给出一个比较形象且易于小白理解的回答。
当每个GPU做完题之后需要把各自的答案进行共享和汇总,这就需要数据在短时间内做快速在芯片间、服务器间的数据传输和交换。这就带来了第二个大的挑战:数据通信效率。
GPU的显存和通信都会受限于硬件的物理带宽,而通过自家的软件可以使集群整体的通信效率有大幅的提升,进一步提升大模型训练的效率。
而当成千上万张卡组合在一起重复不断地做数据计算的时候,过程中难免有些卡会被烧坏而不能用,这就带来了第三个挑战:计算机群的稳定性。为保证整体计算任务的不间断,云平台的高可用就可以发挥价值了,当一块GPU坏掉的时候,瞬间拉起一块新的来补位。
另外针对集群搭建和模型训练这一相对新兴的赛道,需要非常专业的人才和工具来支持,特别是专业的人才。而目前全球范围内对这方面人才的储备是远远不足的。这就带来第四个挑战:大模型训练任务和专家人才的断层。这就需要把一部分专业工作软件化,通过软件来解决人力资源短缺的问题。
除此之外还有包括安全方面的挑战、生态方面的挑战,就不一一展开了…
所以这样分析下来大家应该能够感受到,训练大模型绝不仅仅是简单的硬件算力的堆砌,很多场景还是需要软件来加持的。对应底层来说,IaaS层除了需要计算资源保障以外,还需要高速网络、高性能存储、安全组件的保障;PaaS层通过PAI、百炼这些经过抽象化的组件和功能,来支持客户的模型训练和开发。所以云计算厂商在大模型训练中承担着不可或缺的角色。
三、大模型对未来生活和就业的影响,工具or失控?
最后两个部分我想跳脱出技术,聊聊普通老百姓可能会关心的问题。前段时间参加了一个有关大模型话题的报社读者与专家的交流会,会上被问到最多的两个问题就是:
1、当前AI快速发展,在未来AI会不会替代人类来工作 ,导致很多人会因此而失业;
2、AI未来会不会反向控制人类。
先来看下第一个问题。目前大模型主要以工具或新技术的方式被用来提效或释放人类精力或给人带来更好的使用体验。回溯历次工业革命的发展,人类始终都是朝着生产力的创新进而帮助人类提高生产效率的方向来利用机器、改变机器、制造机器。目前大模型也在朝着这些方向被应用,比如AIGC、搜索增强、chatBI等等。都是把原本需要人类付出更多时间才能完成的事情,通过机器来快速实现了。在未来对于一些相对简单、流程化程度比较高、事物属性比较强的工作来说,某种程度上确实可以先让机器来做前期预处理,人类只要做简单的微调和确认就可以。这中间势必可以释放掉一部分人的精力。
如果大家经常去全家,就会注意到以前全家需要2-3个店员来负责店铺收银,现在基本都是2-3台自助收银机器配套1个店员就能维持店铺的正常运转。所以对一部分人来说,失业是一定的,这个失业是因为科技的发展和环境的变化所导致的。甚至随着技术的进步,可能我们每个人都会面临失业的风险,因为在未来可能咱们所处的整个行业都会被全部颠覆掉,那公司也就不复存在了。司机这一职业就是很典型的随着科技的发展而不断演进和改变的案例,最早的司机是以马车夫的身份而存在、到现在的汽车驾驶员、再到随着自动驾驶技术的日渐成熟,未来的“司机”可能会是具有高度复杂算法和传感系统的自动驾驶车辆。
面对这种趋势,从大家的提问中就能看出对此的担忧,但我个人觉得也没有必要过度恐慌。首先社会未必会允许未来完全由机器来替代人类干某些事情,因为这背后毕竟事关就业和民生。另外,时代在发展、科技在发展,原地不动等于倒退,当然也会面临被淘汰的危险。这就启示我们需要做一些对新技术、新工具的学习,来适应未来的职业需要。
关于第二个问题,AI在未来会不会反向控制人类。这个话题在5年前的所谓大数据时代就被提出过。当时我在读吴军老师写的《智能时代》一书的时候,他就给出了自己的判断。他的观点是不会,他认为机器背后是由数据、算力、算法支撑起来的,而算法归根到底还是人设计的,所以他认为人不会被机器所控制,反而会被懂得制造智能机器的人所控制。
对吴军老师的观点我们可以不做评判,但也侧面反映了两点趋势。首先机器智能很厉害,一不小心就会有失控的风险,而且失控带来的结果是毁灭性的,就和霍金说的别让疯子使用核武器是一个道理。但机器归根结底还是可控的。但不知道吴军老师现在会不会改变自己的判断,因为大模型时代来临,机器变得愈发智能,就拿大模型举例,当训练的参数量无限增大,大模型在未来会不会涌现出人类无法控制的能力?这一点目前我们无从得知,但我们也需要防范人工智能获得独立的意志。至少说明这是一个需要引起足够重视的问题。
四、大模型产业会走向何方
最后一个部分我想谈谈围绕大模型我自己的一些判断,也是我最近在看完一些书和培训之后的一些思考。
先说现象,首先是国家层面开始重视人工智能,安老师帮我们总结成了三个第一次:第一次提出“通用人工智能”、第一次提出“产业智能化”、第一次提出“把握人工智能等新科技革命浪潮”。其次是资本对人工智能领域的投入,国内外对AI大模型公司的投资都非常积极踊跃,咱们公司也投资了很多的AI大模型公司。那是什么原因让通用人工智能在最近被全世界范围关注和重视呢?
从我的观察来看,如果把大模型仅仅看作是工具的话,是有可能成为下一次工业革命的导火索的,就跟蒸汽机、内燃机、计算机在历次工业革命中扮演的角色一样,可以作为引领整个产业升级的创造性的“引擎”。
而从历史经验看,谁能成功领导一次工业革命,谁就能主导接下来一段时间的全球经济。因为大模型带来的生产力的变革,可以从世界范围内改变全球的生产制造关系。对国家来说,大模型这个新的技术工具,可以被应用于千行百业,带动整个产业的下一次升级,也可以被出口到其他国家,带动国内经济的发展。
最后再谈一谈我对这个行业的判断。当前我们在AI大模型赛道看到的景象是一片欣欣向荣,咱们国家就有所谓的百模大战。国家鼓励,资本支持,科技公司也都投身其中。但是未来如果AI大模型真的能够在全球范围内建立影响力的话,最终的发展也应该是收敛的,就跟新能源、新能源汽车也从最开始的一哄而上到如今逐渐发展成寡头独大。
从历史经验看,每一次的工业革命浪潮最终也只是留下了几家家喻户晓的企业,第一次的东印度公司、第二次的福特和通用电气、第三次的英特尔、IBM、苹果,所以谁能脱颖而出,可以拭目以待。但值得庆幸的是,至少我们国家还在这一轮全球科技革命的牌桌上,作为当今智能化浪潮的弄潮儿,让我们一起期待大模型对人类生活的改变。
如何学习AI大模型?
我在一线互联网企业工作十余年里,指导过不少同行后辈。帮助很多人得到了学习和成长。
我意识到有很多经验和知识值得分享给大家,也可以通过我们的能力和经验解答大家在人工智能学习中的很多困惑,所以在工作繁忙的情况下还是坚持各种整理和分享。但苦于知识传播途径有限,很多互联网行业朋友无法获得正确的资料得到学习提升,故此将并将重要的AI大模型资料包括AI大模型入门学习思维导图、精品AI大模型学习书籍手册、视频教程、实战学习等录播视频免费分享出来。
第一阶段: 从大模型系统设计入手,讲解大模型的主要方法;
第二阶段: 在通过大模型提示词工程从Prompts角度入手更好发挥模型的作用;
第三阶段: 大模型平台应用开发借助阿里云PAI平台构建电商领域虚拟试衣系统;
第四阶段: 大模型知识库应用开发以LangChain框架为例,构建物流行业咨询智能问答系统;
第五阶段: 大模型微调开发借助以大健康、新零售、新媒体领域构建适合当前领域大模型;
第六阶段: 以SD多模态大模型为主,搭建了文生图小程序案例;
第七阶段: 以大模型平台应用与开发为主,通过星火大模型,文心大模型等成熟大模型构建大模型行业应用。
👉学会后的收获:👈
• 基于大模型全栈工程实现(前端、后端、产品经理、设计、数据分析等),通过这门课可获得不同能力;
• 能够利用大模型解决相关实际项目需求: 大数据时代,越来越多的企业和机构需要处理海量数据,利用大模型技术可以更好地处理这些数据,提高数据分析和决策的准确性。因此,掌握大模型应用开发技能,可以让程序员更好地应对实际项目需求;
• 基于大模型和企业数据AI应用开发,实现大模型理论、掌握GPU算力、硬件、LangChain开发框架和项目实战技能, 学会Fine-tuning垂直训练大模型(数据准备、数据蒸馏、大模型部署)一站式掌握;
• 能够完成时下热门大模型垂直领域模型训练能力,提高程序员的编码能力: 大模型应用开发需要掌握机器学习算法、深度学习框架等技术,这些技术的掌握可以提高程序员的编码能力和分析能力,让程序员更加熟练地编写高质量的代码。
1.AI大模型学习路线图
2.100套AI大模型商业化落地方案
3.100集大模型视频教程
4.200本大模型PDF书籍
5.LLM面试题合集
6.AI产品经理资源合集
👉获取方式:
😝有需要的小伙伴,可以保存图片到wx扫描二v码免费领取【保证100%免费】🆓