一文解析ChatGPT数据集之谜人工智能

Meta首席AI科学家YannLeCun最近抨击ChatGPT的名言实际上解释了背后的门道。他说,ChatGPT“只是巧妙的组合而已”,这句话恰恰道出了一种无形的技术壁垒。

简单来说,即使其他团队的算法、数据、算力都准备的与OpenAI相差无几,但就是没想到以一种精巧的方式把这些元素组装起来,没有OpenAI,全行业不知道还需要去趟多少坑。

作者|AlanD.Thompson

翻译|杨婷、徐佳渝、贾川

一些研究人员的报告称,通用人工智能(AGI)可能是从我们当前的语言模型技术进行演进[1],预训练Transformer语言模型为AGI的发展铺平了道路。虽然模型训练数据集日渐增大,但缺乏基本指标文档,包括数据集大小、数据集token数量和具体的内容细节。

1、概述

图1.主要数据集大小的可视化汇总。未加权大小,以GB为单位。

2018年以来,大语言模型的开发和生产使用呈现出爆炸式增长。一些重点研究实验室报告称,公众对大语言模型的使用率达到了惊人高度。2021年3月,OpenAI宣布[3]其GPT-3语言模型被“超过300个应用程序使用,平均每天能够生成45亿个词”,也就是说仅单个模型每分钟就能生成310万词的新内容。

值得注意的是,这些语言模型甚至还没有被完全理解,斯坦福大学的研究人员[4]最近坦言,“目前我们对这些模型还缺乏认知,还不太了解这些模型的运转模式、不知道模型何时会失效,更不知道这些模型的突现性(emergentproperties)能产生什么效果”。

因为这方面的原始文献并不对外公开,所以本文搜集整合了二、三级研究资料,在必要的时候本文会采用假设的方式来推算最终结果。

在本文中,我们会将原始论文中已经明确的特定细节(例如token数量或数据集大小)归类为“公开的(disclosed)”数据,并作加粗处理。

多数情况下,适当地参考二、三级文献,并采用假设的方式来确定最终结果是很有必要的。在这些情况下,token数量和数据集大小等细节是“确定的(determined)”,并以斜体标记。

模型数据集可分为六类,分别是:维基百科、书籍、期刊、Reddit链接、CommonCrawl和其他数据集。

表1.主要数据集大小汇总。以GB为单位。公开的数据以粗体表示。确定的数据以斜体表示。仅原始训练数据集大小。

1.1.维基百科

1.2.书籍

1.3.杂志期刊

预印本和已发表期刊中的论文为数据集提供了坚实而严谨的基础,因为学术写作通常来说更有条理、理性和细致。这类数据集包括ArXiv和美国国家卫生研究院等。

1.4.Reddit链接

WebText是一个大型数据集,它的数据是从社交媒体平台Reddit所有出站链接网络中爬取的,每个链接至少有三个赞,代表了流行内容的风向标,对输出优质链接和后续文本数据具有指导作用。

1.5.CommonCrawl

CommonCrawl是2008年至今的一个网站抓取的大型数据集,数据包含原始网页、元数据和文本提取,它的文本来自不同语言、不同领域。重点研究实验室一般会首先选取它的纯英文过滤版(C4)作为数据集。

1.6.其他数据集

2、常用数据集

2.1.维基百科(英文版)分析

表2.英文维基百科数据集类别。公开的数据以粗体表示。确定的数据以斜体表示。

2.2CommonCrawl分析

表3.C4:前23个域(不包括维基百科)。公开的数据以粗体表示,确定的数据以斜体表示。

3、GPT-1数据集

2021年,经过全面的回顾性分析,BookCorpus数据集对按流派分组的书籍数量和各类书籍百分比进行了更正[12]。数据集中有关书籍类型的更多详细信息如下:

表4.BookCorpus书籍类型。公开的数据以粗体表示,确定的数据以斜体表示。

在随后的数据集重构中,BookCorpus数据集进一步过滤掉了书籍中的“吸血鬼”类别、降低了言情类书籍的百分比、增加了“历史”类书籍,增加了收集的书籍数量。

3.1.GPT-1数据集总结

GPT-1最终的数据集总结分析如下:

表5.GPT-1数据集总结。以GB为单位。公开的数据以粗体表示,确定的数据以斜体表示。

4、GPT-2数据集

2019年,OpenAI发布了拥有15亿参数的语言模型GPT-2。GPT-2论文阐明了所用训练数据集的大小[13],不过并未说明其内容。而GPT-2模型卡(modelcard)(在GPT-2GitHub仓库中)说明了模型内容[14]。

如GPT-2论文所述,假设模型卡显示链接数时,每个链接都可以被4500万链接总数所除,那WebText的内容在数据集中所占的百分比的详细信息就可以确定。

然后可以使用确定的150亿token数量来查找每个域的token数量。请注意,在可用的前1,000个域中,此处仅显示前50个域。

表6.WebText:前50个域。公开的数据以粗体表示,确定的数据以斜体表示。

4.1.GPT-2数据集总结

GPT-2模型最终的数据集总结分析如下:

表7.GPT-2数据集总结。公开的数据以粗体表示,确定的数据以斜体表示。

5、GPT-3数据集

GPT-3模型由OpenAI于2020年发布。论文阐明了所用训练数据集的token数量[16],但训练数据集的内容和大小尚不清楚(CommonCrawl的数据集大小除外[17])

表8.GPT-3数据集。公开的数据以粗体表示,确定的数据以斜体表示。

5.1.GPT-3:关于Books1和Books2数据集的分析

5.2.GPT-3:Books1

GPT-3使用的Books1数据集不可能与GPT-1使用的BookCorpus数据集相同,原因在于Books1的数据集更大,达120亿token。在一篇引用的论文[19]中就提及GPT-1使用的BookCorpus数据集拥有9.848亿个词,但这可能只相当于13亿token(984.8字x1.3字的token乘数)。

5.3.GPT-3:Books2

5.4.GPT-3数据集总结

附录A概述了使用Wikipedia+CommonCrawl+WebText数据集的顶级资源列表。GPT-3模型的最终数据集总结分析如下:

表9.GPT-3数据集总结。公开的数据以粗体表示,确定的数据以斜体表示。

6、ThePilev1(GPT-J和GPT-NeoX-20B)数据集

有关token数量的更多详情,可以使用本文提供的信息来确定,参见表1(大小以GB为单位)和表7(token/每字节)[23]。

表10.ThePilev1数据集。公开的数据以粗体表示,确定的数据以斜体表示。

6.1.ThePilev1分组数据集(GroupedDatasets)

为了确定如‘Books’、‘Journals’和‘CC’这类数据集的大小,笔者对数据集进行了分组,如下表所示。

表11.ThePilev1分组数据集(不包括Wikipedia、CC和WebText)。公开的数据以粗体表示,确定的以斜体表示。

6.2.ThePilev1数据集总结

ThePilev1数据集与GPT-J和GPT-NeoX-20B模型的最终数据集总结分析如下:

表12.Pilev1数据集总结。公开的数据以粗体表示,确定的数据以斜体表示。

7、Megatron-11B和RoBERTa数据集

2019年,MetaAI(当时称之为FacebookAI)和华盛顿大学联合发布了拥有1.25亿参数的RoBERTa模型。次年,MetaAI发布了拥有110亿参数的Megatron-11B模型。Megatron-11B使用的训练数据集与RoBERTa相同。RoBERTa[24]论文阐明了所用训练数据集的内容,不过必须参考引用的论文(BERT[25]和toryes[26])来确定最终的数据集大小。

BookCorpus:确定的数据集为4.6GB,如上面的GPT-1部分所示。

维基百科:公开的数据集为“16GB(BookCorpus加上英文维基百科)”。在减去BookCorpus数据集(4.6GB,如上面的GPT-1部分所述)后,维基百科数据集确定为11.4GB。

CC-News:(经过滤后)公开的数据集为76GB。

OpenWebText:公开的数据集为38GB。

Stories:公开的数据集为31GB。请注意,此数据集是“基于常识推理任务问题”的CommonCrawl内容,不属于本文的‘Books’类别。相反,将Stories与CC-News数据集(76GB)相结合,CommonCrawl的总数据集则为107GB。

7.1.Megatron-11B和RoBERTa的数据集总结

Megatron-11B和RoBERTa最终的数据集总结分析如下:

表13.Megatron-11B和RoBERTa的数据集总结。公示的数据以粗体表示,确定的数据以斜体表示。

8、MT-NLG数据集

如前所述,有关数据集大小的更多详情,可以使用ThePilev1论文中提供的信息来确定。虽然使用的组件相同,但注意的是,MT-NLG和ThePilev1中报告的组件大小却各不相同,这是由于来自EleutherAI(ThePilev1数据集)和Microsoft/NVIDIA(MT-NLG模型)的研究人员采用了不同的数据过滤和去重方法。

8.1.MT-NLG中的CommonCrawl数据集

Pile-CC:公开的数据集为498亿token,确定的数据为227.12GB左右,参见上述Pilev1部分。

CC-2020-50:公开的数据集为687亿token,假设token的每字节率(perbyterate)为0.25TpB=274.8GB。

CC-2021-04:公开的数据集为826亿token,假设token的每字节率为0.25TpB=330.4GB

RealNews(来自RoBERTa/Megatron-11B):显示为219亿token。根据RealNews论文[27],数据集确定为120GB。

CC-Stories(来自RoBERTa/Megatron-11B):公开的数据集为53亿token,如上述RoBERTa部分所示,数据集确定为31GB。

8.2.MT-NLG分组数据集(GroupedDatasets)

表14.MT-NLG分组数据集。公开的数据以粗体表示,确定的数据以斜体表示。

8.3.MT-NLG数据集总结

MT-NLG模型最终的数据集总结分析如下:

表15.MT-NLG数据集总结。公示的数据以粗体表示,确定的数据以斜体表示。

9、MT-NLG数据集Gopher数据集

Gopher模型由DeepMind于2021年发布,有2800亿参数。该论文清楚地说明了所使用训练数据集所包含的高级token数量和大小[28],但没有说明详细内容。

表16.公开的Gopher数据集(MassiveText)。公开的数据以粗体表述,确定的数据以斜体表示。

有趣的是,据Gopher论文披露:其Books数据集中包含一些超过500年历史(1500-2008)的书籍。

9.1.MassiveWeb数据集分析

DeepMind于2014年被谷歌收购,并在创建MassiveText时获得了海量数据。虽然Gopher论文中没有进一步详细描述MassiveWeb,但第44页附录中的表A3b注明了MassiveWeb中出现的前20个域[29]。根据披露的每个域所占的百分比,我们可以使用MassiveWeb的总token数(5060亿token)和总原始大小(1900GB)来确定每个域的token数量和大小。

表17.MassiveWeb:前20个域。公开的数据以粗体表示,确定的数据以斜体表示。

9.2.Gopher:关于维基百科数据集的分析

维基百科数据集的总规模很难确定。在Gopher论文中,研究人员指出维基百科没有进行数据去重[30]。然而,论文中列出的不同大小数据集(12.5GBMassiveWebWikipedia与1GBMassiveTextWikipedia)可能是由于失误而造成的,误将“10GB”写成了“1GB”。无论如何,本文仅使用MassiveWeb数据集版本(12.5GB)。

9.3.Gopher:不包括WebText

Gopher数据集的组成部分不包括Reddit外链的WebText数据集。为了清楚起见,尽管Reddit是MassiveWeb中的顶级域,但该数据集仅抓取Reddit域内的Reddit链接。根据定义,WebText[31]由“所有Reddit的外链”组成(即指向Reddit域外的链接)。

9.4.Gopher分组数据集

MassiveWeb被认为是MassiveText的子组件,并被集成到Gopher的数据集汇总中,其分组基于以下列出的可用信息:

表18.Gopher分组数据集。公开的数据以粗体表示,确定的数据以斜体表示。

9.5.Gopher数据集总结

Gopher是本文中最大的数据集,大小为10.5TB。Gopher模型的最终数据集总结分析为:

表19.Gopher数据集总结。公开的数据以粗体表示,确定的数据以斜体表示。

10、结论

随着语言模型不断发展并更广泛地渗透到人们的生活中,确保数据集的详细信息公开透明、所有人都可访问且易于理解是有用、紧迫和必要的。

扩展阅读及脚注

ThePilev1paperGao,L.,Biderman,S.,Black,S.,Golding,L.,Hoppe,T.,&Foster,C.etal.(2021).ThePile:An800GBDatasetofDiverseTextforLanguageModeling.

AppendixA:Top50Resources:Wikipedia+CC+WebText(i.e.GPT-3)

附录A:前50个资源:Wikipedia+CC+WebText(即GPT-3)

基于本文内容,尤其是每个数据集中每个资源的token数量,我们可以对将Wikipedia+CommonCrawl+WebText数据集的组合,作为其整体训练数据集的一部分模型进行资源或域的排序。为清楚起见,这包括以下模型:OpenAIGPT-3、EleutherAIGPT-J、EleutherAIGPT-NeoX-20B、MetaAIMegatron-11B和RoBERTA,以及Microsoft/NVIDIAMT-NLG等。

请注意,展示的排名基于数据集中可用的未加权总token,每个数据集的主观权重由研究人员在模型预训练之前计算得出。其中有一些重复(例如,《纽约时报》既出现在有1.11亿token的WebText中,也出现在过滤后有1亿token的CommonCrawl中)。

脚注

10.GPT-1paper:pp4“WeusetheBooksCorpusdatasetfortrainingthelanguagemodel.”

15.GPT-3paper:“WebText2:190亿token。[Alan:WebText2是从WebText稍微扩展而来,所以我们可以减去20%,得到150亿token]”

16.GPT-2paper:pp3“GPT-3:pp9,Table2.2“CC:4100亿token.WebText2:190亿token.Books1:120亿token.Books2:550亿token.Wiki:30亿token”

17.GPT-3paper:pp8

18.BookCorpusrepo:soskek/bookcorpus#27:“books3.tar.gz似乎类似于OpenAI在他们的论文中引用的神秘“books2”数据集。不幸的是,OpenAI不会提供细节,所以我们对其差异知之甚少。人们怀疑它是“libgen的全部”,但这纯粹是猜测。尽管如此,books3仍是“所有的bibliotik”......”

22.ThePilev1paper:“Books3(Bibliotiktracker):100.96GB”[Alan:乘以每字节token数0.2477=250亿token]

23.ThePilev1paper:pp3,Table1fordatasets.pp28,Table7forTokensperbyte.

30.Gopherpaper:pp41n14“请注意,我们将文档去重应用于除Wikipedia和GitHub之外的所有MassiveText子集“

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