卷积神经网络

你需要知道的三件事

卷积神经网络(CNN或ConvNet),是网络架构深度学习它直接从数据中学习,消除了手工特征提取的需要。

cnn在寻找图像模式以识别物体、面孔和场景方面特别有用。对于非图像数据(如音频、时间序列和信号数据)的分类,它们也非常有效。

要求对象识别计算机视觉——如无人驾驶车辆和人脸识别应用——严重依赖cnn。

是什么让CNNS如此有用?

使用cnn进行深度学习是受三个重要因素的影响:

  • CNN消除了对手动特征提取的需求 - 通过CNN直接学习功能。
  • cnn产生高度准确的识别结果。
  • cnn可以通过再训练来完成新的识别任务,使你能够在已有的网络基础上进行构建。

CNN为图像和时间序列数据中的揭示和学习关键特征提供了最佳架构。CNN是应用程​​序中的关键技术,如:

  • 医学影像:CNN可以检查数千个病理报告,以在目视检测图像中的存在或不存在图像。
  • 音频处理:任何带有麦克风的设备都可以使用关键字检测,以检测何时说出某个单词或短语(“Hey Siri!”)。cnn可以准确地学习和检测关键字,而忽略所有其他短语,不管环境如何。
  • 停止标志检测:自动驾驶依靠cnn精确检测标识或其他物体的存在,并根据输出做出决策。
  • 合成数据生成: 使用生成的对抗网络(GANS)在美国,新的图像可以用于深度学习应用,包括人脸识别和自动驾驶。

了解更多

CNNS如何工作

卷积神经网络可以有数十或数百层,每一层都可以学习检测图像的不同特征。滤波器应用于每幅不同分辨率的训练图像,每幅卷积图像的输出被用作下一层的输入。金宝搏官方网站滤镜可以从非常简单的特征开始,比如亮度和边缘,然后增加特征的复杂性,以唯一地定义对象。

特征学习,层次和分类

像其他神经网络一样,CNN由输入层、输出层和中间的许多隐藏层组成。

这些层执行修改数据的操作,目的是学习特定于数据的特性。最常见的三个层是:卷积、激活(ReLU)和池化。

  • 卷积通过一组卷积滤波器将输入图像放置,每个卷积滤波器激活图像中的某些功能。
  • 整流线性单元(Relu)通过将负值映射为零并保持正值,允许更快更有效的训练。这有时被称为激活,因为只有被激活的特征才会转入下一层。
  • 汇集通过执行非线性下行采样来简化输出,从而减少网络需要学习的参数数。

这些操作在数十或数百个层中重复,每一层都学习识别不同的特征。

具有许多卷积层的网络示例。滤波器应用于每幅不同分辨率的训练图像,每幅卷积图像的输出被用作下一层的输入。金宝搏官方网站

共享权重和偏见

像传统一样神经网络,CNN具有具有重量和偏差的神经元。该模型在培训过程中学习这些值,并且它将其与每个新培训示例连续更新。然而,在CNNS的情况下,对给定层中的所有隐藏神经元的权重和偏置值是相同的。

这意味着所有隐藏的神经元都在图像的不同区域检测相同的特征,比如边缘或斑点。这使得网络对图像中物体的转换具有容忍度。例如,一个经过训练的识别汽车的网络将能够在图像中任何汽车所在的位置进行识别。

分类层

在学习了许多层的特征之后,CNN的架构转向了分类。

倒数第二层是完全连接层,它输出K维向量,其中K是网络能够预测的类数。这个向量包含每一类被分类的图像的概率。

CNN架构的最后一层使用分类层(如softmax)提供分类输出。

使用MATLAB设计和培训CNN

使用马铃薯®深度学习工具箱™使您可以设计,列车和部署CNN。

MATLAB提供了大量来自深度学习社区的预训练模型,可用于学习和识别新数据集的特征。这种方法被称为迁移学习,是一种应用深度学习而无需从头开始的便捷方法。像GoogLeNet、AlexNet和Inception这样的模型提供了一个探索深度学习的起点,利用了专家构建的经过验证的体系结构。

设计和培训网络

使用Deep Network Designer,您可以导入备用模型或从头开始构建新型号。

Deep Network Designer应用程序,用于交互式地构建、可视化和编辑深度学习网络。

您还可以直接在应用程序中培训网络,并监控具有精度,丢失和验证度量的绘图的培训。

使用训练前的迁移学习模型

微调掠夺网络转移学习通常比从头开始训练更快更容易。它需要最少的数据量和计算资源。迁移学习是利用一类问题的知识来解决类似的问题。你从一个预先训练过的网络开始,用它来学习一项新任务。迁移学习的一个优点是,预先训练的网络已经学习了一组丰富的特征。这些特性可以应用于其他广泛的类似任务。例如,您可以使用一个在数百万张图像上训练过的网络,然后只使用数百张图像重新训练它来进行新的对象分类。

使用GPU的硬件加速度

一个卷积神经网络可以训练成百上千甚至上百万张图像。当处理大量数据和复杂的网络架构时,gpu可以显著加快模型训练的处理时间。

nvidia.®GPU,加速了计算最深入的任务,如深度学习。

了解更多


应用程序使用有线电视新闻网

对象检测

目标检测是对图像和视频中的目标进行定位和分类的过程。计算机Vision Toolbox™提供使用YOLO和Faster R-CNN创建基于深度学习的对象检测器的训练框架。

使用深度学习的对象检测

此示例显示如何使用深度学习和R-CNN(带有卷积神经网络的区域)训练对象探测器。

关键词检测

语音到文本的示例应用是关键字检测,它识别某些关键词或短语,并且可以将它们用作指令。常见示例是唤醒设备并打开灯。

使用深度学习的关键词检测

此示例显示了如何使用MATLAB识别和检测音频中语音命令的存在,并可用于语音辅助技术

语义分割

CNN用于语义分割,以用相应的类标签识别图像中的每个像素。语义分割可以用于自主驾驶,工业检验,地形分类等应用中,以及医学成像。卷积神经网络是构建语义分割网络的基础。

利用深度学习的语义分割

此示例显示了如何使用MATLAB构建语义分段网络,这将识别图像中的每个像素,其中具有相应的标签。

Matlab为所有深入学习的东西提供了一种工具和功能。使用CNN在信号处理,计算机视觉或通信和雷达中增加工作流程。


如何了解有关CNNS的更多信息

下载188bet金宝搏支持使金宝app用cnn进行图像分析的产品包括马铃薯,计算机Vision Toolbox™,统计和机器学习工具箱™,深度学习工具箱

卷积神经网络需要深度学习工具箱。CUDA支持训练和预测金宝app®能力的GPU,计算能力为3.0或更高。强烈建议使用GPU并要求并行计算工具箱™

视频

例子和如何

软件参考