深度学习在科学计算领域得到了广泛的应用,其算法被解决复杂问题的行业广泛使用。所有的深度学习算法都使用不同类型的神经网络来执行特定的任务。本文为大家带来基本的人工神经网络和深度学习算法,并简单讲解它们如何模拟人脑工作。
深度学习是使用人工神经网络对大量数据进行复杂的计算。
它是一种基于人脑结构和功能的机器学习。
深度学习算法是通过从实例中学习来训练机器。
医疗保健、电子商务、娱乐和广告等行业通常使用深度学习。
Neural.NETworks,简称NN。针对机器学习算法需要领域专家进行特征工程,模型泛化性能差的问题,提出了NN可以从数据的原始特征学习特征表示,无需进行复杂的特征处理。
神经网络的结构类似于人脑,由人工神经元组成,也称为节点。这些节点分为三层并排堆放:
数据以输入的形式为每个节点提供信息。该节点将输入与随机权重相乘,计算它们,并添加一个偏差。最后,非线性函数,也称为激活函数,被用来确定哪个神经元激活。
其原理可以使用线性回归理解:y = W x + b y=Wx+by=Wx+b
虽然深度学习算法的特点是自学习表示,但它们依赖于反映大脑计算信息方式的神经网络。在训练过程中,算法使用输入分布中的未知元素来提取特征、分组对象并发现有用的数据模式。就像自学习的训练机器一样,这在多个层次上发生,使用算法来建立模型。
深度学习模型使用了多种算法。虽然没有一个网络被认为是完美的,但是一些算法适合执行特定的任务。为了选择正确的算法,最好对所有的主要算法有一个扎实的了解。
Convolutional Neural Networks (卷积神经网络CNNs)
Long Short Term Memory Networks (长短期记忆网络LSTMs)
Recurrent Neural Networks (递归神经网络RNNs)
Generative Adversarial Networks (生成对抗网络GANs)
Radial Basis Function Networks (径向基函数网络RBFNs)
Multilayer Perceptrons (多层感知机MLPs)
Self Organizing Maps (自组织映射神经网络SOMs)
Deep Belief Networks (深度信念网络DBNs)
Restricted Boltzmann machines( 受限玻尔兹曼机RBMs)
Autoencoders(自动编码器)
深度学习算法可以处理几乎任何类型的数据,并且需要大量的计算能力和信息来解决复杂的问题。现在,让我们深入研究一下排名前十的深度学习算法。
卷积神经网络Convolutional Neural Networks, 简称CNN。
CNN也被称为康维网,由多层组成,主要用于图像处理和目标检测。杨 · 乐村在1988年发明了第一台 CNN,当时它被称为乐网。它被用来识别像邮政编码和数字这样的字符。
CNN 广泛应用于识别卫星图像、处理医学图像、预测时间序列和检测异常。
CNN 有多个层次,从数据中处理和提取特征:
卷积层
有线电视新闻网有一个卷积层,有几个过滤器执行卷积操作。
整流线性单元
CNN 有一个 ReLU 层来执行对元素的操作。输出是一个校正的特征映射。
共用层
经过修正的特性映射接下来被提供到一个池层。池是一种减少特征映射维度的下采样操作。
然后,汇聚层通过平坦化将汇聚的特征映射得到的二维数组转换为单个、长的、连续的线性向量。
完全连接层
当来自池层的平坦矩阵作为输入时,形成一个完全连通的层,它对图像进行分类和识别。
下面是一个通过 CNN 处理的图像的例子。
LSTM 是一种递归神经网络(RNN) ,可以学习和记忆长期的依赖关系。长时间回忆过去的信息是默认行为。
LSTM 随着时间的推移保留信息。它们在时间序列预测中很有用,因为它们记得以前的输入。LSTM 具有链状结构,其中四个相互作用的层以独特的方式进行通信。除了时间序列预测,LSTM 通常用于语音识别、音乐创作和药物开发。
下面是 LSTM 如何运作的示意图:
RNN 具有形成定向循环的连接,这允许将 LSTM 的输出作为输入馈入到当前阶段。
LSTM 的输出成为当前阶段的输入,并且由于其内部存储器,可以记忆以前的输入。RNN 通常用于图像字幕、时间序列分析、自然语言处理、手写识别和机器翻译。
展开的 RNN 看起来像这样:
下面是谷歌自动完成功能的一个例子:
GAN 是生成式深度学习算法,它创建类似于训练数据的新数据实例。GAN 有两个组成部分: 一个生成器,学习生成虚假数据,一个鉴别器,学习从虚假信息。
GAN 的使用在一段时间内有所增加。它们可以用来改善天文图像和模拟暗物质研究的引力透镜效应。视频游戏开发者通过图像训练,以4K 或更高的分辨率重新创建低分辨率、2D 纹理的旧视频游戏,使用 GAN 来提升它们的分辨率。
GAN 有助于生成逼真的图像和卡通人物,创建人脸照片,并渲染3D 物体。
下面是 GAN 如何运作的示意图:
RBFN 是一种特殊类型的前馈神经网络,它使用径向基函数作为激活函数。它们有一个输入层、一个隐藏层和一个输出层,主要用于分类、回归和时间序列预测。
看看这个 RBFN 的例子:
MLP 是开始学习深度学习技术的绝佳场所。
MLP 属于具有多层感知器的前馈神经网络,具有激活功能。MLP 由完全连接的输入层和输出层组成。它们具有相同数量的输入和输出层,但可能有多个隐藏层,可用于构建语音识别、图像识别和机器翻译软件。
下面是 MLP 的一个例子。该图计算权重和偏差,并应用适当的激活函数来分类猫和狗的图像。
特沃•科霍宁教授发明了自组织映射神经网络,使数据可视化能够通过自组织的人工神经网络来减少数据的维数。
数据可视化试图解决人类无法轻易将高维数据可视化的问题。SOM 的创建是为了帮助用户理解这些高维信息。
下面,请看一个不同颜色的输入向量的示意图。这些数据提供给 SOM,然后 SOM 将数据转换为2D RGB 值。最后,它分离和分类不同的颜色。
DBN 是由多层随机潜变量组成的生成模型。潜变量具有二进制值,通常称为隐藏单位。
DBN 是一组 Boltzmann 机器,它们在各层之间建立连接,每个 RBM 层与前面的层和后面的层进行通信。深度信任网络(DBN)用于图像识别、视频识别和运动捕捉数据。
下面是 DBN 体系结构的一个示例:
由 Geoffrey Hinton 开发的 RBM 是一种随机神经网络,可以从一组输入的概率分布中学习。
这种深度学习算法用于降维、分类、回归、协同过滤、特征学习和主题建模。RBM构成了 DBN 的组成部分。
每个可见单元都连接到所有隐藏单元。RBM 有一个连接到所有可见单元和隐藏单元的偏置单元,它们没有输出节点。
RBM有两个阶段: 前向传递和后向传递。
以下是RBM如何运作图表:
自动编码器是一种特殊类型的前馈神经网络,其输入和输出是相同的。杰弗里•辛顿(Geoffrey Hinton)在上世纪80年代设计了自动编码器,以解决非监督式学习问题。它们是经过训练的神经网络,将数据从输入层复制到输出层。自动编码器用于药物发现、流行预测和图像处理等目的。
自动编码器由三个主要部分组成: 编码器、代码和解码器。
下图演示了自动编码器的工作方式:
深度学习在过去的五年中得到了发展,深度学习算法在许多行业中广泛流行。以下是常见的问答交流环节。
多层感知器(MLPs)是最好的深度学习算法。这是一个最古老的深度学习技术使用的几个社会媒体网站,包括 Instagram 和 Meta。这有助于在弱网络中加载图像,辅助数据压缩,并经常用于速度和图像识别应用程序。
一些许多深度学习算法包括径向函数网络,多层感知器,自组织映射,卷积神经网络等等。这些算法包括受人类大脑神经元功能启发的结构。
是的,CNN 是一个深度学习算法,负责处理动物视觉皮层启发的图像在网格模式的形式。它们被设计用于自动检测和分割特定对象,并从低层到高层模式学习特征的空间层次结构。
该神经网络由输入层、隐层和输出层三层组成。当输入数据应用于输入层时,获得输出层中的输出数据。隐藏层负责执行所有的计算和“隐藏”任务。
深度学习模型使用神经网络结构或一组包含多层的标记数据进行训练。它们有时超过人类水平的表现。这些体系结构直接从数据中学习特征,而不受手工特征提取的阻碍。
无论你是初学者还是专业人士,这三个最好的深度学习算法将帮助你解决与深度学习有关的复杂问题: CNN 或卷积神经网络,LSTM 或长短期记忆网络和 RNN 或回归神经网络(RNN)。