10大最受欢迎的深度学习算法

深度学习在科学计算领域广受欢迎,其算法广泛应用于解决复杂问题的行业。所有深度学习算法都使用不同类型的神经网络来执行特定任务。

本文研究了基本的人工神经网络以及深度学习算法如何模拟人脑。

什么是深度学习

深度学习(Deep Learning, 简称DL)是一种基于人工神经网络的机器学习算法,其核心在于通过多层神经网络结构,自动地从数据中学习并提取特征,进而进行预测、分类或生成等任务。

这种学习方式使得计算机能够模仿人类的思考过程,从而在处理复杂任务时表现出更高的智能水平。

定义神经网络

神经网络的结构类似于人脑,由人工神经元(也称为节点)组成。这些节点在三层中彼此相邻堆叠:

  • 输入层
  • 隐藏层
  • 输出层

数据以输入的形式为每个节点提供信息。该节点将输入与随机权重相乘,计算它们,并添加偏差。最后,应用非线性函数(也称为激活函数)来确定激活哪个神经元。

深度学习算法如何工作

虽然深度学习算法具有自我学习表示的特点,但它们依赖于反映大脑计算信息方式的人工神经网络。在训练过程中,算法使用输入分布中的未知元素来提取特征、对对象进行分组并发现有用的数据模式。就像用于自学的训练机器一样,这发生在多个级别,使用算法来构建模型。

随着人工神经网络的应用,深度学习算法训练机器在大量数据上进行复杂的计算。深度学习算法可以让机器能够像人脑那样进行工作和处理数据,并高度依赖于人工神经网络,并基于人脑的结构-功能而工作。以下是十大值得关注的深度学习算法,希望能对你有所参考

以下是 10 大最受欢迎的深度学习算法的列表:

  1. 卷积神经网络 (CNN)
  2. 长短期记忆网络 (LSTM)
  3. 循环神经网络 (RNN)
  4. 生成对抗网络 (GAN)
  5. 径向基函数网络 (RBFN)
  6. 多层感知器 (MLP)
  7. 自组织图 (SOM)
  8. 深度信念网络 (DBN)
  9. 受限玻尔兹曼机 (RBM)
  10. 自编码器(AutoEncoding)

卷积神经网络CNN

CNN也称为 ConvNets,由多层组成,主要用于图像处理和对象检测。Yann LeCun 在 1988 年开发了第一个 CNN,当时它被称为 LeNet。它用于识别邮政编码和数字等字符。

CNN 广泛用于识别卫星图像、处理医学图像、预测时间序列和检测异常。

CNN 如何工作?CNN 有多层处理数据并从中提取特征:

  • 卷积层:CNN 有一个卷积层,它有几个过滤器来执行卷积操作。

  • 整流线性单元 (ReLU):CNN 有一个 ReLU 层来对元素执行操作。输出是修正后的特征图。

  • 池化层:修正后的特征图接下来被送入池化层。池化是一种降低特征图维度的下采样操作。然后,池化层通过展平将池化特征图生成的二维数组转换为单个长的、连续的线性向量。

  • 全连接层:当来自池化层的展平矩阵作为输入馈送时,形成一个完全连接的层,对图像进行分类和识别。

下面是通过 CNN 处理的图像示例:

长短期记忆网络 (LSTM)

LSTM 是一种循环神经网络 (RNN),可以学习和记忆长期依赖关系。长时间回忆过去的信息是默认行为。

LSTM 随着时间的推移保留信息。它们在时间序列预测中很有用,因为它们会记住以前的输入。LSTM 具有链状结构,其中四个交互层以独特的方式进行通信。除了时间序列预测,LSTM 通常用于语音识别、音乐创作和药物开发。

LSTM 如何工作?

  • 首先,他们忘记了先前状态的不相关部分
  • 接下来,他们有选择地更新细胞状态值
  • 最后输出某些部分的cell state

下图展示了 LSTM 的运作方式:

循环神经网络RNN

RNN具有形成定向循环的连接,这允许将 LSTM 的输出作为输入馈送到当前阶段。

LSTM 的输出成为当前阶段的输入,并且由于其内部存储器可以记住以前的输入。RNN 通常用于图像字幕、时间序列分析、自然语言处理、手写识别和机器翻译。

展开的 RNN 如下所示:

RNN 是如何工作的?

  • 时间 t-1 的输出馈入时间 t 的输入。
  • 类似地,时间 t 的输出馈入时间 t+1 的输入。
  • RNN 可以处理任何长度的输入。
  • 计算考虑了历史信息,模型大小不会随着输入大小的增加而增加。

以下是 Google 自动完成功能工作原理的示例:

生成对抗网络 (GAN)

GAN是生成式深度学习算法,可创建类似于训练数据的新数据实例。GAN 有两个组成部分:一个生成器,它学习生成虚假数据;一个鉴别器,它从虚假信息中学习。

GAN 的使用在一段时间内有所增加。它们可用于改善天文图像和模拟暗物质研究的引力透镜。视频游戏开发人员使用 GAN 来升级旧视频游戏中的低分辨率 2D 纹理,方法是通过图像训练以 4K 或更高分辨率重新创建它们。

GAN 有助于生成逼真的图像和卡通人物、创建人脸照片以及渲染 3D 对象。

GAN 是如何工作的?

  • 鉴别器学习区分生成器的假数据和真实样本数据。

  • 在初始训练期间,生成器生成假数据,而鉴别器很快学会分辨它是假的。

  • GAN 将结果发送给生成器和鉴别器以更新模型。

下图展示了 GAN 的运作方式:

径向基函数网络 (RBFN)

RBFN 是特殊类型的前馈神经网络,它使用径向基函数作为激活函数。它们有一个输入层、一个隐藏层和一个输出层,主要用于分类、回归和时间序列预测。

RBFN 如何工作?

  • RBFN 通过测量输入与训练集中示例的相似性来执行分类。
  • RBFN 有一个馈送到输入层的输入向量。它们有一层 RBF 神经元。
  • 该函数找到输入的加权和,输出层每个类别或数据类别有一个节点。
  • 隐藏层中的神经元包含高斯传递函数,其输出与神经元中心的距离成反比。
  • 网络的输出是输入的径向基函数和神经元参数的线性组合。

请参阅此 RBFN 示例:

多层感知器 (MLP)

MLP是开始学习深度学习技术的绝佳场所。

MLP 属于前馈神经网络类别,具有多层具有激活功能的感知器。MLP 由全连接的输入层和输出层组成。它们具有相同数量的输入和输出层,但可能有多个隐藏层,可用于构建语音识别、图像识别和机器翻译软件。

MLP 如何运作?

  • MLP 将数据馈送到网络的输入层。神经元层以图形方式连接,以便信号沿一个方向传递。
  • MLP 使用存在于输入层和隐藏层之间的权重计算输入。
  • MLP 使用激活函数来确定触发哪些节点。激活函数包括 ReLU、S 型函数和 tanh。
  • MLP 训练模型以了解相关性并从训练数据集中学习独立变量和目标变量之间的依赖关系。

下面是一个 MLP 的例子。该图计算权重和偏差,并应用合适的激活函数对猫和狗的图像进行分类。

自组织图 (SOM)

Teuvo Kohonen 教授发明了 SOM,它通过自组织人工神经网络 实现数据可视化以降低数据维度。

数据可视化试图解决人类无法轻易将高维数据可视化的问题。创建 SOM 是为了帮助用户理解这种高维信息。

SOM 如何运作?

  • SOM 为每个节点初始化权重,并从训练数据中随机选择一个向量。
  • SOM 检查每个节点以找出哪些权重最有可能是输入向量。获胜的节点称为最佳匹配单元 (BMU)。
  • SOM 会发现 BMU 的邻域,并且邻域的数量会随着时间的推移而减少。
  • SOM 将获胜权重授予样本向量。节点离 BMU 越近,其权重变化越大。
  • 邻居离 BMU 越远,它学到的越少。SOM 重复第二步进行 N 次迭代。

下面是不同颜色的输入向量图。此数据馈送到 SOM,然后将数据转换为 2D RGB 值。最后,它对不同的颜色进行分离和分类。

深度信念网络(DBN)

DBN 是由多层随机潜在变量组成的生成模型。潜在变量具有二进制值,通常称为隐藏单元。

DBN 是一堆玻尔兹曼机,层与层之间有连接,每个 RBM 层都与前一层和后一层进行通信。深度信念网络 (DBN) 用于图像识别、视频识别和动作捕捉数据。

DBN 是如何工作的?

  • 贪婪学习算法训练 DBN。贪心学习算法使用逐层方法来学习自上而下的生成权重。
  • DBN 在顶部两个隐藏层上运行 Gibbs 采样步骤。此阶段从顶部两个隐藏层定义的 RBM 中抽取样本。
  • DBN 使用通过模型其余部分的单次祖先采样从可见单元中抽取样本。
  • DBN 了解到每一层中的潜在变量的值都可以通过一次自下而上的传递来推断。

下面是一个 DBN 架构的例子:

受限玻尔兹曼机 (RBM)

RBM 由 Geoffrey Hinton 开发,是一种随机神经网络,可以从一组输入的概率分布中学习。

这种深度学习算法用于降维、分类、回归、协同过滤、特征学习和主题建模。RBM 构成了 DBN 的构建块。

RBM 由两层组成:

  • 可见单位
  • 隐藏单位

每个可见单元都连接到所有隐藏单元。RBM 有一个连接到所有可见单元和隐藏单元的偏置单元,并且它们没有输出节点。

RBM 如何运作?

RBM 有两个阶段:正向传递和反向传递。

  • RBM 接受输入并将它们转换为一组数字,这些数字在前向传递中对输入进行编码。
  • RBM 将每个输入与单独的权重和一个整体偏差结合起来。该算法将输出传递给隐藏层。
  • 在向后传递中,RBM 获取该组数字并将它们转换为重构输入。
  • RBM将每个激活与个体权重和整体偏差结合起来,并将输出传递给可见层进行重建。
  • 在可见层,RBM 将重建与原始输入进行比较,以分析结果的质量。

下图是 RBM 如何运作的图表:

自动编码器(AutoEncoding)

自动编码器是一种特定类型的前馈神经网络,其中输入和输出相同。Geoffrey Hinton 在 1980 年代设计了自动编码器来解决无监督学习问题。它们是训练有素的神经网络,可将数据从输入层复制到输出层。自动编码器用于药物发现、流行度预测和图像处理等目的。

自动编码器如何工作?

自动编码器由三个主要组件组成:编码器、代码和解码器

  • 自动编码器的结构是接收输入并将其转换为不同的表示形式。然后他们尝试尽可能准确地重建原始输入。
  • 当数字图像不清晰可见时,它会馈送到自动编码器神经网络。
  • 自动编码器首先对图像进行编码,然后将输入的大小缩小为更小的表示。
  • 最后,自动编码器对图像进行解码以生成重建图像。

下图演示了自动编码器的操作方式:

来源:https://blog.csdn.net/sikh_0529/article/details/129190755

作者:Sonhhxg_柒

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 在Github上,有许多受欢迎深度学习开源项目。以下是其中一些备受欢迎深度学习开源项目: 1. TensorFlow:由Google开发的机器学习库,广泛用于深度学习任务。 2. PyTorch:由Facebook开发的深度学习框架,提供动态计算图和丰富的功能。 3. Keras:一个高级神经网络API,可以运行在多个深度学习框架上,如TensorFlow和Theano。 4. Caffe:一个高效的深度学习框架,以速度和模型表达能力著称。 5. MXNet:一个高度可扩展的深度学习框架,支持分布式训练和多种编程语言。 6. Theano:一个基于Python的开源库,用于定义、优化和评估数学表达式,特别适用于深度学习。 7. scikit-learn:一个用于机器学习和数据挖掘的Python库,包含了许多经典的机器学习算法。 8. Darknet:一个轻量级的深度学习框架,特别适用于物体检测和图像分类任务。 9. Caffe2:Facebook开发的深度学习框架,具有高效的分布式训练能力。 10. Torch:一个科学计算框架,提供了丰富的工具和库,适用于深度学习任务。 这只是其中一小部分受欢迎深度学习开源项目。Github上还有许多其他项目,涵盖了各种深度学习任务和应用领域,供开发者们使用和贡献。 ### 回答2: GitHub上最受欢迎的57个深度学习开源项目是基于其Stars数和社区贡献度的排名,以下是其中一些项目的简介: 1. TensorFlow:由Google开发的深度学习框架,功能强大且广泛应用。 2. PyTorch:Facebook开发的深度学习框架,被广泛用于研究和开发。 3. Keras:用户友好的深度学习库,可以在TensorFlow、Theano等后端运行。 4. Caffe:质量高且快速的深度学习框架,适用于计算机视觉任务。 5. Theano:用于定义、优化和评估数学表达式的Python库,支持高效的机器学习计算。 6. Torch:基于LUA的科学计算框架,广泛用于机器学习。 7. MXNet:适用于分布式、高效的深度学习框架。 8. Fast.ai:构建在PyTorch之上的高级API,使深度学习更易于使用。 9. TensorFlow.js:用于在浏览器上进行机器学习的库。 10. Dlib:用于图像处理和机器学习任务的C++库。 11. DeepSpeech:Mozilla构建的自动语音识别框架。 12. OpenCV:图像处理和计算机视觉的开源库,具有深度学习支持。 13. GANs:生成对抗网络的PyTorch实现,用于生成逼真的图像。 14. TensorFlow Object Detection API:用于目标检测的TensorFlow API。 15. MLBox:一个自动化机器学习工具,用于数据预处理、特征选择、模型选择等。 16. NLP:使用自然语言处理技术的Python库。 17. Autokeras:自动化机器学习库,用于快速构建和部署模型。 18. OpenAI Gym:用于开发和比较强化学习算法的工具包。 19. DeepFace:FaceNet网络的Keras实现,用于人脸识别。 20. StyleTransfer:用于图像风格转换的PyTorch实现。 这只是其中一些受欢迎深度学习项目,GitHub上还有许多其他优秀的项目,每个项目都具有不同的特点和应用领域。无论您是初学者还是专业人士,都可以在GitHub上找到适合您需求的项目。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值