【机器学习】19. CNN 卷积神经网络 Convolutional neural network

CNN 卷积神经网络 Convolutional neural network

  • [1. CNN 和 传统神经网络的差别](#1. CNN 和 传统神经网络的差别)
  • [2. CNN 的结构](#2. CNN 的结构)
  • [3. 卷积层](#3. 卷积层)
  • [4. strides 步长](#4. strides 步长)
  • [5. Padding](#5. Padding)
  • [6. ReLu](#6. ReLu)
  • [7. Pooling(sub-sampling layer)](#7. Pooling(sub-sampling layer))
  • [8. 全连接层](#8. 全连接层)
  • [9. 三通道特征图](#9. 三通道特征图)
  • 10.总结

1. CNN 和 传统神经网络的差别

传统神经网络不考虑图片的空间结构,CNN通过卷积层和池化层考虑了图片的空间结构。

2. CNN 的结构

INPUT-CONVOLUTIONAL-RELU-POOL-FC

3. 卷积层

在卷积神经⽹络(CNN)中,卷积层是最核⼼的组成部分。卷积的本质就是通过不同的滤器(filter or kernal),多⾓度捕捉图⽚的信息从⽽学习特征,卷积层负责从输⼊图像中提取局部特征,这些特征随着⽹络层级的增加⽽逐渐变得更抽象和复杂。

  • 局部感受野:卷积操作是通过⼀个⼩的滤波器(或卷积核)在输⼊图像上滑动来实现的。这个滤波器只覆盖图像的⼀个⼩区域(局部感受野)。
  • 特征映射:每次滤波器滑过⼀个局部区域时,都会进⾏⼀次点乘和求和操作,⽣成⼀个新的像素值。这样,滤波器便从输⼊图像中提取出⼀个特征映射(或特征图)。

1×1+1×0+1×1+0×0+1×1+1×0+0×1+0×0+1×1=4.

在cnn中,过滤器不是预先设计来检测特定类型的特征,它们的值是在反向传播算法的训练过程中学习的。一个典型的卷积层包含许多过滤器,每个过滤器检测一个不同的特征。

4. strides 步长

水平和垂直步幅。

沿着图像(stride)像素移动滤镜。

更大的步长产生更小的特征图。

5. Padding

Padding可以更好地覆盖图像周围的图像和特征提取。

如果下一个strid将使过滤器达到图像之外,用零填充图像外的区域。

6. ReLu

7. Pooling(sub-sampling layer)

  • 总结上一层的输入
  • 减少参数的数量,并有助于防止过拟合
  • 提高了对接收野移位的鲁棒性。
  • Max Pooling 和Average Pooling分别是选择最大的值和选择平均值作为池化层的输出

    哪种池化的方法好取决于给到的任务. MP会保留⾼频信息,选择特征图中像素值最大的, 所以特别适合较黑的图像中的特征识别. 而AP会使得特征图更加平滑, 减少细节和噪声.

在卷积神经⽹络(CNN)中,池化层通常⽤于减⼩特征图的尺⼨,以减少模型的计算复杂性。同时,池化操作也能增加模型对于⼩的平移和变换的鲁棒性。减⼩尺⼨:池化操作通常会减⼩特征图的尺⼨,从⽽减少后续层需要处理的数据量。增加鲁棒性:池化层能提⾼模型对⼩的平移、旋转和尺度变化的鲁棒性。特征压缩:通过池化,⼀些⾮必要的信息(通常是低层次的、⾼频的信息)会被丢弃,⽽更重要的全局信息会被保留。减少了特征图的尺⼨,有助于减少模型的参数和计算量,使模型更易于训练。

8. 全连接层

在CNN的最后,我们附加了1个或更多的全连接层。

第一个FC层接收最后一层的输出,该层要么是卷积的,要么是池化的

要做的第一件事是使输出展平。

9. 三通道特征图

将三个通道的特征图相加得到最终特征图

10.总结

  • cnn是为图像数据设计的,但也可以应用于其他数据类型
  • 关键要素:卷积、池化和全连接层
  • 卷积层提取特征
  • 池化层汇总来自卷积层的信息,减少参数数量以防止过拟合,并提高对数据移位的鲁棒性。
  • 全连接层结合提取的特征,输出每个类的概率。
  • cnn在图像处理和计算机视觉任务方面非常成功。
相关推荐
Vane14 分钟前
从零开发一个AI插件,经历了什么?
人工智能·后端
70asunflower5 分钟前
2026年前沿人工智能语言模型评估:基于任务驱动的最佳模型选择路径
人工智能·语言模型·自然语言处理
geneculture12 分钟前
《智能通信速分多次传输技术(VDMT)》专利文件的全文汉英双语对照版本
服务器·网络·人工智能·融智学的重要应用·哲学与科学统一性·融智时代(杂志)·人机间性
湘-枫叶情缘14 分钟前
AI 编程时代 DDD 的理论重估:一种面向复杂业务与生成式智能的建模语言
人工智能·设计规范
DogDaoDao15 分钟前
【GitHub】andrej-karpathy-skills:让 AI 编程助手告别三大通病
人工智能·深度学习·程序员·大模型·github·ai编程·andrej-karpathy
Cosolar17 分钟前
一文吃透 LangChain&LangGraph:设计理念、框架结构与内部组件全拆解
人工智能·面试·架构
Joseph Cooper28 分钟前
RAG 与 AI Agent:智能体真的需要检索增强生成吗?
数据库·人工智能·ai·agent·rag·上下文工程
phoenix@Capricornus35 分钟前
卷积表示的错误
机器学习
LaughingZhu40 分钟前
Product Hunt 每日热榜 | 2026-04-29
人工智能·经验分享·深度学习·神经网络·产品运营
FindYou.1 小时前
机器学习day01(机器学习概述 + KNN算法)
人工智能·机器学习