后GPT书:从GPT-3开始,续写Transformer庞大家族系谱

一文带你了解Transformer 大家族。

最近,大语言模型军备战争占据了朋友圈的大部分篇幅,关于这些模型能做什么和有什么商业价值,已经有很多文章探讨。然而,作为一个在人工智能范畴浸淫多年的小小研究员,我更关注的是这场军备竞赛背后的技术原理,以及这些模型是如何工程化并造福人类的。相比于看这些模型怎样赚钱和工程化以便为更多人带来好处,我更想探索的是这个现象背后的原因,以及在 AI 取代人类之前,我们这些研究员还能为实现 “被 AI 取代然后光荣退休” 做些什么。三年前,当 GPT-3 在技术界掀起轩然大波时,我曾尝试以史书的方式剖析 GPT 背后的庞大家族。我按时间顺序梳理了 GPT 背后的技术脉络(图 1),并试图解释 GPT 的成功背后的技术原理。今年,GPT-3 的小儿子 ChatGPT 似乎更加聪明,能够用聊天的方式与人交流,这让更多人了解了自然语言处置惩罚范畴的最新进展。在这个历史性的时刻,作为 AI 史官,我们或许应该花些时间回顾一下最近几年发生了什么。第一篇文章是以 GPT-3 作为起点,所以这个系列其实是对于后 GPT 时代的记录(后 GPT 书),而在探索 GPT 家族的变化时,我意识到大多数故事都与 Transformer 有关,因此这篇文章的名字就是 Transformer 世家。图片图 1.  GPT 旧族谱前情回顾在正式开始介绍 Transformer 世家前,我们先按照图 1 回顾一下过去发生了什么。从 Word Embedding [1,2] 开始,向量(一串数字)以一种奇特但有效的方式将文字的语义包含了进来,图 2 展示这种表征方式的说明:用数字表示的(国王 – 男人 + 女人 = 女王)。以这个为基础,这一支庞大的 NLP(自然语言处置惩罚)家族就创立了。图片图 2.  Word2Vec 图解 (King – Man + Woman = Queen) 在这之后,他的大儿子 ELMo [3] 发现了语境的重要性,比如以下两句话:“哦!你买了我最爱的披萨,我爱死你了!”“啊,我可真爱死你了!你把我最爱的披萨给蹭到地上了?”“我爱死你了” 的意思显然不同。ELMo 顺利的通过 “给定一个模型一串词,然后让模型预测下一个词和上一个词(前后文语境)” 解决了这个问题。与此同时,Word Embedding 的一个远房表亲发现了另一个问题 —— 人在理解一句话的时候,是会有重点的关注一部分词的,一个很明显的现象就是我们在读自己母语的时候很多错别字会被轻易地忽略掉,这是因为我们在理解这段话的时候注意力并不在这上面。因此,他提出了 Attention(注意力)体制 [4],但是此时的 Attention 体制很初期,并不能单独工作,因此只能依附在类似于 RNN,LSTM 这种序列模型上。图 3 展示了 attention 体制与 RNN 的结合流程,也说明了为什么 Attention 自身无法单独工作。这里简单说一下 NLP 模型的工作流程,首先我们有一句话,比如 “我爱你中国”,这就是五个字符,可以变成图 3 里的 x_1-x_5,然后每一个字符会变成刚刚所说的 word embedding (一串数字),也就是图 3 里的 h_1-h_5,然后他们再最后变成输出,比如 “I love China”(翻译任意),也就是图 3 里的 x_1’-x_3’。图 3 里剩下没说的部分就是 attention 体制了,也就是图 3 里的 A,他相当于给每一个 h 赋予了一个权重,这样我们就知道在转换当前这个词的时候,哪些字比较重要了。具体的细节可以参考我最开始写的那篇文章(从 word2vec 开始,说下 GPT 庞大的家族系谱 )。可以看出,这里的数字表征是整个任意的基础,这也是为什么 Attention 体制无法单独工作的原因。图片图 3.  早期照片 – Attention 与 RNN 强强联合(source: Attention for RNN Seq2Seq Models (1.25x speed recommended) – YouTube)此时,作为骄傲的皇族直系亲属,Transformer 不认可这种依附他人的工作方式,在论文 “Attention is all you need”(你只需要注意力体制就够了)[5] 中提出了自己独立的方式, 将 “注意力体制” 加了一个字变成了 “自注意力体制”,只用注意力体制就能天生那串数字。我们用中医开药来说明这个变化。最开始的 Attention 体制可以说是每种材料的剂量,但是最终去拿药的时候,药品是存在 RNN 或者 LSTM 这种采药者手里的,我们开出的药方当然也要鉴于药房(RNN、LSTM)里有什么药。Transformer 做的只是将采药权要了回来(加入了 value 矩阵),然后换了一种开药方的方式(加入 key 和 query 矩阵)。此时,Source 可以看作一个中药铺子的储物箱,储物箱里的药品由地址 Key(药品名)和值 Value(药品)组成,当前有个 Key=Query(药方)的查询,目的是取出储物箱里对应的 Value 值(药品),即 Attention 数值。通过 Query 和储物箱内元素 Key 的地址举行相似性比较来寻址,之所以说是软寻址,指的是我们不只从储物箱里面找出一中药物,而是可能从每一个 Key 地址都会取出内容,取出内容的重要性(量的多少)根据 Query 和 Key 的相似性来决定,之后对 Value 举行加权求和,这样就可以取出最终的 Value 值(一副中药),也即 Attention 值。所以不少研究人员将 Attention 体制看作软寻址的一种特例,这也是非常有道理的 [6]。从此之后,Transformer 正式开始带领家族走向繁荣。Transformer 继位其实从图 1 也可以看出,transformer 就是爷爷家族里子嗣最旺盛的一支了,也证实了当年”Attention is all you need” 这个题目狂的确实有理有据。虽然刚刚讲过他提出的自注意力体制是什么,前面那篇文章 (从 word2vec 开始,说下 GPT 庞大的家族系谱 ) 已经详细讲过 transformer 的演化流程了,这里还是快速给新来的同学回顾一下 transformer 这个架构到底是什么。简单来说,我们可以将 Transformer 看作一个 “演员”,对这个 “演员” 来说,编码器就像是演员的记忆,负责将台词转化为一个中间表示(抽象成脑海里我们不知道是什么的东西,也就是演员的理解),而解码器则像是演员的表演,负责将脑海里的理解转化成荧幕上的展示。这里面最重要的自注意力体制则充当了演员的专注力,能够自动调整演员在不同位置的注意力,从而更好地理解所有台词,使其在不同的情境中表演得更加自然流畅。更具体一点来说,我们可以将 Transformer 看作一个大型 “语言处置惩罚工厂”。在这个工厂中,每一个工人(编码器)都负责处置惩罚输出序列中的一个位置(比如说一个字),对其举行加工和转换,然后将其传递给下一个工人(编码器)。每一个工人都有一份详细的工作说明书(自注意力体制),其中详细形貌了如何处置惩罚当前位置的输出以及如何与前面的位置建立关联。在这个工厂中,每一个工人都可以同时处置惩罚自己的任意,因此整个工厂可以高效地处置惩罚大量的输出数据。Transformer 一登场,直接因为其强大的实力和两个争气的儿子(BERT 和 GPT)毫无悬念的夺下皇位。BERT (Bidirectional Encoder Representations from Transformers) [1] 继承了 Transformer 的 Encoder 部分,赢得了前半程比赛,但是因为其限制性,在通用性上输给了 GPT。老实的 GPT (Generative Pre-trained Transformer)[7-10] 继承了 Decoder 部分,老老实实从头学起,进修人类的交流方式,最终在后半程实现了了反超。当然,Transformer 的野心显然不止于此,”Attention is all you need”,指的并不只是 NLP 范畴。在介绍 GPT 和 BERT 之间的恩怨情仇之前,先看看他们老当益壮的父亲都做了些什么吧。 新族谱 – 诸侯林立“父亲,时代变了。我们家族会因为我的努力,走上真正的辉煌。”——Transformer在了解了 Transformer 的体制之后,我们可以来看看在 Transformer 的强力发展下,Transformer 世家现在发展到什么程度了(新族谱)。从前面的 “演员” 例子可以看出,Transformer 代表了一种符合人类逻辑的进修方式,因此它不仅可以处置惩罚文字,还可以处置惩罚图象。图 2 总结了 Transformer 世家强大的家族背景。除了让 GPT 和 BERT 在最开始的 NLP(自然语言处置惩罚)范畴继续开疆裂土外,Transformer 还开始涉足计较机视觉范畴。它的小儿子(谷歌提出的 ViT 等)也在这个范畴发光发热。2021 年,Vision Transformer 迎来了大爆发,一大批鉴于 Vision Transformer 的工作席卷了计较机视觉任意。自然而然地,作为一个世家,Transformer 家族总会互通有无,连接文本和图象(AI 作画)的 CLIP 应运而生。2022 年底,Stable Diffusion 在 ChatGPT 之前风光无限。除此之外,CLIP 还为 Transformer 世家打开了多模态的新大门。除了文字和图象,文字是否也能做音乐,是否也能画图?多模态和多任意 Transformer 也应运而生。总之,每一个范畴都是一个诸侯,一个 NLP 范畴白手起家的 Transformer,在努力发展后成了可以分封诸侯的 “周王”。诸侯林立,当是盛世。

图片

 图 4.  Transformer 世家日益繁盛的家族族谱 牛刀小试 – Vision Transformer [12]在说 GPT 之前,还是要先说说 Transformer 做出的第一个大胆尝试 – 那就是让小儿子去掺和 CV 范畴。先看看小儿子生平:其父亲 Transformer 出生于 2017 年一篇叫做 Attention is All You Need 的论文中。2019 年,Google 提出了一种 Vision Transformer(ViT)的架构,可以直接处置惩罚图象,而不需要利用卷积层(CNN)。论文题目一如既往的直白:“An image is worth 16×16 words”(一张图片就是 16*16 个词)。如图 5 所示,它的基本思想是把输出的图象分成一系列的小块,每一个小块可以理解成过去处置惩罚文章时候的一个文字,然后把这些小块转换成向量,就像在普通的 Transformer 中处置惩罚文字一样。如果说在自然语言处置惩罚(NLP)范畴,Transformer 的注意力体制试图捕捉文本中不同单词之间的关系,那么在计较机视觉(CV)范畴,ViT 则试图捕捉图象中不同部分之间的关系。

后GPT书:从GPT-3开始,续写Transformer庞大家族系谱图 5.  ViT 如何处置惩罚图片(source: Are Transformers better than CNN’s at Image Recognition? | by Arjun Sarkar | Towards Data Science) 在那之后,各种鉴于 Transformer 的模型层出不穷,而且在相应的任意上都取得了超越 CNN 的成绩。那 Transformer 的优势是什么呢,我们先回到电影的例子上,看看 Transformer 和 CNN 的区别:想象你是一位导演,要拍摄一部电影,你需要给演员安排好位置,把不同的元素放在合适的位置上,比如说,将演员放在适当的背景下,利用合适的光线,使整个画面看起来和谐美观。对于 CNN 来说,它像是一个专业的摄影师,会逐像素地拍摄每一帧画面,然后从中提取出一些边缘、纹理等低层次特征。然后,它将这些特征组合起来,形成更高层次的特征,例如人脸、动作等,最终得到一帧画面。随着电影的举行,CNN 会不断重复这个流程,直到完成整部电影的拍摄。而对于 ViT 来说,它像是一个艺术指导,会把整个画面看作是一个整体,考虑到背景、光线、颜色等因素,为每一个演员分配合适的位置和角度,创造出一个完美的画面。然后,ViT 会把这些信息汇总成一个向量,并利用多层感知器对它们举行处置惩罚,最终得到一帧画面。随着电影的举行,ViT 会不断重复这个流程,直到完成整部电影的创作。回到图象处置惩罚任意上,假设我们有一张 224×224 像素的猫的图片,我们想要用一个神经网络对它举行分类。如果我们利用传统的卷积神经网络,它可能会采用多个卷积层和池化层来逐渐缩小图象的大小,最终得到一个较小的特征向量,然后通过全连接层举行分类。这种方法的问题是,在卷积和池化的流程中,我们会逐渐丢失图象中的信息,因为我们不能同时考虑所有像素点之间的关系。此外,由于卷积和池化层的顺序限制,我们无法举行全局的信息交互。相比之下,如果我们利用 Transformer 和 self-attention 体制来处置惩罚这个图象,我们可以直接将整个图象视为一个序列,并对它举行 self-attention 计较。这种方法不会丢失任何像素点之间的关系,并且可以举行全局的信息交互。此外,由于 self-attention 计较是可并行化的,因此我们可以同时处置惩罚整个图象,大大加快了计较速度。举个例子,假设我们有一个句子:“I like to eat ice cream”, 其中包含 6 个单词。现在假设我们正在利用一个鉴于自注意力体制的模型来理解这个句子,Transformer 可以:最小化每层的总计较复杂度:鉴于自注意力体制的模型中,我们只需要计较每一个单词与所有其他单词之间的注意力权重,这样每一层的计较量只取决于输出长度而不是隐藏层的大小。在这个例子中,输出长度为 6 个单词,因此每一层的计较复杂度只取决于这 6 个单词的数量。最大化可并行化的计较量:鉴于自注意力体制的模型可以同时计较每一个单词与其他所有单词之间的注意力权重,因此计较可以高度并行化,从而加速模型的训练和推断。然而,ViT 需要大规模数据集和高分辨率图象才能发挥其全部潜力 ,因此,虽然 Vision Transformers 在 CV 范畴表现不凡,CNN 在计较机视觉范畴的应用和研究仍然更为广泛,并且在目标检测和分割等任意中具有优势 。但是没关系,你做的已经够好了,你父亲涉足 CV 的初衷也不是为了取代 CNN,他有更宏大的目标。这个目标的基础,就是前面我说的 “此外”。 初露峥嵘 – CLIP [13]前面我说过,Transformer 还有更宏大的目标,那就是 “大模型”,超级超级大的模型。除了我在前一篇文章里说的 transformer 可以更好地获得全局信息外,更小的计较复杂度和更好的并行度成为了支撑大模型的基础。2021 年,除了 Vision Transformer 有了长足进展以外,GPT 那一支还在紧锣密鼓的筹备 GPT3.5,闲不下来的劳模 Transformer 又引领了一个新的高潮 —— 连结文本和图象。这个高潮也为 “大模型” 计划打响了除 NLP 范畴外的第一枪。而此时,Transformer 在视觉任意上的缺点,在这里反而变成了优势。”ViT 需要大规模数据集和高分辨率图象才能发挥其全部潜力 “如果换个说法,就是 “ViT 可以处置惩罚大规模数据集和高分辨率图象”。老规矩,先说 CLIP 是什么。CLIP 的全称是 Contrastive Language-Image Pre-Training,很明显其基本思想就是传统 CV 范畴里的对比进修 (Contrastive learning)。当我们进修新知识时,我们会阅读不同的书籍和文章,获取大量的信息。但是,我们并不是只记住了每一个书籍或文章中的所有单词和句子。相反,我们会试图找到这些信息之间的相似性和区别。例如,我们可能会注意到在不同的书中,某个主题的形貌方式和关键概念的表述方式可能会有所不同,但它们所形貌的概念本质上是相同的。这种寻找相似性和区别的方式就是对比进修的基本思想之一。我们可以将每本书或文章看作不同的样本,而相同主题的书籍或文章可以被视为来自同一类别的不同实例。在对比进修中,我们会训练模型来进修如何区分这些不同类别的样本,以此来进修它们的相似性和区别。接下来更学术一点,假设你想训练一个模型来识别汽车品牌。你可以有一组带标签的汽车图象,每一个图象都有一个品牌标签,例如 “奔驰”、“宝马”、“奥迪” 等等。在传统的监督进修中,您可以将图象和品牌标签一起输出模型,并让模型进修如何预测正确的品牌标签。但在对比进修中,你可以利用未标记的图象来训练模型。假设你有一组未标记的汽车图象,你可以将这些图象分为两组:正样本和负样本。正样本是同一品牌的不同角度的图象,而负样本是不同品牌的图象。接下来,就可以利用对比进修来训练模型,以便将同一品牌的正样本彼此靠近,而将不同品牌的负样本彼此远离。这样,模型可以学会从图象中提取品牌特定的特征,而不必明确地告诉它每一个图象的品牌标签。很明显,这是一个自监督进修模型,CLIP 也是一个类似的自监督进修模型,只不过它的目标是将语言和图象联系起来,从而使计较机能够理解文本和图象之间的关系。想象你正在进修一组词汇表,其中每一个单词都有其定义和相应的图象。对于每一个单词和其对应的图象,你可以将它们视为一对(pair)。你的任意是找出这些单词和图象之间的相互关系,即哪些单词与哪些图象匹配,哪些不匹配。如图 6 所示,对于对比进修算法而言,这些单词和图象对就是所谓的 “anchor”(锚定样本)和 “positive”(正样本)。“anchor” 指的是我们想要进修的对象,而 “positive” 则是与 “anchor” 匹配的样本。与之相对的是 “negative”(负样本),即与 “anchor” 不匹配的样本。在对比进修中,我们将 “anchor” 和 “positive” 组成一对,并尝试将它们区分开来。同时,我们也会将 “anchor” 和 “negative” 组成一对,并尝试将它们区分开来。这个流程可以理解为是在寻找 “anchor” 和 “positive” 之间的相似性,以及在排除 “anchor” 和 “negative” 之间的相似性。后GPT书:从GPT-3开始,续写Transformer庞大家族系谱图 6. 对比进修(Contrastive Learning)图示 [14]。Anchor 就是原始图象,positives 一般是经过裁切、旋转后的原始图象,或是已知的相同类别的图象,negatives 可以被简单粗暴的定义为未知的图象(有可能是同一类别),或者是已知的不同类别的图象。为了达到这个目标,CLIP 首先对大量的图象和文本举行预训练,然后利用预训练的模型举行下游任意,例如分类、检索和天生等。CLIP 模型采用了一种新的自监督进修方法,即同时处置惩罚文本和图象,通过训练来进修如何将它们联系起来。它在文本和图象之间共享注意力体制,并利用一组简单的可调参数来进修这个映射。它用的是鉴于 transformer 的文本编码器和鉴于 CNN 的图象编码器,然后计较图象和文本嵌入之间的相似度。CLIP 通过利用对比进修目标来进修关联图象和文本,该目标最大化数据中存在的图象 – 文本对之间的一致性,并最小化随机采样的图象 – 文本对之间的一致性。后GPT书:从GPT-3开始,续写Transformer庞大家族系谱图 7. CLIP 图示 [13]。相比图 6,可以简单理解成图 6 中的 positive 和 negative 都是文字了。举个例子,如果我们想用 CLIP 来识别一张图片是否是 "红色的沙滩",我们可以输出这个文本形貌和一张图片,CLIP 将天生一个向量对来表示它们的联系。如果这个向量对的距离很小,那么就说明这张图片可能是 "红色的沙滩",反之则不是。通过这种方法,CLIP 可以实现图象分类和图象搜索等任意。回到全称,CLIP 的最后一个词是 pretraining,所以其本质还是预训练模型,但是它可以用于涉及匹配图象和文本的各种下游任意,例如图象分类、零样本进修和图象形貌天生等。例如,CLIP 可用于将图象分类为自然语言标签给出的类别,例如 “狗的照片” 或 “风景画”。CLIP 还可用于通过利用以 CLIP 提取的图象特征为条件的语言模型来为图象天生说明文字。此外,CLIP 可用于通过利用以 CLIP 提取的文本特征为条件的天生模型从文本天生图象。 DALL-E & Stable Diffusion在 CLIP 的帮助下,一个新的诸侯崛起了 – 他叫 AIGC(AI generated content)。其实 ChatGPT 本质上也是 AIGC 的一种,但是在这个小节,我们主要说的是 AI 作画。先来看看 AI 作画这个小家族的发展史:2021.01,OpenAI 发布 DALL-E [15](AI 作画软件),它改进了 GPT-3 从而让 GPT-3 天生图象,而不是文本 (Image Transformer Network)几乎同时(2021.01),OpenAI 发布 CLIP [13]2021.05,Google Brain 和 DeepMind 发布 Stable diffusion [17],并持续迭代新版本。它采用 frozen CLIP 文本编码器来根据文本提示调整模型。Stable diffusion 将图象天生流程分解为运行时的 “扩散”(diffusion)流程。从仅有的噪声开始,它逐渐修正图象,直到没有任何噪声,让其更接近提供的文本形貌。 2022.04,DALL-E-2 [16] 发布。它可以根据自然语言的形貌创建逼真的图象和艺术品。DALL-E-2 采用由先验和解码器组成的两部分模型。先验是一个 GPT-3 模型,根据文本提示天生 CLIP 图象嵌入。解码器是一个扩散模型,根据 CLIP 嵌入天生图象。DALL-E-2 还可以举行 outpainting, inpainting,以及对现有图象的变化。这个家族的脉络可见一斑,大哥 CLIP 连结了图象和文本,其双胞胎兄弟 DALL-E 顺势提出了文本到图象的任意。为了改进这个任意,一个远房表亲 Stable diffusion 改进了天生图象的算法,最后 DALL-E-2 取长补短,结合了 GPT-3,CLIP 以及 stable diffusion 的优势,完成了自己的 AI 作画系统。对于最开始的 DALL-E, 假设你是一位画家,而 DALL-E 就是你的工具箱。在这个比喻中,工具箱中有两个主要的工具:一个是画笔,另一个是调色板。画笔是 DALL-E 的解码器,它可以将给定的文字形貌转换为一张图象。调色板则是 DALL-E 的编码器,它可以将任意的文字形貌转化为一个特征向量。当你得到一句文字形貌时,你会首先用调色板来天生一个特征向量。然后你就可以拿起画笔,并利用特征向量来天生一张与形貌相符的图象。当你需要细节时,你会利用更精细的画笔,反之则会利用更粗糙的画笔。与画家不同的是,DALL-E 利用的是神经网络,而不是画笔和调色板。这个神经网络利用了一种名为 Image Transformer Network 的结构。在天生图象时,DALL-E 利用先前提到的 GPT-3 模型天生与文本形貌相对应的 CLIP 图象嵌入。然后,DALL-E 利用束搜索算法天生一系列可能的图象,这些图象与输出的文本形貌相匹配,并将它们送入一个解码器来天生最终的图象。这种嵌入向量是通过利用称为对比进修的技术来训练的,该技术可以将相似的图象和文本嵌入到相邻的空间中,以便更容易地将它们组合起来。注意,这里 DALLE 并没有直接包含 CLIP,但是它利用了 CLIP 的文本和图象嵌入来训练变换器和 VAE。至于在天生图象流程中利用的束搜索算法,实际上是一种贪心搜索算法,它可以在有限的候选集合中找到最优的序列。束搜索的基本思想是,每次扩展当前序列时,只保留概率最高的 k 个候选(k 称为束宽度),并舍弃其他低概率的候选。这样可以减少搜索空间,提高效率和准确度。DALLE 中利用束搜索天生图象的具体步骤如下:将输出的文本形貌编码为一个向量,并作为变换器模型的初始输出。从一个特殊的开始符号开始,逐像素地天生图象序列。每次天生一个像素时,都用变换器模型预测下一个像素的概率分布,并从中选择概率最高的 k 个候选像素,作为当前序列的延伸。对每一个延伸后的序列,计较其累积概率,并保留概率最高的 k 个序列,舍弃其他序列。重复步骤 2 和 3,直到天生一个特殊的结束符号或达到最大长度限制。返回概率最高的序列作为最终天生的图象。同样一幅画,stable diffusion 是怎么画的呢?当我们想要画一幅艺术作品时,通常需要一个良好的构图和一些具体的元素来构建。Stable diffusion 就是这样一种天生图象的方法,它将图象天生的流程分成了两个部分:扩散流程和重构流程。扩散流程可以想象成是将一堆零散的画笔、颜料和画板混合在一起,慢慢地在画板上创造出越来越多的元素。这个流程中,我们并不知道最终画面会是什么样子,也无法确定每一个元素最终的位置。但是,我们可以逐渐添加和调整这些元素,直到整幅画完成。然后,输出的文本形貌就像是我们对于要画的作品的大致形貌,通过束搜索算法来在文本形貌和天生的图象之间举行精细的匹配。这个流程就像是我们在不断地修改和调整元素,让它们更好地匹配我们想要的画面。最终,天生的图象将与文本形貌紧密匹配,呈现出我们想象中的艺术作品。如图 8 所示,这里的扩散模型是一种天生模型,它通过逐渐向数据添加噪声,然后逆向恢复原始数据的流程来进修数据的分布。stable diffusion 利用了一个预训练的变分自编码器(VAE)来将图象编码成低维潜在向量,并利用一个鉴于变换器的扩散模型来从潜在向量天生图象。stable diffusion 还利用了一个冻结的 CLIP 文本编码器来将文本提示转换成图象嵌入,从而对扩散模型举行条件化。图片图 8. Stable Diffusion 流程。首先是上面的箭头,一张图片被不断加入噪声,最后变成纯噪声图,然后走下面的箭头,逐渐消除噪声,然后重建最开始的图片。(图源:From DALL・E to Stable Diffusion: how do text-to-image generation models work? | Tryolabs)值得注意的是,Stable Diffusion 中的扩散流程是一种随机的流程,因此每次天生的图象都会有所不同,即使是相同的文本形貌。这种随机性使得天生的图象更加多样化,同时也增加了算法的不确定性。为了让天生的图象更加稳定,Stable Diffusion 利用了一些技巧,如在扩散流程中加入逐步增加的噪声,以及利用多次重构流程来进一步提高图象质量。Stable Diffusion 在 DALL-E 的基础上有了很大的进步:分辨率:stable diffusion 可以天生高达 1024×1024 像素的图象,而 DALL-E 目前只能天生 256×256 像素的图象。速度:stable diffusion 需要举行多次迭代才能天生图象,因此速度较慢。DALL-E 则可以一次性天生图象,因此速度较快。灵活性:stable diffusion 可以对现有的图象举行扩画、修补和变化,而 DALL-E 只能从文本提示天生图象。真实性:stable diffusion 可以天生更真实和细致的图象,尤其是在复杂和抽象的形貌下。DALL-E 则可能天生一些不符合物理规律或常识的图象。这也是为什么 DALL-E-2 也将扩散模型加入到其模型中去了。潜伏的强者 – GPT3.5 [18] & Instruct GPT [19]在其他诸侯把改革开展的如火如荼的时候,GPT 这一支也一直在默默努力着。开头说过,GPT-3 刚发布的时候已经有很强的能力了,但是利用方式不那么 “非技术人员友好”,所以掀起的浪花都是在技术界,这些本就不算很热烈的浪花,又因为它不低的收费而日益消散。Transformer 十分不满意,GPT 想了想,那就改革!第一个响应改革号召,迈出第一步的是 GPT 3.5:“我比较笨,想不出什么好办法改革,那就先把基础打牢吧。”于是,GPT3.5 鉴于 GPT-3 ,利用了一种叫做 Text+Code 的训练数据,即在文本数据的基础上,增加了一些编程代码的数据。简单来说,就是用了更大的数据集。这样可以使模型更好地理解和天生代码,提高模型的多样性和创造性。Text+Code 是一种鉴于文本和代码的训练数据,它是由 OpenAI 从网上收集并整理的。它包括两部分:文本和代码。文本是一些用自然语言形貌的内容,如文章、评论、对话等。代码是一些用编程语言编写的内容,如 Python、Java、HTML 等。Text+Code 训练数据可以使模型更好地理解和天生代码,提高模型的多样性和创造性。例如,在编程任意中,模型可以根据文本形貌天生相应的代码,并且代码具有较高的正确性和可读性。在内容天生任意中,模型可以根据代码形貌天生相应的文本,并且文本具有较高的一致性和有趣性。Text+Code 训练数据也可以使模型更好地处置惩罚多语言,多模态,多范畴的数据和任意。例如,在语言翻译任意中,模型可以根据不同语言之间的对应关系,举行准确和流畅的翻译。在图象天生任意中,模型可以根据文本或代码形貌,天生相应的图象,并且图象具有较高的清晰度和逼真度。第二个响应号召的是 Instruct GPT,他发现了新的问题:“要想跟人类打成一片,我们就需要更有效的听取他们的意见。”于是,出现了大名鼎鼎的新晋外援,也就是 RLHF 训练策略。RLHF 是一种鉴于强化进修的训练策略,它的全称是 Reinforcement Learning from Human Feedback。它的核心思想是在训练流程中,给模型提供一些指令,并根据模型的输出给予奖励或惩罚。这样可以使模型更好地遵循指令,提高模型的可控性和可信度。其实 GPT-3.5 也有人类反馈(Human Feedback),那加入了强化进修(Reinforcement learning)之后,发生了什么改变呢?GPT3.5 的人类反馈是直接用于微调模型的参数,而 Instruct GPT 的 RLHF 是用于训练一个奖励模型,然后用这个奖励模型来指导模型的行为。GPT3.5 的人类反馈是鉴于单个输出的评价,而 Instruct GPT 的 RLHF 是鉴于多个输出之间的比较。GPT3.5 的人类反馈只举行了一次,而 Instruct GPT 的 RLHF 可以举行多次迭代,不断收集新的比较数据,训练新的奖励模型,优化新的策略。也就是说,更少的人力投入,但是给模型带来了更大的收益。后GPT书:从GPT-3开始,续写Transformer庞大家族系谱图 9. RLHF 流程(图源:GPT-4 (openai.com))如图 9 所示,RLHF 训练策略分为两个阶段:预训练和微调。在预训练阶段,模型利用和 GPT-3 相同的数据集举行无监督进修,进修语言的基本知识和规律。在微调阶段,模型利用一些人工标注的数据举行强化进修,进修如何根据指令天生合适的输出。人工标注的数据包括两部分:指令和反馈。指令是一些用自然语言形貌的任意,如 “写一首关于春天的诗” 或 “给我一个关于狗的笑话”。反馈是一些用数字表示的评分,如 “1” 表示很差,“5” 表示很好。反馈是由人类标注者根据模型的输出给出的,反映了模型输出的质量和合理性。在微调阶段,模型利用一个叫做 Actor-Critic 的算法举行强化进修。Actor-Critic 算法包括两个部分:Actor 和 Critic。Actor 是一个天生器,它根据指令天生输出。Critic 是一个评估器,它根据反馈评估输出的奖励值。Actor 和 Critic 之间相互协作和竞争,不断地更新自己的参数,以提高奖励值。RLHF 训练策略可以使模型更好地遵循指令,提高模型的可控性和可信度。例如,在写作任意中,模型可以根据指令天生不同风格和主题的文本,并且文本具有较高的连贯性和逻辑性。在对话任意中,模型可以根据指令天生不同情感和语气的回复,并且回复具有较高的相关性和礼貌性。终于,经过前辈们的改革积累,GPT 家族里更加灵活的小儿子 ChatGPT 觉得是时候了,顺势鉴于 Instruct GPT 推出了更贴合人类交流方式的对话模式,直接在人类社会掀起巨大的浪花(几亿用户),而且它又是免费的,GPT 家族经过几年的蛰伏,终于一鸣惊人,成为 Transformer 世家最受宠的皇子,直接在继位之争上一举夺魁,成为太子。与此同时,对于 ChatGPT 来说,太子还不是全部,ChatGPT 继承了 Transformer 巨大的野心:“现在的局面太乱了,强大的王朝不需要这么多诸侯,是时候统一他们了。“统一诸侯 – 大模型时代GPT-4:” 这个时代,是大模型的时代,我说的。”(bushi)现在的 ChatGPT 已经是鉴于 GPT-4 的大门面了。GPT-4 因为惧怕于其竞争对手的快速反应,其实大部分技术细节都是封闭的。但是从其功能上,已经看出 GPT 家族统一各诸侯的野心了,除了文字对话以外,GPT-4 也加入了 AI 作图功能。GPT 家族从过去几年的蛰伏经验里悟出了一个道理,大模型即正义,并想将这个道理推广到各个范畴。如果深究这个道理背后的底气,那可能就是大模型训练的方式吧。GPT-3 是目前最大的语言模型之一,它拥有 1750 亿个参数,比其前身 GPT-2 多了 100 倍,比之前最大的同类 NLP 模型要多 10 倍,也可以算是大预言模型的先驱者了。所以,我们先来看看 GPT-3 的模型架构和训练方法是如何实现这样的规模和性能的:分布式训练:GPT-3 利用了分布式训练的方法,即将模型和数据分散在多个计较节点上,并通过通信协议举行协调和同步。这样可以利用多个节点的计较资源和内存空间,加速模型训练的流程,并支持更大规模的模型和数据。GPT-3 利用了约 2000 个 GPU 节点来举行分布式训练,每一个节点有 多块 GPU,每块 GPU 有 相同 的显存。GPT-3 利用了两种分布式训练的方法:数据并行和模型并行。数据并行是指将数据分成多个子集,每一个节点处置惩罚一个子集,并在每一个节点上更新模型的参数,然后在所有节点间同步参数。模型并行是指将模型分成多个部分,每一个节点处置惩罚一个部分,并在每一个节点上计较部分的输出和梯度,然后在所有节点间传递输出和梯度。GPT-3 利用了一种混合的数据并行和模型并行的方法,即在每一个节点内部利用数据并行,在不同节点之间利用模型并行。这样可以充分利用 GPU 的计较能力和通信带宽,同时减少通信开销和内存占用。激活函数检查点:GPT-3 利用了一种叫做激活函数检查点的技术,即在模型的前向传播流程中,只保存部分层的激活函数的值,而不是所有层的值。这样可以节省显存空间,因为激活函数的值占用了大部分的显存。在模型的反向传播流程中,如果需要用到某些层的激活函数的值,就重新计较它们,而不是从显存中读取。这样可以牺牲一些计较时间来换取更多的显存空间,从而支持更大规模的模型和批量大小。稀疏注意力体制:GPT-3 利用了一种叫做稀疏注意力体制的技术,即在计较自注意力时,只考虑部分输出序列中的词,而不是所有词。这样可以减少计较量和内存占用,因为自注意力的复杂度和输出序列的长度成平方关系。GPT-3 利用了一种鉴于局部窗口和全局块的稀疏注意力体制,即将输出序列划分为多个块,并且每一个块只与相邻的几个块举行注意力计较,同时每一个块还与一些随机选择的全局块举行注意力计较。这样可以保证模型既能捕捉局部信息,又能捕捉全局信息,同时也能降低计较复杂度和内存占用。看到这里,ChatGPT 眉头微皱,似乎有些不满意 GPT-3 的方案:“这还不够。”"大模型确实是当下的趋势,但是不应该只是为了竞争而盲目追求规模。在训练大模型之前,我们需要考虑更多的细节和技术挑战,才能确保其能够稳定、高效地运行,并产生有用的结果。"“首先,选择合适的训练超参数和模型初始化非常关键。进修率、批量大小、迭代次数等超参数的选择对模型的收敛速度、稳定性和性能影响重大。而模型初始化则决定了训练开始前的权重值,会影响到最终结果的质量。这些参数需要根据经验实验或理论分析举行仔细调整,以确保模型的最佳表现。”“其次,为了获得高吞吐量并避免瓶颈,我们需要优化训练流程中的各个环节,比如硬件配置、网络带宽、数据加载速度和模型架构等。优化这些环节可以显著提高模型的处置惩罚速度和效率。例如,利用更快的存储设备或数据格式可以减少数据加载时间;利用更大的批量大小或梯度累积可以减少通信开销;利用更简单或更稀疏的模型可以减少计较时间等等。”“最后,训练大模型时可能会遇到各种不稳定和失败的情况,例如数值错误、过拟合、硬件故障、数据质量问题等等。为了避免或恢复这些问题,我们需要密切监控模型的行为和性能,并利用调试工具和技术来识别和修复任何错误或缺陷。此外,我们还可以利用各种安全措施和防护体制,如裁剪、正则化、丢弃、噪声注入、数据过滤、数据增强等等,以提高模型的鲁棒性和可靠性。”“在这个时代,大模型的确是重要的,但是仅仅是追求规模并不能让模型产生有用的结果。只有经过深思熟虑的训练和优化,才能让大模型真正发挥其潜力,为人类带来更多的价值。”太子说得对。没落的强诸侯 – BERT最后,瘦死的骆驼比马大,虽然 BERT 最近被 GPT 压过风头,但毕竟是曾经的强诸侯,在 GPT 势不可挡的发展下,BERT 依然保留了自己的一份封地。当谈及自然语言处置惩罚模型的时候,BERT(Bidirectional Encoder Representations from Transformers)一度是非常受欢迎的模型,因为它在很多任意上都表现得非常出色。当它第一次发布时,它几乎是无人能敌的,甚至比 GPT 更为成功。这是因为 BERT 的设计与 GPT 有着不同的目标和优势。BERT 的目标是将上下文建模的能力推到一个全新的高度,以便更好地支持下游任意,例如文本分类和问答。它通过训练一个双向 Transformer 编码器来实现这个目标。这个编码器能够同时考虑输出序列的左侧和右侧,从而获得更好的上下文表示,因此 BERT 能够对上下文更好地举行建模,提高了模型在下游任意中的表现。但是,随着时间的推移,GPT 系列模型的出现使得 GPT-3 在多项任意上超越了 BERT。一个可能的原因是 GPT 系列的模型在设计上更加专注于天生性任意,比如文本天生和对话系统,而 BERT 则更注重分类和问答任意。此外,GPT 系列模型利用了更大的参数和更多的数据举行训练,这也使得它们能够在更广泛的任意上取得更好的表现。当然,BERT 仍然是一个非常有用的模型,特别是对于一些需要对文本举行分类或回答问题的任意。而 GPT 系列的模型则更适合用于天生性任意,例如文本天生和对话系统。总体来说,这两个模型都有它们独特的优势和局限性,我们需要根据具体任意的需求来选择适合的模型。 夺嫡之争 – 来势汹汹的 Segment Anything Model (SAM) [20]前面说过,在大哥 GPT 默默努力的时候,劳模 Transformer 在 CV 范畴(ViT)和多模态范畴 (CLIP) 都掀起了不小的浪花,但是最终都成为了经验宝宝,被老父亲 Transformer 教给了受宠的太子 GPT,最终成就了 GPT-4 的所谓大一统。骨子里流淌着 Transformer 血液的 ViT 和 CLIP 当然很不开心:“王侯将相宁有种乎?大哥不是学我们吗,我们也可以学他。” “但是,他在 NLP 范畴太强大了,我们要找个新的战场。”于是,SAM 横空出世。在官网,他们自己是这么形貌的:Segment Anything Model (SAM): a new AI model from Meta AI that can "cut out" any object, in any image, with a single click简单来说,我们可以将 SAM 看作一个高效的 “图象剪辑大师”,它能够通过各种输出提示来精确地识别和分割图象中的各种对象。例如,当我们在图象中用鼠标点击一个点时,SAM 会像一个经验丰富的画家一样,自动剪切出该点所在的对象;当我们输出 “猫” 这个词时,SAM 就会像一个聪明的侦探一样,自动找出并剪切出图象中所有的猫;当我们给 SAM 一个目标检测框时,SAM 就会像一个熟练的手术医生一样,准确地剪切出框内的对象。SAM 的零样本泛化能力使其成为一个真正的 “通用剪辑大师”。这意味着无论是常见的对象,如汽车、树木和建筑,还是罕见的对象,如恐龙、外星人和魔法棒,SAM 都可以毫不费力地识别和剪切。这种强大的能力源于其先进的模型设计和庞大的数据集。我从原论文里选了四张很复杂的场景实例(图 10),说明了 SAM 到底可以做什么。图片图 10. SAM 的效果实例。图片里每一个颜色的东西你都可以剪辑提取出来,相当于一个高效的 PS 大师(图象剪辑大师)。简单来说,以前别人跟我们眉飞色舞地提需求的时候,我们总要无奈地问一句,先等一下,你们能提供什么样的数据?现在不需要了,至少在 CV 范畴,已经更贴近非技术人群对 AI 的理解了。为了实现上面说的强大能力,我们来看看 ViT 和 CLIP 是如何大声密谋的:ViT: “我虽然之前主要是做图象分类任意,但我的架构同样适用于图象分割。因为我是利用 Transformer 架构将图象分解成一系列块然后对其举行并行处置惩罚的,如果集成我的优势,SAM 就可以继承我并行处置惩罚和全局注意力的优势,从而实现高效的图象分割。”CLIP:“好呀,那我就带着我联合训练的方法入股,鉴于这个思想,SAM 也可以处置惩罚不同类型的输出提示(问题提示和视觉提示)。”于是,SAM 的模型架构成型了 (图 11),ViT 用来做 image encoder(图象编码器),而 CLIP 来编码 prompt(提示)的信息。想法是好的,具体该怎么做呢 —— 当然是进修大哥啦!“我们想要利用预训练的语言模型来做图象分割任意,就像用文字提示(prompt)来让语言模型天生或预测文字一样。有了 CLIP,我们的提示就可以很丰富了,可以是一些 point (点)、box(框)、mask,还有 Text (文本),它们告诉语言模型要在图象中分割出什么。我们的目标就是,给定任何提示,都能得到一个有效的分割 mask (分割结果)。有效的 mask 意味着,即使提示有歧义(比如说衬衫还是人),输出也应该是其中一个对象的合理 mask。这就像大哥 GPT(语言模型)对一个有歧义的提示也能给出一个连贯的回应一样。我们选择这个任意,因为它可以让我们用一种自然的方式来预训练语言模型,并且通过提示来实现零样本迁移到不同的分割任意上。”后GPT书:从GPT-3开始,续写Transformer庞大家族系谱图 11. SAM 模型架构至于结果,前面提到的其强大能力已经证实了这个想法的可行性。但是,不得不提的是,虽然 SAM 确实不再需要重新训练模型,但是像 chatGPT 刚推出时一样,他还是有一些限制的。在论文的 Limitation 部分,作者页明确指出了 SAM 的一些局限性和不足,比如在细节、连通性、边界等方面的缺陷,以及在交互式分割、实时性、文本提示、语义和全景分割等任意上的挑战,同时也承认了一些范畴专用工具的优势。举个例子,我在 demo 里做了两个简单的测试:一个是医疗图象范畴的病灶检测,因为病灶太小了,很难检测到;第二个是人像切割,切出来的人像乍看不错,但是发丝还是不是很自然,仔细看还是能看出来切割痕迹。当然,这毕竟是一个很好的开始,这小哥俩创业未半,还在努力,要啥自行车?所以,这场夺嫡的结果如何,还是让我们拭目以待吧!总结 Transformer 世家的庞大家族显然不是这一篇文章可以说明的,当谈到鉴于 Transformer 的成果时,我们可以看到这个范畴的持续创新:Vision Transformer(ViT)展示了 Transformer 在计较机视觉范畴的成功应用,它可以直接处置惩罚图象像素数据,不需要手工特征工程。DALL-E 和 CLIP 则将 Transformer 应用于图象天生和图象分类任意,展示了它在视觉语义理解中的优越表现。Stable Diffusion 则提出了一种稳定的扩散流程,可以对概率分布举行建模,这可以应用于图象分割、天生等任意。这些成果共同揭示出 Transformer 模型的广泛应用前景,让我们不得不承认,未来某一天,可能真的”Attention is all you need”。总之,我们可以从这些成果中看到人工智能范畴持续创新的活力。无论是 GPT 还是 BERT,还是 Vision Transformer、DALL-E、CLIP、Stable diffusion 等,这些成果都代表着人工智能范畴的最新进展。而大考(ChatGPT)当前,现在的情景大概是这样的:学霸们这学期好好上课,翻开书本就能回想起当时那节课老师说这个知识点时的音容笑貌,甚至开始规划下学期的进修计划。伪学霸们天天到课,占据前排,打开课本却是一脸懵逼,开始跟学渣们一起 “一天一本书,一周一学期”,唯一的区别就是课本不是全新的,对课本内容还有一点点记忆,不算是在完全的进修新知识。 至于真正的学渣们…… “知识来,知识来,知识从四面发八方来” 其实我倒觉得,不管是伪学霸还是学渣,都应该在期末考面前保持冷静,看看这学期讲了什么,找学霸们借一下笔记,甚至可以选择缓考。对学霸们来说,快是水到渠成的。对伪学霸和学渣们来说,快是有害的。在人工智能范畴的竞争中,持续创新是至关重要的。因此,作为研究员,我们应该密切关注这个范畴的最新发展,并且保持谦虚和开放的心态,以促进人工智能范畴的不断进步。 参考文献[1] Mikolov, Tomas; et al. (2013). "Efficient Estimation of Word Representations in Vector Space". arXiv (https://en.wikipedia.org/wiki/ArXiv_(identifier)):1301.3781 (https://arxiv.org/abs/1301.3781) [cs.CL (https://arxiv.org/archive/cs.CL)].[2] Mikolov, Tomas (2013). "Distributed representations of words and phrases and their compositionality". Advances in neural information processing systems.[3] Matthew E. Peters, Mark Neumann, Mohit Iyyer, Matt Gardner, Christopher Clark, Kenton Lee, & Luke Zettlemoyer. (2018). Deep contextualized word representations.[4] Bahdanau, Dzmitry, Kyunghyun Cho, and Yoshua Bengio. "Neural machine translation by jointly learning to align and translate." arXiv preprint arXiv:1409.0473 (2014).[5] Vaswani, Ashish, et al. "Attention is all you need." Advances in neural information processing systems 30 (2017).[6] attention 体制及 self-attention (transformer). Accessed at: https://blog.csdn.net/Enjoy_endless/article/details/88679989[7] Radford, Alec, et al. "Improving language understanding by generative pre-training." (2018).[8] Radford, Alec, et al. "Language models are unsupervised multitask learners." OpenAI blog 1.8 (2019): 9.[9] Brown, Tom, et al. "Language models are few-shot learners." Advances in neural information processing systems 33 (2020): 1877-1901.[10] GPT-4 (openai.com)[11] Devlin, Jacob; Chang, Ming-Wei; Lee, Kenton; Toutanova, Kristina (11 October 2018). "BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding". arXiv:1810.04805v2 [cs.CL].[12] Dosovitskiy, Alexey, et al. "An image is worth 16×16 words: Transformers for image recognition at scale." arXiv preprint arXiv:2010.11929 (2020).[13] Radford, Alec, et al. "Learning transferable visual models from natural language supervision." International conference on machine learning. PMLR, 2021.[14] Zheng, Laura, Yu Shen, and Ming C. Lin. "Exploring Contrastive Learning with Attention for Self-Driving Generalization."[15] Reddy, Mr D. Murahari, et al. "Dall-e: Creating images from text." UGC Care Group I Journal 8.14 (2021): 71-75.[16] Ramesh, Aditya, et al. "Hierarchical text-conditional image generation with clip latents." arXiv preprint arXiv:2204.06125 (2022).[17] Rombach, Robin, et al. "High-resolution image synthesis with latent diffusion models." Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition. 2022.[18] Chen, Xuanting, et al. "How Robust is GPT-3.5 to Predecessors? A Comprehensive Study on Language Understanding Tasks." arXiv preprint arXiv:2303.00293 (2023).[19] Ouyang, Long, et al. "Training language models to follow instructions with human feedback." Advances in Neural Information Processing Systems 35 (2022): 27730-27744.分析师介绍:

本文作者王子嘉,戴尔科技集团首席技术官办公室人工智能科学家,英国帝国理工学院Al专业毕业,主要研究方向为计较机视觉、3D重建、AIGC等,重点关注在相关范畴举行新技术的探索与创新,在新Al技术赋能的数据隐私保护以及AIGC技术在数据管理上的应用等方向上做过很多尝试与创新。于2019年加入戴尔科技集团,在此期间,已在相关范畴发表论文5篇、专利139项。

关于机器之心全球分析师网络 Synced Global Analyst Network

机器之心全球分析师网络是由机器之心发起的全球性人工智能专业知识共享网络。在过去的四年里,已有数百名来自全球各地的 AI 范畴专业学生学者、工程专家、业务专家,利用自己的学业工作之余的闲暇时间,通过线上分享、专栏解读、知识库构建、报告发布、评测及项目咨询等形式与全球 AI 社区共享自己的研究思路、工程经验及行业洞察等专业知识,并从中获得了自身的能力成长、经验积累及职业发展。

原创文章,作者:机器之心,如若转载,请注明出处:https://www.iaiol.com/news/30424

(0)
上一篇 2023年4月16日 下午1:16
下一篇 2023年4月16日 下午3:04

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注