🔎大家好,我是Sonhhxg_柒,希望你看完之后,能对你有所帮助,不足请指正!共同学习交流🔎
📝个人主页-Sonhhxg_柒的博客_CSDN博客 📃
🎁欢迎各位→点赞👍 + 收藏⭐️ + 留言📝
📣系列专栏 - 机器学习【ML】 自然语言处理【NLP】 深度学习【DL】
🖍foreword
✔说明⇢本人讲解主要包括Python、机器学习(ML)、深度学习(DL)、自然语言处理(NLP)等内容。
如果你对这个系列感兴趣的话,可以关注订阅哟👋
深度学习在科学计算领域广受欢迎,其算法广泛应用于解决复杂问题的行业。所有深度学习算法都使用不同类型的神经网络来执行特定任务。
本文研究了基本的人工神经网络以及深度学习算法如何模拟人脑。
什么是深度学习?
深度学习使用人工神经网络对大量数据执行复杂的计算。它是一种基于人脑结构和功能的 机器学习。
深度学习算法通过从示例中学习来训练机器。医疗保健、电子商务、娱乐和广告等行业普遍使用深度学习。
定义神经网络
神经网络的结构类似于人脑,由人工神经元(也称为节点)组成。这些节点在三层中彼此相邻堆叠:
- 输入层
- 隐藏层
- 输出层
数据以输入的形式为每个节点提供信息。该节点将输入与随机权重相乘,计算它们,并添加偏差。最后,应用非线性函数(也称为激活函数)来确定激活哪个神经元。
深度学习算法如何工作?
虽然深度学习算法具有自我学习表示的特点,但它们依赖于反映大脑计算信息方式的人工神经网络。在训练过程中,算法使用输入分布中的未知元素来提取特征、对对象进行分组并发现有用的数据模式。就像用于自学的训练机器一样,这发生在多个级别,使用算法来构建模型。
深度学习模型使用多种算法。虽然没有一个网络被认为是完美的,但一些算法更适合执行特定任务。要选择正确的算法,最好对所有主要算法都有深入的了解。
深度学习中使用的算法类型
以下是 10 大最受欢迎的深度学习算法的列表:
- 卷积神经网络 (CNN)
- 长短期记忆网络 (LSTM)
- 循环神经网络 (RNN)
- 生成对抗网络 (GAN)
- 径向基函数网络 (RBFN)
- 多层感知器 (MLP)
- 自组织图 (SOM)
- 深度信念网络 (DBN)
- 受限玻尔兹曼机 (RBM)
- 自编码器(AutoEncoding)
深度学习算法几乎可以处理任何类型的数据,并且需要大量的计算能力和信息来解决复杂的问题。现在,让我们深入探讨 10 大深度学习算法。
1. 卷积神经网络 (CNN)
CNN也称为 ConvNets,由多层组成,主要用于图像处理和对象检测。Yann LeCun 在 1988 年开发了第一个 CNN,当时它被称为 LeNet。它用于识别邮政编码和数字等字符。
CNN 广泛用于识别卫星图像、处理医学图像、预测时间序列和检测异常。
CNN 如何工作?
CNN 有多层处理数据并从中提取特征:
卷积层
- CNN 有一个卷积层,它有几个过滤器来执行卷积操作。
整流线性单元 (ReLU)
- CNN 有一个 ReLU 层来对元素执行操作。输出是修正后的特征图。
池化层
- 修正后的特征图接下来被送入池化层。池化是一种降低特征图维度的下采样操作。
- 然后,池化层通过展平将池化特征图生成的二维数组转换为单个长的、连续的线性向量。
全连接层
- 当来自池化层的展平矩阵作为输入馈送时,形成一个完全连接的层,对图像进行分类和识别。
下面是通过 CNN 处理的图像示例。
2. 长短期记忆网络 (LSTM)
LSTM 是一种循环神经网络 (RNN),可以学习和记忆长期依赖关系。长时间回忆过去的信息是默认行为。
LSTM 随着时间的推移保留信息。它们在时间序列预测中很有用,因为它们会记住以前的输入。LSTM 具有链状结构,其中四个交互层以独特的方式进行通信。除了时间序列预测,LSTM 通常用于语音识别、音乐创作和药物开发。
LSTM 如何工作?
- 首先,他们忘记了先前状态的不相关部分
- 接下来,他们有选择地更新细胞状态值
- 最后输出某些部分的cell state
下图展示了 LSTM 的运作方式:
3. 循环神经网络 (RNN)
RNN具有形成定向循环的连接,这允许将 LSTM 的输出作为输入馈送到当前阶段。
LSTM 的输出成为当前阶段的输入,并且由于其内部存储器可以记住以前的输入。RNN 通常用于图像字幕、时间序列分析、自然语言处理、手写识别和机器翻译。
展开的 RNN 如下所示:
RNN 是如何工作的?
- 时间 t-1 的输出馈入时间 t 的输入。
- 类似地,时间 t 的输出馈入时间 t+1 的输入。
- RNN 可以处理任何长度的输入。
- 计算考虑了历史信息,模型大小不会随着输入大小的增加而增加。
以下是 Google 自动完成功能工作原理的示例:
4. 生成对抗网络 (GAN)
GAN是生成式深度学习算法,可创建类似于训练数据的新数据实例。GAN 有两个组成部分:一个生成器,它学习生成虚假数据;一个鉴别器,它从虚假信息中学习。
GAN 的使用在一段时间内有所增加。它们可用于改善天文图像和模拟暗物质研究的引力透镜。视频游戏开发人员使用 GAN 来升级旧视频游戏中的低分辨率 2D 纹理,方法是通过图像训练以 4K 或更高分辨率重新创建它们。
GAN 有助于生成逼真的图像和卡通人物、创建人脸照片以及渲染 3D 对象。
GAN 是如何工作的?
- 鉴别器学习区分生成器的假数据和真实样本数据。
- 在初始训练期间,生成器生成假数据,而鉴别器很快学会分辨它是假的。
- GAN 将结果发送给生成器和鉴别器以更新模型。
下图展示了 GAN 的运作方式:
5. 径向基函数网络 (RBFN)
RBFN 是特殊类型的前馈神经网络,它使用径向基函数作为激活函数。它们有一个输入层、一个隐藏层和一个输出层,主要用于分类、回归和时间序列预测。
RBFN 如何工作?
- RBFN 通过测量输入与训练集中示例的相似性来执行分类。
- RBFN 有一个馈送到输入层的输入向量。它们有一层 RBF 神经元。
- 该函数找到输入的加权和,输出层每个类别或数据类别有一个节点。
- 隐藏层中的神经元包含高斯传递函数,其输出与神经元中心的距离成反比。
- 网络的输出是输入的径向基函数和神经元参数的线性组合。
请参阅此 RBFN 示例:
6. 多层感知器 (MLP)
MLP是开始学习深度学习技术的绝佳场所。
MLP 属于前馈神经网络类别,具有多层具有激活功能的感知器。MLP 由全连接的输入层和输出层组成。它们具有相同数量的输入和输出层,但可能有多个隐藏层,可用于构建语音识别、图像识别和机器翻译软件。
MLP 如何运作?
- MLP 将数据馈送到网络的输入层。神经元层以图形方式连接,以便信号沿一个方向传递。
- MLP 使用存在于输入层和隐藏层之间的权重计算输入。
- MLP 使用激活函数来确定触发哪些节点。激活函数包括 ReLU、S 型函数和 tanh。
- MLP 训练模型以了解相关性并从训练数据集中学习独立变量和目标变量之间的依赖关系。
下面是一个 MLP 的例子。该图计算权重和偏差,并应用合适的激活函数对猫和狗的图像进行分类。
7. 自组织图 (SOM)
Teuvo Kohonen 教授发明了 SOM,它通过自组织人工神经网络 实现数据可视化以降低数据维度。
数据可视化试图解决人类无法轻易将高维数据可视化的问题。创建 SOM 是为了帮助用户理解这种高维信息。
SOM 如何运作?
- SOM 为每个节点初始化权重,并从训练数据中随机选择一个向量。
- SOM 检查每个节点以找出哪些权重最有可能是输入向量。获胜的节点称为最佳匹配单元 (BMU)。
- SOM 会发现 BMU 的邻域,并且邻域的数量会随着时间的推移而减少。
- SOM 将获胜权重授予样本向量。节点离 BMU 越近,其权重变化越大。
- 邻居离 BMU 越远,它学到的越少。SOM 重复第二步进行 N 次迭代。
下面是不同颜色的输入向量图。此数据馈送到 SOM,然后将数据转换为 2D RGB 值。最后,它对不同的颜色进行分离和分类。
8.深度信念网络(DBN)
DBN 是由多层随机潜在变量组成的生成模型。潜在变量具有二进制值,通常称为隐藏单元。
DBN 是一堆玻尔兹曼机,层与层之间有连接,每个 RBM 层都与前一层和后一层进行通信。深度信念网络 (DBN) 用于图像识别、视频识别和动作捕捉数据。
DBN 是如何工作的?
- 贪婪学习算法训练 DBN。贪心学习算法使用逐层方法来学习自上而下的生成权重。
- DBN 在顶部两个隐藏层上运行 Gibbs 采样步骤。此阶段从顶部两个隐藏层定义的 RBM 中抽取样本。
- DBN 使用通过模型其余部分的单次祖先采样从可见单元中抽取样本。
- DBN 了解到每一层中的潜在变量的值都可以通过一次自下而上的传递来推断。
下面是一个 DBN 架构的例子:
9. 受限玻尔兹曼机 (RBM)
RBM 由 Geoffrey Hinton 开发,是一种随机神经网络,可以从一组输入的概率分布中学习。
这种深度学习算法用于降维、分类、回归、协同过滤、特征学习和主题建模。RBM 构成了 DBN 的构建块。
RBM 由两层组成:
- 可见单位
- 隐藏单位
每个可见单元都连接到所有隐藏单元。RBM 有一个连接到所有可见单元和隐藏单元的偏置单元,并且它们没有输出节点。
RBM 如何运作?
RBM 有两个阶段:正向传递和反向传递。
- RBM 接受输入并将它们转换为一组数字,这些数字在前向传递中对输入进行编码。
- RBM 将每个输入与单独的权重和一个整体偏差结合起来。该算法将输出传递给隐藏层。
- 在向后传递中,RBM 获取该组数字并将它们转换为重构输入。
- RBM 将每个激活与个体权重和整体偏差结合起来,并将输出传递给可见层进行重建。
- 在可见层,RBM 将重建与原始输入进行比较,以分析结果的质量。
下图是 RBM 如何运作的图表:
10.自动编码器(AutoEncoding)
自动编码器是一种特定类型的前馈神经网络,其中输入和输出相同。Geoffrey Hinton 在 1980 年代设计了自动编码器来解决无监督学习问题。它们是训练有素的神经网络,可将数据从输入层复制到输出层。自动编码器用于药物发现、流行度预测和图像处理等目的。
自动编码器如何工作?
自动编码器由三个主要组件组成:编码器、代码和解码器。
- 自动编码器的结构是接收输入并将其转换为不同的表示形式。然后他们尝试尽可能准确地重建原始输入。
- 当数字图像不清晰可见时,它会馈送到自动编码器神经网络。
- 自动编码器首先对图像进行编码,然后将输入的大小缩小为更小的表示。
- 最后,自动编码器对图像进行解码以生成重建图像。
下图演示了自动编码器的操作方式:
结论
深度学习在过去五年中得到了发展,深度学习算法已在许多行业中广泛流行。
常见问题
Q1. 哪种算法在深度学习中最好?
多层感知器 (MLP) 是最好的深度学习算法。它是几个社交媒体网站(包括 Instagram 和 Meta)使用的最古老的深度学习技术之一。这有助于在弱网络中加载图像,辅助数据压缩,并且通常用于速度和图像识别应用程序。
Q2. 哪个是深度学习算法的示例?
许多深度学习算法中的一些包括径向函数网络、多层感知器、自组织映射、卷积神经网络等等。这些算法包括受人脑神经元功能启发的架构。
Q3. CNN是深度学习算法吗?
是的,CNN 是一种深度学习算法,负责以网格模式的形式处理受动物视觉皮层启发的图像。这些旨在自动检测和分割特定对象,并学习从低级到高级模式的空间层次结构。
Q4. 深度学习的三层是什么?
三层神经网络由三层组成——输入层、隐藏层和输出层。当输入数据应用于输入层时,得到输出层的输出数据。隐藏层负责执行所有计算和“隐藏”任务。
Q5. 深度学习模型如何工作?
深度学习模型使用神经网络架构或一组包含多层的标记数据进行训练。它们有时会超过人类水平的表现。这些架构直接从数据中学习特征,而不会妨碍手动特征提取。
Q6. 哪些是最好的深度学习算法?
无论您是初学者还是专业人士,这三大深度学习算法都将帮助您解决与深度学习相关的复杂问题:CNN 或卷积神经网络、LSTM 或长短期记忆网络和 RNN 或递归神经网络 (RNN)。
版权归原作者 Sonhhxg_柒 所有, 如有侵权,请联系我们删除。