要求人工智能帮助完成日常生活中的一些任务并不是什么新鲜事。智能扬声器中的人工智能可以告诉你“明天天气怎么样”;翻译软件中的人工智能可以准确翻译一大段甚至一篇文章;编写人工智能将输出合成。
但是他们只能做一件事,翻译人工智能不能写作文,问答人工智能也不能翻译。他们更像工具而不是代理。一个真正智能的人工智能应该是什么样的?它应该是通用的,可以处理问题和答案,写文章和翻译。
最近在硅谷,着火的GPT 3就是这样一个人工智能。问答、写作和翻译都很重要,我们还可以写代码、计算公式、做表格和画图标(详细的例子,请参考平西之前的文章:打开应用编程接口后,我们真的很欣赏GPT 3的力量……)。
(GPT 3号甚至会设计一个看起来像西瓜的按钮)
本质上,GPT 3实际上是一个语言模型。所谓的语言模型是一种允许机器理解和预测人类语言的技术。如果之前的语言模型是专家,那么GPT 3是多面手,一切都做得很好。
当我们仔细回顾和梳理它的诞生故事时,我们会发现在人工智能领域出现了一个明显的趋势:培养一个具有颠覆性进步的模型,最终的竞争是数据量和计算能力的规模,这意味着这个行业的门槛越来越高,这可能最终导致人工智能技术的竞争成为几个有能力支付得起的大公司之间的游戏。
预训练建立了数量的门槛
GPT 3号的故事始于2018年。
2018年初,艾伦人工智能研究所和华盛顿大学的研究人员提出了Elmo(从语言模型嵌入)模型。以前的模型不能理解上下文,也不能根据上下文判断多义词的正确含义。ELMo第一次解决了这个问题。
在ELMo模型的训练过程中,研究者采用了一种关键的方法,——预训练。通常,训练模型需要大量手动标记的数据。然而,在标注数据较少的情况下,训练模型的精度很差。
预训练摆脱了对已标记数据的依赖,并利用大量未标记的语料库(即无监督学习)进行训练,以获得一组模型参数,然后将其应用于特定任务。由该模型训练的语言模型在自然语言处理任务中被证明是有效的。可以说,预训练的成功开创了自然语言研究的新范式。
2018年6月,OpenAI提出了基于ELMo的GPT。GPT的全称是生成性预训练,字面意思是“生成性预训练”。
GPT也是基于预训练模式,但不同于ELMo,它加入了第二阶段的训练:微调,也叫“微调”,开创了“预训练微调”的先例。所谓的微调,即基于在第一阶段训练的模型,使用少量带注释的语料库对特定的自然语言处理任务(即监督学习)进行调整。
除了创建“预训练和微调”模式,GPT还在特征提取器上使用了更强大的变压器。所谓的特征提取器用于提取语义特征。谷歌在2017年推出的变形金刚在综合效果和速度上比ELMo使用的RNN特征提取器有优势。而且,数据量越大,Transformer的优势就越突出。
在预训练阶段,GPT设计了一个12层的变压器(层数越多,规模越大),并使用“单向语言模型”作为训练任务。如上所述,ELMo模型可以理解上下文,并且上面和下面的信息被充分利用。然而,GPT和后来的迭代版本坚持单向语言模型,并且只使用上述信息。
GPT的设计理念为随后的迭代奠定了基础,但由于其规模和效果并不突出,风头很快被2018年底出现的伯特所掩盖。
(冷知识:ELMo和BERT是美国儿童节目《芝麻街》中人物的名字)
伯特是由谷歌创建的,刷新了11个自然语言处理任务的最佳水平,颠覆了整个自然语言处理领域。事实上,伯特的成功归功于GPT。它们在总体框架上基本相同,都采用“预训微调”的模式。不同的是,GPT是一个单向的语言模式,而伯特采用一个双向的语言模式。
BERT取得了巨大的成功,但它有两个缺点。首先,尽管结合了无监督学习和有监督学习(即“预训练和微调”),但在特定领域仍有一定数量的注释数据。其次,由于有限的领域标注数据,会导致BERT模型的过度拟合(模型过于僵化,只适用于训练数据),难以应用到其他领域,即一般能力不足。
2019年2月发布的GPT 2号解决了BERT的缺点。为了摆脱对标记数据的依赖,OpenAI在设计GPT-2模型时基本上采用无监督学习(即预训练),减少了微调阶段有监督学习的比例,并尽量不对某些任务进行微调。
其次,为了增强通用性,OpenAI选择了范围更广、质量更高的数据,并使用800万个网页(大小为40 GB)的语料库进行训练,覆盖几乎所有领域。此外,OpenAI还增加了GPT-2模型的规模,将其参数增加到15亿,是GPT模型(117万个参数)的10倍,是伯特-拉奇模型(伯特的更大版本,有3亿个参数)的5倍。
GPT 2号出现后,很快引起了整个自然语言处理领域的注意。当它完成特定的自然语言处理任务(如问答、翻译和总结)时,它使用预训练模型,可以很好地完成这些任务。特别是,他在继续写短文方面表现很好。
伴随着大规模预训练的想法,OpenAI继续“泛滥”,用更多的未标记数据、更多的参数和更多的计算能力训练模型,并最终在2020年5月推出了GPT 3号。7月,应用程序接口被开发出来,允许更多的开发者调用GPT 3号的预训练模型,这彻底摧毁了整个自然语言处理圈。
(GPT 3号在右上方,图片来自微信号“亲爱的数据”)。人员规模和计算能力
从GPT 1号到GPT 3号的突破,充分体现了“努力创造奇迹”的意义。
首先看看人力。在最初的GPT论文中只有四位作者,在GPT 2号论文中有六位作者。到了GPT 3号,作者人数飙升至31人。
(GPT-3有31位作者)
此外,这31位作者分工明确,有的负责训练模型,有的负责收集和过滤数据,有的负责实现特定的自然语言任务,还有的负责开发速度更快的GPU内核,这与公司不同部门之间的合作没有什么不同。
(31位作者的分工写了整整一页)
看看计算能力。从第一代GPT到GPT-3,算法模型基本没有变化,都是基于Transformer进行预训练,但是训练数据量和模型规模增加了十倍甚至上千倍。因此,所需的计算能力变得越来越夸张。第一个GPT可以在8个图形处理器上训练一个月,而GPT 2号需要在256个谷歌云TPU v3(每小时256美元)上训练,训练持续时间未知。
到GPT 3号,计算能力成本已经达到数千万。根据GPT-3的说法,所有型号都是在英伟达V100图形处理器上的高带宽集群中进行培训的,培训费用估计为1200万美元。
甚至,因为成本太高,当研究人员发现一个Bug时,他没有选择再次训练,而是从论文中排除了相关部分。
(研究人员发现了一个Bug,但是成本问题没有解决。)
显然,没有强大的计算能力,GPT-3是无法训练的。那么,OpenAI的计算支持从何而来?这意味着回归投资。2019年7月,微软向OpenAI注资10亿美元。双方同意,微软将为开放人工智能提供计算支持,而开放人工智能将许可微软的一些人工智能知识产权用于商业化。
2020年5月,微软推出了一台专门为OpenAI设计的超级计算机。它托管在Azure上,包含超过285,000个处理器内核和10,000个图形处理器,每台图形服务器的连接速度为400 Gbps/s。它的性能位列超级计算机前五名。
最后,让我们来谈谈OpenAI。OpenAI成立于2015年,由埃隆的马斯克和Y Combinator的前总裁山姆奥特曼,领导,最初是一个纯粹的非营利的人工智能研究机构,但经过转型和重组,并引入微软投资,现在已经成为一个混合盈利和非营利的企业。
一直以来,开放人工智能的目标是创造“人工通用智能”(简称AGI)。正如文章开头所说,AGI是一个能够完成所有智力任务的人工智能。
构建AGI有两种方法,一种是开发更强大的算法,另一种是在现有算法的基础上进行扩展。OpenAI是第二条道路的信徒。2019年,OpenAI计算了自2012年以来所有模型使用的计算量,包括AlexNet和AlphaGo,发现最大的AI模型所需的计算能力增加了30万倍,每3.4个月增加一倍。根据摩尔定律,芯片性能的倍增周期为18-24个月。这意味着最大的人工智能模型对计算能力的需求远远超过了芯片性能的提高。
毫无疑问,计算能力已经成为自然语言处理研究甚至人工智能研究的障碍。来自知乎,的用户李渔,说得好:GPT 3号只是一个开始。随着这类工作的正常发展,像开放人工智能这样的组织很可能会形成系统的人工智能技术垄断。
https://www.toutiao.com/a6864731525745738243/