乐趣区

关于人工智能:深度学习六十年简史

作者|Jean de Dieu Nyandwi

起源|机器之心

1

1958 年:感知机的衰亡

1958 年,弗兰克 · 罗森布拉特创造了感知机,这是一种非常简单的机器模型,起初成为当今智能机器的外围和起源。

感知机是一个非常简单的二元分类器,能够确定给定的输出图像是否属于给定的类。为了实现这一点,它应用了单位阶跃激活函数。应用单位阶跃激活函数,如果输出大于 0,则输入为 1,否则为 0。

下图是感知机的算法。


感知机

Frank 的用意不是将感知机构建为算法,而是构建成一种机器。感知机是在名为 Mark I 感知机的硬件中实现的。Mark I 感知机是一台纯电动机器。它有 400 个光电管(或光电探测器),其权重被编码到电位器中,权重更新(产生在反向流传中)由电动机执行。下图是 Mark I 感知机。


Mark I 感知机。图片来自美国国家历史博物馆

就像你明天在新闻中看到的对于神经网络的内容一样,感知机也是过后的头条新闻。《纽约时报》报道说,“[海军] 冀望电子计算机的初步模型可能行走、谈话、察看、书写、自我复制并意识到它的存在”。明天,咱们都晓得机器依然难以行走、谈话、察看、书写、复制本人,而意识则是另一回事。

Mark I 感知机的指标仅仅是辨认图像,而过后它只能辨认两个类别。人们花了一些工夫才晓得增加更多层(感知机是单层神经网络)能够使网络具备学习简单性能的能力。这进一步产生了多层感知机 (MLP)。

2

1982-1986 : 循环神经网络 (RNN)

在多层感知机显示出解决图像识别问题的后劲之后,人们开始思考如何对文本等序列数据进行建模。

循环神经网络是一类旨在解决序列的神经网络。与多层感知机 (MLP) 等前馈网络不同,RNN 有一个外部反馈回路,负责记住每个工夫步长的信息状态。


前馈网络与循环神经网络

第一种 RNN 单元在 1982 年到 1986 年之间被发现,但它并没有引起人们的留神,因为简略的 RNN 单元在用于长序列时会受到很大影响,次要是存在记忆力短和梯度不稳固的问题。

3

1998:LeNet-5,第一个 CNN 架构

LeNet-5 是最早的卷积网络架构之一,于 1998 年用于文档辨认。LeNet-5 由 3 个局部组成:2 个卷积层、2 个子采样或池化层和 3 个全连贯层。卷积层中没有激活函数。

正如论文所说,LeNet-5 已进行商业化利用,每天读取数百万张支票。上面是 LeNet-5 的架构。该图像取自其原始论文。

LeNet-5 在过后的确是一个有影响力的钻研,但它(惯例的卷积网络)直到 20 年后才受到关注!LeNet-5 建设在晚期工作的根底上,例如福岛邦彦提出的第一个卷积神经网络、反向流传(Hinton 等人,1986 年)和利用于手写邮政编码辨认的反向流传(LeCun 等人,1989 年)。

4

1998:长短期记忆(LSTM)

因为梯度不稳固的问题,简略 RNN 单元无奈解决长序列问题。LSTM 是可用于解决长序列的 RNN 版本。LSTM 基本上是 RNN 单元的极其状况。

LSTM 单元的一个非凡设计差别是它有一个门机制,这是它能够管制多个工夫步长的信息流的根底。

简而言之,LSTM 应用门来管制从以后工夫步长到下一个工夫步长的信息流,有以下 4 种形式:

  • 输出门辨认输出序列。
  • 忘记门去掉输出序列中蕴含的所有不相干信息,并将相干信息存储在长期记忆中。
  • LTSM 单元更新“更新单元“的状态值。
  • 输入门管制必须发送到下一个工夫步长的信息。


LSTM 架构。图片取自 MIT 的课程《6.S191 Introduction to Deep Learning》

LSTM 解决长序列的能力使其成为适宜各种序列工作的神经网络架构,例如文本分类、情感剖析、语音辨认、图像题目生成和机器翻译。

LSTM 是一种弱小的架构,但它的计算成本很高。2014 年推出的 GRU(Gated Recurrent Unit)能够解决这个问题。与 LSTM 相比,GRU 的参数更少,成果也很好。

5

2012 年:ImageNet 挑战赛、AlexNet 和 ConvNet 的衰亡

如果跳过 ImageNet 大规模视觉辨认挑战赛 (ILSVRC) 和 AlexNet,就简直不可能探讨神经网络和深度学习的历史。

ImageNet 挑战赛的惟一指标是评估大型数据集上的图像分类和对象分类架构。它带来了许多新的、弱小的、乏味的视觉架构。

挑战赛始于 2010 年,但在 2012 年产生了变动,AlexNet 以 15.3% 的 Top 5 低错误率博得了较量,这简直是此前获胜者错误率的一半。AlexNet 由 5 个卷积层、随后的最大池化层、3 个全连贯层和一个 Softmax 层组成。AlexNet 提出了深度卷积神经网络能够很好地解决视觉辨认工作的想法。但过后,这个观点还没有深刻到其余利用上!

在随后的几年里,ConvNets 架构一直变得更大并且工作得更好。例如,有 19 层的 VGG 以 7.3% 的错误率博得了挑战。GoogLeNet(Inception-v1)更进一步,将错误率升高到 6.7%。2015 年,ResNet(Deep Residual Networks)扩大了这一点,并将错误率升高到 3.6%,并表明通过残差连贯,咱们能够训练更深的网络(超过 100 层),在此之前,训练如此深的网络是不可能的。人们发现更深层次的网络做得更好,这导致产生了其余新架构,如 ResNeXt、Inception-ResNet、DenseNet、Xception 等。

读者能够在这里找到这些架构和其余古代架构的总结和实现:https://github.com/Nyandwi/Mo…


ModernConvNets 库


ImageNet 挑战赛。图片来自课程《CS231n》

6

2014 年 : 深度生成网络

生成网络用于从训练数据中生成或合成新的数据样本,例如图像和音乐。

生成网络有很多种类型,但最风行的是由 Ian Goodfellow 在 2014 年创立的生成反抗网络 (GAN)。GAN 由两个次要组件组成:生成假样本的生成器,以及辨别实在样本和生成器生成样本的判断器。生成器和鉴别器能够说是相互竞争的关系。他们都是独立训练的,在训练过程中,他们玩的是零和游戏。生成器一直生成坑骗判断器的假样本,而判断器则致力发现那些假样本(参考实在样本)。在每次训练迭代中,生成器在生成靠近实在的假样本方面做得更好,判断器必须进步规范来辨别不实在的样本和实在样本。

GAN 始终是深度学习社区中最热门的钻研之一,该社区以生成伪造的图像和 Deepfake 视频而闻名。如果读者对 GAN 的最新进展感兴趣,能够浏览 StyleGAN2、DualStyleGAN、ArcaneGAN 和 AnimeGANv2 的简介。如需 GAN 资源的残缺列表:
https://github.com/nashory/ga…。下图阐明了 GAN 的模型架构。


生成反抗网络(GAN)

GAN 是生成模型的一种。其余风行的生成模型类型还有 Variation Autoencoder (变分自编码器,VAE)、AutoEncoder(自编码器)和扩散模型等。

7

2017 年:Transformers 和注意力机制

工夫来到 2017 年。ImageNet 挑战赛完结了。新的卷积网络架构也被制作进去。计算机视觉社区的每个人都对以后的停顿感到高兴。外围计算机视觉工作(图像分类、指标检测、图像宰割)不再像以前那样简单。人们能够应用 GAN 生成真切的图像。

NLP 仿佛落后了。然而随后呈现了一些事件,并且在整个网络上都成为了头条新闻:一种齐全基于注意力机制的新神经网络架构横空出世。并且 NLP 再次受到启发,在随后的几年,注意力机制持续主导其余方向(最显著的是视觉)。该架构被称为 Transformer。

在此之后的 5 年,也就是当初,咱们在这里议论一下这个最大的翻新成绩。Transformer 是一类纯正基于注意力机制的神经网络算法。Transformer 不应用循环网络或卷积。它由多头注意力、残差连贯、层归一化、全连贯层和地位编码组成,用于保留数据中的序列程序。下图阐明了 Transformer 架构。


图片来自于《Attention Is All You Need》

Transformer 彻底改变了 NLP,目前它也在扭转着计算机视觉畛域。在 NLP 畛域,它被用于机器翻译、文本摘要、语音辨认、文本补全、文档搜寻等。

读者能够在其论文《Attention is All You Need》中理解无关 Transformer 的更多信息。

8

2018 年至今

自 2017 年以来,深度学习算法、利用和技术突飞猛进。为了分明起见,起初的介绍是按类别划分。在每个类别中,咱们都会从新扫视次要趋势和一些最重要的冲破。

Vision Transformers

Transformer 在 NLP 中体现出优异的性能后不久,一些勇于创新的人就急不可待地将注意力机制用到了图像畛域。在论文《An Image is Worth 16×16 Words: Transformers for Image Recognition at Scale》中,谷歌的几位钻研人员表明,对间接在图像块序列上运行的失常 Transformer 进行轻微批改,就能够在图像分类数据集上产生实质性的后果。他们将这种架构称为 Vision Transformer (ViT),它在大多数计算机视觉基准测试中都有不错体现(在作者撰写本文时,ViT 是 Cifar-10 上最先进的分类模型)。

ViT 设计师并不是第一个尝试在辨认工作中应用注意力机制的人。咱们能够在论文 Attention Augmented Convolutional Networks 中找到第一个应用注意力机制的记录,这篇论文试图联合自注意力机制和卷积(解脱卷积次要是因为 CNN 引入的空间演绎偏置)。

另一个例子见于论文《Visual Transformers: Token-based Image Representation and Processing for Computer Vision,这篇论文在基于滤波器的 token 或视觉 token 上运行 Transformer。

这两篇论文和许多其余未在此处列出的论文冲破了一些基线架构(次要是 ResNet)的界线,但过后并没有超过以后的基准。ViT 的确是最平凡的论文之一。这篇论文最重要的见解之一是 ViT 设计师实际上应用图像 patch 作为输出示意。他们对 Transformer 架构没有太大的扭转。


Vision Transformer(ViT)

除了应用图像 patch 之外,使 Vision Transformer 成为弱小架构的构造是 Transformer 的超强并行性及其缩放行为。但就像生存中的所有一样,没有什么是完满的。一开始,ViT 在视觉上游工作(指标检测和宰割)上体现不佳。

在引入 Swin Transformers 之后,Vision Transformer 开始被用作指标检测和图像宰割等视觉上游工作的骨干网络。Swin Transformer 超强性能的外围亮点是因为在间断的自注意力层之间应用了移位窗口。下图形容了 Swin Transformer 和 Vision Transformer(ViT)在构建分层特色图方面的区别。


图片来自 Swin Transformer 原文

Vision Transformer 始终是近来最令人兴奋的钻研畛域之一。读者能够在论文《Transformers in Vision: A Survey》中理解更多信息。其余最新视觉 Transformer 还有 CrossViT、ConViT 和 SepViT 等。

视觉和语言模型

视觉和语言模型通常被称为多模态。它们是波及视觉和语言的模型,例如文本到图像生成(给定文本,生成与文本形容匹配的图像)、图像字幕(给定图像,生成其形容)和视觉问答(给定一个图像和对于图像中内容的问题,生成答案)。很大水平上,Transformer 在视觉和语言畛域的胜利促成了多模型作为一个繁多的对立网络。

实际上,所有视觉和语言工作都利用了预训练技术。在计算机视觉中,预训练须要对在大型数据集(通常是 ImageNet)上训练的网络进行微调,而在 NLP 中,往往是对预训练的 BERT 进行微调。要理解无关 V-L 工作中预训练的更多信息,请浏览论文《A Survey of Vision-Language Pre-Trained Models》。无关视觉和语言工作、数据集的个别概述,请查看论文《Trends in Integration of Vision and Language Research: A Survey of Tasks, Datasets, and Methods》。

前段时间,OpenAI 公布了 DALL·E 2(改良后的 DALL·E),这是一种能够依据文本生成真切图像的视觉语言模型。现有的文本转图像模型有很多,但 DALL·E 2 的分辨率、图像题目匹配度和真实感都相当杰出。

DALL·E 2 尚未对公众凋谢,以下是 DALL·E 2 创立的一些图像示例。

下面出现的 DALL·E 2 生成的图像取自一些 OpenAI 员工,例如 @sama、@ilyasut、@model_mechanic 和 openaidalle。

大规模语言模型 (LLM)

语言模型有多种用处。它们可用于预测句子中的下一个单词或字符、总结一段文档、将给定文本从一种语言翻译成另一种语言、辨认语音或将一段文本转换为语音。

开玩笑地说,创造 Transformers 的人必须为语言模型在朝着大规模参数化方向后退而受到指摘(但实际上没有人应该受到指责,Transformers 是过来十年中最平凡的创造之一,大模型令人震惊的中央在于:如果给定足够的数据和计算,它总能更好地工作)。在过来的 5 年中,语言模型的大小始终在一直增长。

在引入论文《Attention is all you need》一年后,大规模语言模型开始呈现。2018 年,OpenAI 公布了 GPT(Generative Pre-trained Transformer),这是过后最大的语言模型之一。一年后,OpenAI 公布了 GPT-2,一个领有 15 亿个参数的模型。又一年后,他们公布了 GPT-3,它有 1750 亿个参数,用了 570GB 的 文原本训练。这个模型有 175B 的参数,模型有 700GB。依据 lambdalabs 的说法,如果应用在市场上价格最低的 GPU 云训练 GPT-3,须要 366 年,破费 460 万美元!

GPT-n 系列型号仅仅是个开始。还有其余更大的模型靠近甚至比 GPT-3 更大。如:NVIDIA Megatron-LM 有 8.3B 参数;最新的 DeepMind Gopher 有 280B 参数。2022 年 4 月 12 日,DeepMind 公布了另一个名为 Chinchilla 的 70B 语言模型,只管比 Gopher、GPT-3 和 Megatron-Turing NLG(530B 参数)小,但它的性能优于许多语言模型。Chinchilla 的论文表明,现有的语言模型是训练有余的,具体来说,它表明通过将模型的大小加倍,数据也应该加倍。然而,简直在同一周内又呈现了具备 5400 亿个参数的 Google Pathways 语言模型(PaLM)!


Chinchilla 语言模型

代码生成模型

代码生成是一项波及补全给定代码或依据自然语言或文本生成代码的工作,或者简略地说,它是能够编写计算机程序的人工智能零碎。能够猜到,古代代码生成器是基于 Transformer 的。

能够确定地说,人们曾经开始思考让计算机编写本人的程序了(就像咱们幻想教计算机做的所有其余事件一样),不过代码生成器是在 OpenAI 公布 Codex 后受到关注。

Codex 是在 GitHub 公共仓库和其余公共源代码上微调的 GPT-3。OpenAI 示意:“OpenAI Codex 是一种通用编程模型,这意味着它基本上能够利用于任何编程工作(只管后果可能会有所不同)。咱们曾经胜利地将它用于编译、解释代码和重构代码。但咱们晓得,咱们只涉及了能够做的事件的皮毛。”目前,由 Codex 反对的 GitHub Copilot 扮演着结对程序员的角色。

在我应用 Copilot 后,我对它的性能感到十分诧异。作为不编写 Java 程序的人,我用它来筹备我的挪动应用程序(应用 Java)考试。人工智能帮忙我筹备学术考试真是太酷了!

在 OpenAI 公布 Codex 几个月后,DeepMind 公布了 AlphaCode,这是一种基于 Transformer 的语言模型,能够解决编程比赛问题。AlphaCode 公布的博文称:“AlphaCode 通过解决须要联合批判性思维、逻辑、算法、编码和自然语言了解的新问题,在编程比赛的参与者中预计排名前 54%。”解决编程问题(或个别的竞争性编程)十分艰难(每个做过技术面试的人都批准这一点),正如 Dzmitry 所说,击败“人类程度依然遥遥无期”。

前不久,来自 Meta AI 的科学家公布了 InCoder,这是一种能够生成和编辑程序的生成模型。更多对于代码生成的论文和模型能够在这里找到:

https://paperswithcode.com/ta…

再次回到感知机

在卷积神经网络和 Transformer 衰亡之前的很长一段时间里,深度学习都围绕着感知机开展。ConvNets 在取代 MLP 的各种辨认工作中体现出优异的性能。视觉 Transformer 目前也展现出仿佛是一个很有前途的架构。然而感知机齐全死了吗?答案可能不是。

在 2021 年 7 月,钻研人员发表了两篇基于感知机的论文。一个是 MLP-Mixer: An all-MLP Architecture for Vision,另一个是 Pay Attention to MLPs(gMLP).

MLP-Mixer 宣称卷积和注意力都不是必须的。这篇论文仅应用多层感知机 (MLP),就在图像分类数据集上获得了很高的准确性。MLP-Mixer 的一个重要亮点是,它蕴含两个次要的 MLP 层:一个独立利用于图像块(通道混合),另一个是层跨块利用(空间混合)。

gMLP 还表明,通过防止应用自留神和卷积(以后 NLP 和 CV 的理论应用的形式),能够在不同的图像识别和 NLP 工作中实现很高的准确性。

读者显然不会应用 MLP 去取得最先进的性能,但它们与最先进的深度网络的可比性却是令人着迷的。

再次应用卷积网络:2020 年代的卷积网络

自 Vision Transformer(2020 年)推出以来,计算机视觉的钻研围绕着 Transformer 开展(在 NLP 畛域,Transformer 曾经是一种标准)。Vision Transformer(ViT)在图像分类方面获得了最先进的后果,但在视觉上游工作(对象检测和宰割)中成果不佳。随着 Swin Transformers 的推出,使得 Vision Transformer 很快也接管了视觉上游工作。

很多人(包含我本人)都喜爱卷积神经网络。卷积神经网络的确能起效,而且放弃曾经被证实无效的货色是很难的。这种对深度网络模型构造的酷爱让一些卓越的科学家回到过来,钻研如何使卷积神经网络(精确地说是 ResNet)现代化,使其具备和 Vision Transformer 同样的吸引人的特色。特地是,他们探讨了「Transformers 中的设计决策如何影响卷积神经网络的性能?」这个问题。他们想把那些塑造了 Transformer 的秘诀利用到 ResNet 上。

Meta AI 的 Saining Xie 和他的共事们采纳了他们在论文中明确陈说的路线图,最终造成了一个名为 ConvNeXt 的 ConvNet 架构。ConvNeXt 在不同的基准测试中获得了可与 Swin Transformer 相媲美的后果。读者能够通过 ModernConvNets 库(古代 CNN 架构的总结和实现)理解更多对于他们采纳的路线图。

9

论断

深度学习是一个十分有生机、十分广阔的畛域,很难概括其中所产生的所有。作者只涉及了外表,论文多到一个人读不完,很难跟踪所有内容。例如,咱们没有探讨强化学习和深度学习算法,如 AlphaGo、蛋白质折叠 AlphaFold(这是最大的迷信冲破之一)、深度学习框架的演变(如 TensorFlow 和 PyTorch),以及深度学习硬件。或者,还有其余重要的事件形成了咱们没有探讨过的深度学习历史、算法和应用程序的很大一部分。

作为一个小小的免责申明,读者可能曾经留神到,作者偏差于计算机视觉的深度学习,对其余专门为 NLP 设计的重要深度学习技术作者可能并没有波及。

此外,很难确切地晓得某项特定技术是什么时候发表的,或者是谁最先发表的,因为大多数奇异的货色往往受到前人作品的启发。如有纰漏,读者能够去原文评论区与作者探讨。

本文经受权后公布,原文链接:

https://www.getrevue.co/profi…

欢送下载体验 OneFlow v0.7.0 最新版本:

https://github.com/Oneflow-In…

退出移动版