0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

您应该知道的9种深度学习算法

倩倩 来源:不靠谱的猫 2020-04-17 11:07 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

本文的主要目标是让您对深度学习领域有一个整体了解,并帮助您了解每种特定情况下应使用的算法。来吧。

神经网络:基础

神经网络是一个具有相互连接的节点的计算系统,其节点的工作方式更像是人脑中的神经元。这些神经元在它们之间进行处理并传递信息。每个神经网络都是一系列的算法,这些算法试图通过一个模拟人类大脑运作的过程来识别一组数据中的潜在关系。

深度学习算法和经典神经网络之间有什么区别呢?最明显的区别是:深度学习中使用的神经网络具有更多隐藏层。这些层位于神经元的第一层(即输入层)和最后一层(即输出层)之间。另外,没有必要将不同层的所有神经元连接起来。

您应该知道的9种深度学习算法

#1反向传播

反向传播算法是一种非常流行的用于训练前馈神经网络的监督学习算法。本质上,反向传播计算成本函数的导数的表达式,它是每一层之间从左到右的导数乘积,而每一层之间的权重梯度是对部分乘积的简单修改(“反向传播误差”)。

我们向网络提供数据,它产生一个输出,我们将输出与期望的输出进行比较(使用损失函数),然后根据差异重新调整权重。然后重复此过程。权重的调整是通过一种称为随机梯度下降的非线性优化技术来实现的。

假设由于某种原因,我们想识别图像中的树。我们向网络提供任何种类的图像,并产生输出。由于我们知道图像是否实际上有一棵树,因此我们可以将输出与真实情况进行比较并调整网络。随着我们传递越来越多的图像,网络的错误就会越来越少。现在我们可以给它提供一个未知的图像,它将告诉我们该图像是否包含树。

#2前馈神经网络(FNN)

前馈神经网络通常是全连接,这意味着层中的每个神经元都与下一层中的所有其他神经元相连。所描述的结构称为“多层感知器”,起源于1958年。单层感知器只能学习线性可分离的模式,而多层感知器则可以学习数据之间的非线性的关系。

前馈网络的目标是近似某个函数f。例如对于分类,=(x)将输入x映射到类别y。前馈网络定义了一个映射y = f(x;θ),并学习了导致最佳函数逼近的参数θ的值。

这些模型之所以称为前馈,是因为从x到定义f的中间计算,最后到输出y,没有反馈连接。没有将模型的输出反馈到自身的反馈连接。当前馈神经网络扩展为包括反馈连接时,它们称为循环神经网络。

#3卷积神经网络(CNN)

卷积神经网络除了为机器人自动驾驶汽车的视觉提供帮助外,还成功的应用于人脸识别,对象监测和交通标志识别等领域。

在数学中,卷积是一个函数越过另一个函数时两个函数重叠多少的积分度量。

绿色曲线表示蓝色和红色曲线的卷积,它是t的函数,位置由垂直的绿色线表示。灰色区域表示乘积g(tau)f(t-tau)作为t的函数,所以它的面积作为t的函数就是卷积。

这两个函数在x轴上每一点的重叠的乘积就是它们的卷积。

在某种程度上,他们尝试对前馈网络进行正则化,以避免过度拟合(当模型只学习预先看到的数据而不能泛化时),这使得他们能够很好地识别数据之间的空间关系。

#4循环神经网络(RNN)

循环神经网络在许多NLP任务中都非常成功。在传统的神经网络中,可以理解所有输入和输出都是独立的。但是,对于许多任务,这是不合适的。如果要预测句子中的下一个单词,最好考虑一下它前面的单词。

RNN之所以称为循环,是因为它们对序列的每个元素执行相同的任务,并且输出取决于先前的计算。RNN的另一种解释:这些网络具有“记忆”,考虑了先前的信息。

例如,如果序列是5个单词的句子,则由5层组成,每个单词一层。

在RNN中定义计算的公式如下:

x_t-在时间步t输入。例如,x_1可以是与句子的第二个单词相对应的one-hot向量。

s_t是步骤t中的隐藏状态。这是网络的“内存”。s_t作为函数取决于先前的状态和当前输入x_t:s_t = f(Ux_t + Ws_ {t-1})。函数f通常是非线性的,例如tanh或ReLU。计算第一个隐藏状态所需的s _ {-1}通常初始化为零(零向量)。

o_t-在步骤t退出。例如,如果我们要预测句子中的单词,则输出可能是字典中的概率向量。o_t = softmax(Vs_t)

图像描述的生成

与卷积神经网络一起,RNN被用作模型的一部分,以生成未标记图像的描述。组合模型将生成的单词与图像中的特征相结合:

最常用的RNN类型是LSTM,它比RNN更好地捕获(存储)长期依赖关系。LSTM与RNN本质上相同,只是它们具有不同的计算隐藏状态的方式。

LSTM中的memory称为cells,您可以将其视为接受先前状态h_ {t-1}和当前输入参数x_t作为输入的黑盒。在内部,这些cells决定保存和删除哪些memory。然后,它们将先前的状态,当前memory和输入参数组合在一起。

这些类型的单元在捕获(存储)长期依赖关系方面非常有效。

#5递归神经网络

递归神经网络是循环网络的另一种形式,不同之处在于它们是树形结构。因此,它们可以在训练数据集中建模层次结构。

由于其与二叉树、上下文和基于自然语言的解析器的关系,它们通常用于音频到文本转录和情绪分析等NLP应用程序中。然而,它们往往比递归网络慢得多

#6自编码器

自编码器可在输出处恢复输入信号。它们内部有一个隐藏层。自编码器设计为无法将输入准确复制到输出,但是为了使误差最小化,网络被迫学习选择最重要的特征。

自编码器可用于预训练,例如,当有分类任务且标记对太少时。或降低数据中的维度以供以后可视化。或者,当您只需要学习区分输入信号的有用属性时。

#7深度信念网络和受限玻尔兹曼机器

受限玻尔兹曼机是一个随机神经网络(神经网络,意味着我们有类似神经元的单元,其binary激活取决于它们所连接的相邻单元;随机意味着这些激活具有概率性元素),它包括:

可见单位层

隐藏单元层

偏差单元

此外,每个可见单元连接到所有的隐藏单元(这种连接是无向的,所以每个隐藏单元也连接到所有的可见单元),而偏差单元连接到所有的可见单元和所有的隐藏单元。

为了使学习更容易,我们对网络进行了限制,使任何可见单元都不连接到任何其他可见单元,任何隐藏单元都不连接到任何其他隐藏单元。

多个RBM可以叠加形成一个深度信念网络。它们看起来完全像全连接层,但但是它们的训练方式不同。

#8生成对抗网络(GAN)

GAN正在成为一种流行的在线零售机器学习模型,因为它们能够以越来越高的准确度理解和重建视觉内容。用例包括:

从轮廓填充图像。

从文本生成逼真的图像。

制作产品原型的真实感描述。

将黑白图像转换为彩色图像。

在视频制作中,GAN可用于:

在框架内模拟人类行为和运动的模式。

预测后续的视频帧。

创建deepfake

生成对抗网络(GAN)有两个部分:

生成器学习生成可信的数据。生成的实例成为判别器的负面训练实例。

判别器学会从数据中分辨出生成器的假数据。判别器对产生不可信结果的发生器进行惩罚。

建立GAN的第一步是识别所需的最终输出,并根据这些参数收集初始训练数据集。然后将这些数据随机化并输入到生成器中,直到获得生成输出的基本精度为止。

然后,将生成的图像与原始概念的实际数据点一起馈入判别器。判别器对信息进行过滤,并返回0到1之间的概率来表示每个图像的真实性(1与真相关,0与假相关)。然后检查这些值是否成功,并不断重复,直到达到预期的结果。

#9Transformers

Transformers也很新,它们主要用于语言应用。它它们基于一个叫做注意力的概念,这个概念被用来迫使网络将注意力集中在特定的数据点上。

由于LSTM单元过于复杂,因此可以使用注意力机制根据其重要性对输入的不同部分进行权衡。注意力机制只不过是另一个具有权重的层,它的唯一目的是调整权重,使输入的部分优先化,同时排除其他部分。

实际上,Transformers由多个堆叠的编码器(形成编码器层),多个堆叠的解码器(解码器层)和一堆attention层(self- attentions和encoder-decoder attentions)组成

Transformers设计用于处理诸如机器翻译和文本摘要之类的各种任务的有序数据序列,例如自然语言。如今,BERT和GPT-2是两个最著名的经过预先训练的自然语言系统,用于各种NLP任务中,它们都基于Transformers。

#10图神经网络

一般来说,非结构化数据并不适合深度学习。在许多实际应用中,数据是非结构化的,例如社交网络,化合物,知识图,空间数据等。

图神经网络的目的是对图数据进行建模,这意味着它们识别图中节点之间的关系,并对其进行数值表示。它们以后可以在任何其他机器学习模型中用于各种任务,例如聚类,分类等。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 神经网络
    +关注

    关注

    42

    文章

    4827

    浏览量

    106799
  • 算法
    +关注

    关注

    23

    文章

    4761

    浏览量

    97146
  • 深度学习
    +关注

    关注

    73

    文章

    5590

    浏览量

    123907
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    【团购】独家全套珍藏!龙哥LabVIEW视觉深度学习实战课(11大系列课程,共5000+分钟)

    (第10系列)、YOLOv8-Tiny工业优化版(第9系列),满足产线端设备算力限制,模型推理速度提升300%。 LabVIEW生态整合 作为工业自动化领域主流开发环境,LabVIEW与深度学习的集成
    发表于 12-04 09:28

    【团购】独家全套珍藏!龙哥LabVIEW视觉深度学习实战可(11大系列课程,共5000+分钟)

    、锂电池产线的视觉检测工位。 二、职业发展: 目前行业市场具备深度学习能力的视觉系统占比已突破40%,催生大量复合型技术岗位需求: • 岗位缺口:视觉算法工程师全国缺口15万+,缺陷检测专项人才招聘响应率
    发表于 12-03 13:50

    从0到1,10+年资深LabVIEW专家,手把手教你攻克机器视觉+深度学习(5000分钟实战课)

    “告别检测系统能力缺陷!10+年LabVIEW视觉资深专家手把手教你:5000+分钟高清教程(含工具、算法原理、实战操作、项目优化全流程讲解)”——从传统视觉算法深度学习建模→工业级
    的头像 发表于 12-02 08:07 97次阅读
    从0到1,10+年资深LabVIEW专家,手把手教你攻克机器视觉+<b class='flag-5'>深度</b><b class='flag-5'>学习</b>(5000分钟实战课)

    如何深度学习机器视觉的应用场景

    深度学习视觉应用场景大全 工业制造领域 复杂缺陷检测:处理传统算法难以描述的非标准化缺陷模式 非标产品分类:对形状、颜色、纹理多变的产品进行智能分类 外观质量评估:基于学习的外观质量标
    的头像 发表于 11-27 10:19 55次阅读

    8常用的CRC算法分享

    CRC 计算单元可按所选择的算法和参数配置来生成数据流的 CRC 码。有些应用中,可利用 CRC 技术来验证数据的传输和存储的完整性。 8 常用的 CRC 算法,包括: CRC16_IBM
    发表于 11-13 07:25

    自动驾驶中Transformer大模型会取代深度学习吗?

    [首发于智驾最前沿微信公众号]近年来,随着ChatGPT、Claude、文心一言等大语言模型在生成文本、对话交互等领域的惊艳表现,“Transformer架构是否正在取代传统深度学习”这一话题一直被
    的头像 发表于 08-13 09:15 3917次阅读
    自动驾驶中Transformer大模型会取代<b class='flag-5'>深度</b><b class='flag-5'>学习</b>吗?

    PID控制算法学习笔记资料

    用于新手学习PID控制算法
    发表于 08-12 16:22 7次下载

    基于RK3576开发板的车辆检测算法

    车辆检测是一基于深度学习的对人进行检测定位的目标检测,能广泛的用于园区管理、交通分析等多种场景,是违停识别、堵车识别、车流统计等多种算法的基石算法
    的头像 发表于 05-08 17:34 1271次阅读
    基于RK3576开发板的车辆检测<b class='flag-5'>算法</b>

    基于RV1126开发板的车辆检测算法开发

    车辆检测是一基于深度学习的对人进行检测定位的目标检测,能广泛的用于园区管理、交通分析等多种场景,是违停识别、堵车识别、车流统计等多种算法的基石算法
    的头像 发表于 04-14 16:00 615次阅读
    基于RV1126开发板的车辆检测<b class='flag-5'>算法</b>开发

    用树莓派搞深度学习?TensorFlow启动!

    介绍本页面将指导您在搭载64位Bullseye操作系统的RaspberryPi4上安装TensorFlow。TensorFlow是一个专为深度学习开发的大型软件库,它消耗大量资源。您可以在
    的头像 发表于 03-25 09:33 964次阅读
    用树莓派搞<b class='flag-5'>深度</b><b class='flag-5'>学习</b>?TensorFlow启动!

    如何排除深度学习工作台上量化OpenVINO™的特定层?

    无法确定如何排除要在深度学习工作台上量化OpenVINO™特定层
    发表于 03-06 07:31

    军事应用中深度学习的挑战与机遇

    人工智能尤其是深度学习技术的最新进展,加速了不同应用领域的创新与发展。深度学习技术的发展深刻影响了军事发展趋势,导致战争形式和模式发生重大变化。本文将概述
    的头像 发表于 02-14 11:15 819次阅读

    BP神经网络与深度学习的关系

    ),是一多层前馈神经网络,它通过反向传播算法进行训练。BP神经网络由输入层、一个或多个隐藏层和输出层组成,通过逐层递减的方式调整网络权重,目的是最小化网络的输出误差。 二、深度学习
    的头像 发表于 02-12 15:15 1341次阅读

    AI自动化生产:深度学习在质量控制中的应用

    随着科技的飞速发展,人工智能(AI)与深度学习技术正逐步渗透到各个行业,特别是在自动化生产中,其潜力与价值愈发凸显。深度学习软件不仅使人工和基于规则的
    的头像 发表于 01-17 16:35 1210次阅读
    AI自动化生产:<b class='flag-5'>深度</b><b class='flag-5'>学习</b>在质量控制中的应用

    传统机器学习方法和应用指导

    用于开发生物学数据的机器学习方法。尽管深度学习(一般指神经网络算法)是一个强大的工具,目前也非常流行,但它的应用领域仍然有限。与深度
    的头像 发表于 12-30 09:16 1982次阅读
    传统机器<b class='flag-5'>学习</b>方法和应用指导