没有这些,别妄谈做ChatGPT了模型训练

文|卖萌酱,转自公众号「夕小瑶的卖萌屋」

ChatGPT破圈爆火后,越来越多人开始问:

“啥时候出现中国版的ChatGPT?”

国内学术界和工业界,都纷纷躁动起来——百度、阿里、字节等大厂纷纷喊口号,一众创业公司也开始争做中国版OpenAI;学术界也在用行动来表明战斗力,比如前些天复旦大学推出的MOSS模型,一经开放试用,便冲上热搜。

有钱就能训出模型?

以美团大佬带资入组为代表,很多创业者和投资人盯上了ChatGPT,作为一个NLPer,我乐见其成,相信不用几个月,在热钱的助推下,NLP算法工程师的薪资要和芯片看齐了。

但我还是要泼个冷水,创业公司想做ChatGPT,想训练模型,不是有钱招几个算法就能搞定的。

先不说ChatGPT,只说较为成熟、参数量“较小”的BERT模型,其Large版本参数量“仅有”3.4亿,比现在的ChatGPT模型足足小了3个数量级。但如果一个从业者真正从0开始训练过BERT模型,那他一定不会认为训练BERT这个“小模型”是很容易的事情。

如今ChatGPT既没有公开代码,也没有公开训练数据,更没有公开模型参数,甚至都没有公开前置模型的模型参数,模型的体量还比BERT大了3个数量级。

ChatGPT没有捷径

相对创业团队,中国的互联网大厂在大模型方向有积累,有先发优势,但这绝不意味着高枕无忧。

在语言模型方面,国内各大厂大多沿着“以掩码语言模型MLM为核心的BERT路线”进行深耕,这种技术路线更加注重提升语言模型的文本理解能力,弱化文本生成能力。真正沿着ChatGPT这种生成式语言模型的路线深耕的研究团队,无论国内外,都不是太多。

这就注定了,ChatGPT的复现不是一朝一夕就能完成的,补功课很可能要从三年前OpenAI发布的GPT-3开始。如果没有GPT-3提供的世界知识和强大的长文本生成能力,训练ChatGPT就无异于建造空中楼阁了。

可惜,GPT-3至今也没有开源,未来也大概率不会开源了。要从头训这么一个1750亿参数的大型生成式语言模型,难度非常大。

有人可能要说,那我们训一个小点的模型,比如百亿参数的,可行吗?

目前来看不可行。AI的表现并非随着模型规模增加而线性增加,而是在参数规模超过特定临界值后显著提升,甚至涌现出小模型不具备的能力。比如论文表明,模型的规模至少要达到620亿参数量后,才可能训练出来思维链(Chain-of-Thought,CoT)能力。如下图所示:

而像Truthful(可信的)这种能力,甚至ChatGPT/GPT-3这样的模型规模都是不够的,要达到2800亿参数量才能涌现出这样的能力。

是的,复现和超越ChatGPT,目前来看没有捷径,必须一步一步来,首先要先把GPT-3搞定。

国内有人真正复刻了GPT-3?

是的,有且只有一家,阿里达摩院,他们从小到大(从base到175B),全面、完整地复刻了GPT-3,并且开放在魔搭社区上。

达摩院的复刻不是没有来由的,他们应该在大模型各个方向都进行了探索,布局完整。早在2021年4月就发布了首个中文语言大模型PLUG(当时参数是270亿)。该模型首次在中文语言理解榜单CLUE上面,以86.685分的成绩超越人类。

同年10月份,达摩院还探索实现了10万亿参数模型——M6,达摩院团队通过大量的底层优化和算法设计,仅仅使用了512卡便实现了这一庞大的模型工程。此前,M6模型将AI图片生成清晰度从OpenAIDALL·E的256×256成功提升到了1024×1024,效果十分惊艳。

不过,我们也要看到,算法可能只是硬币的一面,另一面是算力和云基础设施,不容忽视。

云基础设施

OpenAI的解决方式是向微软求助。同样的道理,国内如果有初创企业想要成为中国版OpenAI,自研ChatGPT,恐怕也要先跟几个云计算厂商好好聊一聊了。

没有做过大模型训练的人,可能会误以为多买几张A100卡就可以了。

当你实操的时候,你就会发现:

因此,没有一个面向AI高度优化的云计算平台,训练GPT-3和ChatGPT这种级别的模型怪兽,是相当不现实的。

这里面有两个重点,一个叫“面向AI”,另一个叫“高度优化”。

“高度优化”不必多说,考验的是一个云计算平台底层的优化能力,包括网络、存储、计算、通信等方方面面的系统化工程能力。

什么叫“面向AI”呢?

但是AI的计算不一样。对于AI而言,尤其是今天AI的训练:

也就是说,对于AI训练而言,尤其是今天那么大规模的训练,性能和规模是第一位的,传统云服务所涉及到的一些能力,是第二位的。

这里还是以达摩院为例,为什么达摩院能训练出多个万亿级模型,因为他们背后有阿里云的飞天智算平台做支撑。这是一个超大规模的高性能计算集群,是国内唯一能实现万卡规模的AI集群。

给你一万张A100,就能把ChatGPT训出来吗?答案无疑是否定的。万卡集群对于网络、存储和通信有极高的要求,弄得不好直接宕机。

贴一组数据。

数据层面,飞天智算平台的单集群算力峰值高达12EFLOPS,千卡并行效率达90%。针对ChatGPT这类数据密集型场景,还对大规模集群进行了大量数据IO优化,通过自研KSpeed和RDMA高速网络架构,最高可将存储IO性能提升10倍,将时延显著降低了90%。

此外,阿里云自研的高性能集合通信库ACCL和自研的网络交换机等,对万卡规模的AI集群提供了无拥塞、高性能的集群通讯能力。

除了底层硬件的AI集群,大模型训练非常依赖于软件平台层。飞天智算平台的机器学习平台PAI,专门针对AI大模型推理和训练场景进行针对性优化,可将计算资源利用率提高3倍以上,AI训练效率提升11倍,推理效率提升6倍,覆盖了全链路的AI开发工具与大数据服务。

可以说,这种面向AI实现高度优化的云平台,是ChatGPT这类大模型快速迭代的底层设施保障。

总结

千亿参数规模的大模型研发,需要底层庞大的算力、网络、存储、大数据、AI框架等智算基础设施的支持,也需要面向AI的针对性优化,这是一个囊括诸多技术领域的复杂系统工程。

ChatGPT之争已经超出了算法的范畴,它更是一个AI+云计算能力的全方位竞争,是技术生态层面的竞争。既需要强大的云基础设施能力的保障,又需要深厚的大模型技术积淀,两者缺一不可。

多说一句

作为NLPer,我能深刻的感受到,自从2020年GPT-3模型发布后,AI的研究生态正变得愈加封闭。虽然这对于已经取得竞争优势的商业化公司而言是利好,但对全人类实现AGI的终极梦想而言,却是一个不好的文化趋势。

客观上,我们需要承认与OpenAI的差距,正因如此,倘若有一个更加开放的大模型生态,使得能有更多的AI研究人员避免“重复造轮子”,那国内“ChatGPT复现”的进程无疑会大大加快。

THE END
1.ChatGPT在数据处理中的应用如何用chatgdp处理csv数据? 在SQL结果中,我没有实际去验证。在Python结果中,使用了describe函数,还是很不错的。我们在Python中概览数据时,就是使用该函数。但是describe函数的结果中已经包含了非空值计数,而ChatGPT又单独计算了一次。 1.2 数据预处理 ? 数据预处理主要包括缺失值填充、重复值删除、异常值删除或替换。接下来看看ChatGPThttps://blog.csdn.net/weixin_41905135/article/details/136232210
2.如何利用CHATGPT分析数据快熟生成文案:无论是小红书、微博还是公众号, Chat GPT都能帮你快熟生成吸引眼球的文案,让你的创作更具有吸引力。自动撰写报告:无论是工作汇报还是项目 只需输入相关指令, Chat GPT就能为你生成结构清晰、内容肺腑的报告。Chat GPT使用技巧 1、准确提问 Chat GPT功能虽然非常强大, 但由于目前Chat GPT数据库http://www.hlwwhy.com/ask/6705610.html
3.chatgpt怎么做统计?Worktile社区2. 数据预处理:对采集到的对话数据进行预处理。预处理包括数据清洗、去除重复对话、去除噪声等步骤,以确保数据的质量和准确性。 3. 统计指标选择:根据分析的目的,选择适当的统计指标来衡量ChatGPT的性能和效果。例如,可以考虑以下指标:生成回答的准确率、可读性、相关性等。 https://worktile.com/kb/ask/539416.html
4.ChatGPT服务器,深度拆解基于此,我们进一步假设:1)考虑到AI大模型预训练主要通过巨量数据喂养完成,模型底层架构变化频率不高,故我们假设每月最多进行一次预训练;2)人类反馈机制下,模型需要不断获得人类指导以实现参数调优,以月为单位可能多次进行。由此我们计算得ChatGPT单月Finetune算力成本至少为1350.4PFlop/s-day。https://www.51cto.com/article/747956.html
5.从ChatGPT爆火看人工智能大势大数据。ChatGPT训练数据集规模巨大,训练数据集包含六类数据,分别是维基百科、书籍、期刊、Reddit链接、Common Craw以及专门的数据集。GPT-3的预训练数据有45TB。ChatGPT训练数据集规模未公开,推测也是百T级别。 大算力。GPT-3的算力需求为3640Petaflop/s-day(假设每秒计算1千万亿次,需要3640天),微软投入5亿美元建https://www.cnii.com.cn/gxxww/zgdxy/ztjj/202304/t20230420_464182.html
6.ChatGPT作为知识库问答系统的问答能力评测与现有的KBQA模型不同,ChatGPT在问答场景下的输出一般是一段包含了答案的文本,难以直接与数据集提供的答案做精确匹配从而得到模型的精准率。而由于采样的数据规模较小,已有的ChatGPT评估工作一般通过人工评价来计算模型的性能。因此,我们需要建立一套大部分自动化的答案评测方法。 https://maimai.cn/article/detail?fid=1777689012&efid=GJoGHmTuTzjbUa7TLdmtDw
7.ChatGPT原理理解和结构解读〖前言〗问了200+个问题后,终于完全搭建起来对Chat@GPT本身的原理理解和结构了解,形成的理解文件90%的内容都是他生成的。但是结构化这篇文章以及深入时刻,是自己完成的。今后的学习和工作可能都需要和他来共同完成了。 1 从概率角度理解生成式模型原理 https://www.jianshu.com/p/0628b1bd2c48