卷积神经网络(CNN 或 ConvNet)是一种直接从数据中学习的深度学习网络架构。
CNN 特别适合在图像中寻找模式以识别对象、类和类别。它们也能很好地对音频、时间序列和信号数据进行分类。
通过示例快速入门
特征学习、层和分类
CNN 由一个输入层、一个输出层和中间的多个隐藏层组成。
这些层会执行运算以更改数据,目的是学习特定于数据的特征。卷积层、激活层(即 ReLU 层)和池化层是三种最常见的层。
- 卷积层将一组卷积滤波器应用于输入图像,每个滤波器激活图像中的特定特征。
- 修正线性单元 (ReLU) 层将负值映射到零,同时保持正值不变,让训练更快、更高效。该层有时也称为激活层,因为只有激活的特征才会传递给下一层。
- 池化层执行非线性下采样,减少网络需要学习的参数个数,从而简化输出。
这些操作在数十层或数百层上反复进行,每一层都学习识别不同的特征。
共享权重和偏置
与传统神经网络不同的是,CNN 具有共享的权重和偏置值。这些值对于给定层中的所有隐藏神经元均相同。
这意味着所有隐藏神经元会在图像的不同区域检测相同的特征,例如边缘或斑点。因此,网络容许图像中的目标有一定的平移。例如,对于一个汽车识别网络,无论汽车出现在图像何处,网络都能进行识别。
分类层
通过多个层学习特征后,CNN 的架构转向分类。
倒数第二层是一个全连接层,它输出一个 K 维向量(其中 K 是网络能够预测的类的数量),并包含图像被分到各个类的概率。
CNN 架构的最后一层使用分类层来提供最终分类输出。
医学成像:CNN 可以检查成千上万份病理报告,以视觉方法检测图像中是否存在癌细胞。
音频处理:只要设备带有麦克风,就可以进行关键字检测,检测到用户说出的特定字词(如“嘿 Siri”)。CNN 可以在各种环境下准确地学习和检测关键字,同时忽略所有其他字词。
目标检测:自动驾驶依靠 CNN 来准确检测标志或其他目标的存在,并根据输出作出决策。
合成数据生成:使用生成对抗网络 (GAN) 可以生成新图像,用于深度学习应用,包括人脸识别和自动驾驶。
何时使用 CNN?
当您有大量复杂数据(例如图像数据)时,可以考虑使用 CNN。您还可以使用 CNN 处理针对网络结构预处理过的信号或时间序列数据。
请参见以下使用 CNN 处理信号的示例:
考虑使用预训练模型
使用 CNN 时,工程师和科学家们更喜欢从一个预训练的模型开始,使用新数据集来让该模型学习和识别其中的特征。
您可以使用 GoogLeNet、AlexNet 和 Inception 等模型作为起点,利用专家构建的、经过验证的架构来探索深度学习。
用 MATLAB 实现 CNN
借助 MATLAB® 和 Deep Learning Toolbox™,您能够设计、训练和部署 CNN。
设计和训练网络
使用深度网络设计器,您可以导入预训练模型或从头构建新模型。
您还可以直接在该 App 中训练网络,并使用准确度、损失和验证指标图来监控训练。
使用预训练模型进行迁移学习
通常来说,使用迁移学习对预训练网络进行微调比从头开始训练更快、更轻松。它只需要很少的数据和计算资源。迁移学习使用某一类问题的相关知识来解决与之类似的问题。该方法以一个预训练网络作为起点,利用它学习新任务。迁移学习的优点是预训练网络已学习了一系列丰富的特征。例如,以一个基于数百万个图像训练过的网络为起点,只需再用几百个图像重新训练,网络就能对新目标进行分类。
使用 GPU 进行硬件加速
卷积神经网络是基于数百、数千甚至数百万个图像进行训练的。在对大量数据和复杂网络架构进行处理时,GPU 可以显著缩短训练模型所需的处理时间。
MATLAB 实现深度学习
了解 MATLAB 针对深度学习提供的支持。
教程和示例
MATLAB 机器学习快速入门。
选择网站
选择网站以获取翻译的可用内容,以及查看当地活动和优惠。根据您的位置,我们建议您选择:。
您也可以从以下列表中选择网站:
如何获得最佳网站性能
选择中国网站(中文或英文)以获得最佳网站性能。其他 MathWorks 国家/地区网站并未针对您所在位置的访问进行优化。
美洲
- América Latina (Español)
- Canada (English)
- United States (English)
欧洲
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)