分享

这次终于能把cnn卷积神经网络搞清楚了!

 新用户0118F7lQ 2024-01-11 发布于山东
 

卷积神经网络(CNN)是一种强大的深度学习架构,非常适合图像分类和对象识别任务。凭借自动提取相关特征、处理噪声图像和利用预训练模型的能力,CNN 在一系列计算机视觉任务中展示了最先进的性能,在本文中我们将用简单的术语来分解cnn。

什么是卷积神经网络 (CNN)?

卷积神经网络(CNN)是一种用于图像识别和处理的人工神经网络,其灵感来自于动物视觉皮层的生物过程。它们由具有可学习权重和偏差的神经元组成。

CNN 在至少一个层中使用一种称为卷积的技术,而不是一般的矩阵乘法,卷积是一种特殊的线性运算。

图片

图 1:具有多个卷积层的神经网络

另外我为大家准备了神经网络 215 篇顶会论文给大家学习(95%的论文都包含源代码)

图片

为了避免添加人数过多出现频繁,大家可以随便添加一个小助手,让她发给你。

     

卷积神经网络的工作原理:

CNN 将过滤器(小矩形)应用于输入图像以检测边缘或形状等特征。滤波器在输入图像的宽度和高度上滑动,并计算滤波器和输入之间的点积以生成激活图。

激活图被输入池化层,对图进行下采样以降低维数。这使得模型更加高效和稳健。最后一层是全连接层,它将输入图像分类为“狗”或“猫”等类别。

一些流行的 CNN 架构包括 AlexNet、VGGNet、ResNet 和 Inception。这些已被用来解决复杂的问题,例如识别数千个物体或通过医学扫描检测疾病。

要构建 CNN您可以通过选择超参数(例如过滤器数量、过滤器大小、步幅和池化大小)来定义架构。

然后,您在大型数据集上训练网络并使用反向传播来更新权重和偏差。

凭借足够的数据和计算能力,CNN 可以在许多视觉任务上实现超人的性能。

CNN 彻底改变了计算机视觉,并被 Google、Facebook 等公司用来增强应用程序和服务中的图像识别能力。

它们已成为任何机器学习从业者不可或缺的工具。

图片

图 2:卷积神经网络 — CNN 架构

卷积神经网络的层数:

1. 卷积层

卷积层对输入应用卷积运算,在整个图像上传递滤波器。该过滤器检测图像中的边缘或曲线等特征。多个过滤器可以检测不同的特征。

卷积运算结合输入和滤波器来创建特征图。这显示了检测到的特征的位置和强度。通过堆叠多个卷积层,网络可以检测更高级别、更复杂的特征。
卷积运算将输入和滤波器组合在一起,以创建特征图。这显示了检测到的特征的位置和强度。通过堆叠多个卷积层,网络可以检测更高层次和更复杂的特征。

图片

图 3:卷积层

2.池化层

池化层插入到卷积层之间。他们对特征图进行下采样,以减少参数数量、控制过度拟合并使网络对小平移保持不变。

最常见的类型是 max pooling(取内核中的最大值)和 average pooling(取平均值)。池化图层对特征图进行子采样,仅保留最重要的信息。

通过巧妙地堆叠多个卷积层和池化层,CNN可以学习检测图像中的复杂特征,如面部、物体、场景等。然后,最终卷积层的输出被展平为单个向量,并传递到全连接层分类。

空间池化也称为子采样或下采样,它降低了每个地图的维度,但保留了重要信息。空间池可以有不同的类型:

  • 最大池化 最大池化

  • 平均池化 平均池化

  • 总和池 总和池化

图片

图 4:MaxPooling 层 图 4:MaxPooling 层


3.激活层:

激活层将非线性激活函数(例如ReLU 函数)应用与池化层的输出、此函数有助于将非线性引入模型,使其能够学习输入数据的更复杂的表示。

图片

图 5:激活层 

掌握了卷积层和池化层的基础知识后,你已经了解了 CNN 的基础知识

4.归一化层: 

归一化层执行归一化操作,例如批量归一化或层归一化,以确保每层的激活条件良好并防止过度拟合。

图片

图 6:不同类型的标准化

5.Dropout 层:

Dropout 层用于通过在训练过程中随机丢弃神经元来防止过度拟合。这有助于确保模型不会记住训练数据,而是泛化到新的、未见过的数据。

图片

图 7:Dropout 层如何工作?

6.致密层:

卷积层和池化层从输入图像中提取特征后,可以使用密集层来组合这些特征并做出最终预测。在CNN 中,密集层通常是最后一层,用于生成输出预测。前几层的激活被展平并作为输入传递到密集层,密集层执行输入的加权和并应用激活函数来产生最终输出。

图片

图 8:致密层 

卷积神经网络的好处、优势

  1. 特征提取: CNN 能够自动从输入图像中提取相关特征,从而减少手动特征工程的需要。

  1. 空间不变性: CNN 可以识别图像中的对象,无论其位置、大小或方向如何,这使得它们非常适合对象识别任务。

  1. 抗噪声鲁棒性 CNN 通常可以处理噪声或杂乱的图像,这使得它们对于图像质量可能变化的实际应用非常有用。

  1. 迁移学习: CNN 可以利用预先训练的模型,减少训练新模型所需的数据量和计算资源。

  2. 性能: CNN 在一系列计算机视觉任务上展示了最先进的性能,包括图像分类、对象检测和语义分割。

卷积神经网络的局限性:

  1. 计算成本:训练深度 CNN 的计算成本可能很高,需要大量数据和计算资源。

  2. 过度拟合:深度 CNN 很容易过度拟合,尤其是在小数据集上训练时,模型可能会记住训练数据,而不是泛化到新的、看不见的数据。

  3. 缺乏可解释性: CNN 被认为是“黑匣子”模型,因此很难理解为什么会做出特定的预测。

  4. 仅限于网格状结构: CNN 仅限于网格状结构,无法处理不规则形状或非网格状数据结构。


结论:

总之,卷积神经网络(CNN)是一种强大的深度学习架构,非常适合图像分类和对象识别任务。

凭借自动提取相关特征、处理噪声图像和利用预训练模型的能力,CNN 在一系列计算机视觉任务中展示了最先进的性能。

然而,它们也有其局限性,包括计算成本高、过度拟合、缺乏可解释性以及处理不规则形状的能力有限。

尽管如此,CNN 仍然是许多计算机视觉任务的热门选择。

— 完 —

图片

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多