从系列:深度学习简介
Shyamal Patel MathWorks
Johanna Pingel, MathWorks
探索背后的基本原理卷积神经网络(CNNS)在这个matlab中®技术讨论。广义上说,卷积神经网络是一种常见的深度学习架构——但CNN到底是什么呢?本视频将这个有时很复杂的概念分解为易于理解的部分。你会学到3个概念:局部接受域,共享权重和偏见,激活和汇聚。
本视频将这三个概念结合在一起,向您展示如何在卷积神经网络中配置层。
您还将学习3种训练卷积神经网络用于图像分析的方法。其中包括:1。)从头开始训练模型;2.)使用迁移学习(基于你可以用一种问题的知识来解决一个类似的问题的想法);3.)使用预先训练的CNN提取特征来训练机器学习模型。
了解有关使用MATLAB的更多信息深度学习.
记录:2017年3月24日
卷积神经网络(CNN)是一种用于深度学习的网络架构。它直接从图像中学习。CNN由几个层组成,这些层处理和转换输入以产生输出。
您可以培训CNN进行图像分析任务,包括场景分类,对象检测和分割以及图像处理。为了了解CNNS如何工作,我们将介绍三个关键概念:本地接收领域,共享权重和偏见,并激活和汇集。
最后,我们将简要讨论三种训练cnn进行图像分析的方法。
让我们从局部接受域的概念开始。在典型的神经网络中,输入层中的每个神经元都与隐藏层中的一个神经元相连。然而,在一个CNN中,只有一小部分的输入层神经元连接到隐藏层的神经元。这些区域被称为局部接受区。
局部接受域在图像上平移,形成从输入层到隐层神经元的特征映射。您可以使用卷积来有效地实现这个过程。这就是为什么它被称为卷积神经网络。我们要讨论的第二个概念是关于共同权重和偏见。
像典型的神经网络一样,CNN也有带有权重和偏差的神经元。模型在训练过程中学习这些值,并在每个新的训练示例中不断更新它们。而对于cnn,给定层中所有隐藏神经元的权值和偏差值是相同的。
这意味着所有隐藏的神经元都在检测图像不同区域的相同特征,比如边缘或斑点。这使得网络能够容忍图像中物体的平移。例如,一个经过训练的识别猫的网络将能够在图像中出现猫的时候这样做。
我们的第三和最终概念是激活和汇集。激活步骤通过使用激活功能将变换应用于每个神经元的输出。纠正的线性单元或Relu是常用的激活功能的示例。它需要一个神经元的输出并将其映射到最高的正值。
或者,如果输出为否定,则该功能将其映射到零。您可以通过应用池步骤来进一步转换激活步骤的输出。汇集通过将小区域的输出冷凝成单个输出来减少特色地图的维度。这有助于简化以下层次,并减少模型需要了解的参数数。
现在让我们把它全部拉到一起。使用这三个概念,我们可以在CNN中配置图层。CNN可以具有数十或数百个隐藏层,每个隐藏层每个都学会检测图像中的不同特征。在此特征映射中,我们可以看到每个隐藏的图层都会增加学习图像功能的复杂性。
例如,第一个隐藏图层了解如何检测边缘,最后了解如何检测更复杂的形状。就像在典型的神经网络中一样,最终层将每个神经元连接到输出神经元的最后一个隐藏层。这会产生最终输出。有三种方法可以使用CNN进行图像分析。
第一种方法是从头开始训练CNN。这种方法非常准确,虽然它也是最具挑战性的,因为您可能需要数以万计的标记图像和重要的计算资源。
第二种方法依赖于转移学习,这是基于您可以使用一种类型的问题来解决类似问题的想法。例如,您可以使用已培训的CNN模型,以识别动物以初始化和培训一种区别在汽车和卡车之间的新模型。
此方法需要更少的数据和比第一个更少的计算资源。使用第三种方法,您可以使用预先训练的CNN来提取用于培训机器学习模型的功能。例如,已经了解了如何检测图像中的边缘的隐藏层与来自许多不同域的图像广泛相关。该方法需要最少的数据和计算资源。
我希望你发现这个视频有用。有关更多信息,请访问MathWorks.com/Deep-Learning。
您还可以从以下列表中选择一个网站:
选择中国网站(中文或英文)以获得最佳网站性能。其他MathWorks国家站点没有针对您所在位置的访问进行优化。