六种神经网络体系介绍

在这篇文章中,我们将介绍在AI研究中每个人都应该熟悉的六种神经网络体系结构。

常见的神经网络简介

神经网络在今天已经变得非常流行,但是对它们的理解仍然很匮乏。 首先,我们已经看到很多人无法识别各种类型的神经网络及其解决的问题,更不用说对它们进行区分了。 其次,某种程度上甚至更糟的是,人们在谈论任何神经网络时不加区分地使用“深度学习”一词。

1.前馈神经网络(Feed-Forward Neural Network)

这是神经网络的最基本类型,主要是由于技术的进步而来的,这使我们能够添加更多的隐藏层而不必担心太多的计算时间。 由于Geoff Hinton在1990年发现了反向传播算法,它也变得很流行。

这种类型的神经网络基本上由一个输入层,多个隐藏层和一个输出层组成。 没有循环,信息只会向前流动。 前馈神经网络通常也适用于数字数据的监督学习,尽管它也有缺点:

  • 它不能与顺序数据一起使用;
  • 它不适用于图像数据,因为此模型的性能严重依赖于功能,而手动查找图像或文本数据的功能本身就非常困难。

这将我们带入神经网络的下两类:卷积神经网络(Convolutional Neural Networks)和递归神经网络(Recurrent Neural Networks)。

2.卷积神经网络(CNN)

在CNN流行之前,人们有很多算法用于图像分类。 人们过去常常根据图像创建特征,然后将这些特征输入到诸如SVM之类的分类算法中。一些算法也将图像的像素水平值用作特征向量。

举个例子,您可以训练具有784个特征的SVM,其中每个特征都是28x28图像的像素值。

那么,为什么要使用CNN,为什么它们的效果要好得多?

可以将CNN视为图像的自动特征提取器。 虽然如果我使用带有像素矢量的算法,则会丢失很多像素之间的空间交互关系,而CNN会有效地使用相邻像素信息来首先通过卷积有效地对图像进行下采样,然后在最后使用预测层。

CNN图像采集示意图
CNN图像采集示意图

Yann le cun于1998年首次提出了这一概念,用于数字分类,其中他使用单个卷积层来预测数字。 后来在2012年被Alexnet推广,它使用多个卷积层在Imagenet上实现了最新的预测。 因此,使它们成为图像分类的首选算法。

随着时间的流逝,在这个特定领域取得了各种进步,研究人员为CNN提出了各种架构,例如VGG,Resnet,Inception,Xception等,这些架构不断地推动了图像分类的发展。

CNN物体及边框检测
CNN物体及边框检测

相反,CNN也用于物体检测,这可能是一个问题,因为除了对图像进行分类之外,我们还希望检测图像中各个对象周围的边界框。

过去,研究人员提出了许多架构,例如YOLO,RetinaNet,Faster RCNN等,以解决对象检测问题,所有这些架构都使用CNN作为其架构的一部分。

3.递归神经网络(LSTM/GRU/Attention)

CNN对图像的含义,递归神经网络对文本的含义。 RNN可以帮助我们学习文本的顺序结构,其中每个单词都取决于前一个单词或前一个句子中的一个单词。

为了简单地解释RNN,可以将RNN单元视为一个黑盒,将一个隐藏状态(一个向量)和一个单词向量作为输入,并给出一个输出向量和下一个隐藏状态。 此盒具有一些权重,需要使用损失的反向传播进行调整。 同样,将相同的单元格应用于所有单词,以便在句子中的单词之间共享权重。 这种现象称为重量共享。

RNN黑盒模型
RNN黑盒模型

以下是同一RNN单元的扩展版本,其中每个RNN单元在每个单词令牌上运行,并将隐藏状态传递给下一个单元。 对于长度为4的序列(例如“棕色狐狸”),RNN单元最终给出4个输出向量,可以将它们连接起来,然后用作密集前馈体系结构的一部分,如下所示,以解决最终任务语言建模或分类任务:

RNN单元扩展
RNN单元扩展

长期短期记忆网络(LSTM)门控循环单元(GRU)是RNN的子类,专门通过引入各种门来增加时间记忆信息(也称为消失梯度问题),这些门通过添加或删除信息来调节细胞状态 从中。

从非常高的角度来看,您可以将LSTM/GRU理解为RNN单元的一种玩法,以了解长期依赖性。 RNN/ LSTM/GRU主要用于各种语言建模任务,其中目标是在给定输入单词流的情况下预测下一个单词,或用于具有顺序模式的任务。如果您想学习如何使用RNN进行文本分类任务,请看一下这篇文章。

接下来我们要提到的是基于注意力的模型,但是我们这里只讨论直觉,因为深入研究这些模型可以得到相当的技术性(如果感兴趣,可以看一下这篇文章)。过去,传统的方法(如TFIDF/ CountVectorizer等)用于通过提取关键字来从文本中查找特征。有些单词比另一些单词更有助于确定文本的类别。但是,在这种方法中,我们有点丢失了文本的顺序结构。使用LSTM和深度学习方法,我们可以照顾序列的结构,但是我们失去了为更重要的单词赋予更高权重的能力。我们能兼得两全其美吗?答案是肯定的。实际上,注意力就是您所需要的。用作者的话说:

“并非所有单词都对句子含义的表达做出同等的贡献。因此,我们引入了一种注意机制,以提取对句子含义很重要的单词,并汇总这些信息单词的表达以形成句子向量。”

4.Transformers

Transformers已成为任何自然语言处理(NLP)任务的事实上的标准,最近推出的GPT-3是迄今为止最大的。

过去,LSTM和GRU体系结构以及关注机制曾经是语言建模问题和翻译系统的最先进方法。这些架构的主要问题是它们本质上是递归的,并且运行时间随着序列长度的增加而增加。也就是说,这些体系结构采用一个句子并以顺序的方式处理每个单词,因此当句子长度增加时,整个运行时也会增加。

Transformer是本文首先解释的模型体系结构,它可以避免这种重复发生,而是完全依赖于Attention机制来绘制输入和输出之间的全局依存关系。这使得它可以更快,更准确地成为解决NLP域中各种问题的首选架构。

5.生成对抗网络(GAN)

GAN生成人脸图像
GAN生成人脸图像

数据科学领域的人们最近看到了很多AI产生的人们,无论是在论文,博客还是视频中。我们已经达到了区分实际的人脸和由人工智能生成的人脸的难度越来越大的阶段。而所有这些都是通过GAN实现的。 GAN最有可能改变我们制作视频游戏和特效的方式。使用这种方法,您可以按需创建逼真的纹理或角色,从而开辟了无限的可能性。

GAN通常使用两个决斗神经网络来训练计算机,以充分了解数据集的性质,以产生令人信服的假货。这些神经网络之一生成伪造品(生成器),另一个尝试对哪些图像伪造进行分类(鉴别器)。通过相互竞争,这些网络会随着时间的推移而不断改进。

也许最好将发电机想象成强盗,将歧视者想象成警察。强盗偷窃的次数越多,他越能偷东西。同时,警察在抓小偷方面也做得更好。

这些神经网络中的损耗主要取决于另一个网络的性能:

  • 鉴别器网络丢失是生成器网络质量的函数:如果鉴别器被生成器的虚假图像所欺骗,那么丢失率很高。
  • 发电机网络损耗是鉴别器网络质量的函数:如果发电机无法欺骗鉴别器,则损耗很高。

在训练阶段,我们将依次训练鉴别器和发生器网络,以期提高两者的性能。 最终目标是获得权重,以帮助生成器创建逼真的图像。 最后,我们将使用生成器神经网络从随机噪声生成高质量的伪造图像。

6.自动编码器(Autoencoders)

自动编码器是深度学习功能,可近似表示从X到X的映射,即input = output。 他们首先将输入要素压缩为低维表示形式,然后从该表示形式重构输出。

编码解码示意图
编码解码示意图

在很多地方,该表示向量可以用作模型特征,因此可以用于降维。

自动编码器也用于异常检测,在这种情况下,我们尝试使用我们的自动编码器来重建示例,如果重建损失过高,我们可以预测该示例是异常的。

总结

神经网络本质上是有史以来最伟大的模型之一,并且在我们可以想到的大多数建模用例中都很好地概括了神经网络。

如今,这些不同版本的神经网络被用于解决医疗,银行和汽车行业等领域的各种重要问题,并且被苹果,谷歌和Facebook等大公司用来提供建议和帮助进行搜索查询 。 例如,谷歌使用BERT(一种基于Transformers的模型)为其搜索查询提供动力。

SO资源郑重声明:
1. 本站所有资源来源于用户上传和网络,因此不包含技术服务请大家谅解!如有侵权请邮件联系客服!3187589@qq.com
2. 本站不保证所提供下载的资源的准确性、安全性和完整性,资源仅供下载学习之用!如有链接无法下载、失效或广告,请联系客服处理,有奖励!
3. 您必须在下载后的24个小时之内,从您的电脑中彻底删除上述内容资源!如用于商业或者非法用途,与本站无关,一切后果请用户自负!

SO资源 » 六种神经网络体系介绍