【机器学习】 卷积神经网络 (CNN)

文章目录

    • [1. 为什么需要 CNN](#1. 为什么需要 CNN)
    • [2. CNN 的架构](#2. CNN 的架构)
    • [3. 卷积层](#3. 卷积层)
    • [4. 池化层](#4. 池化层)
    • [5. CNN 的应用](#5. CNN 的应用)

1. 为什么需要 CNN

  • 前提:利用前置知识,去掉全连接神经网络中的部分参数,提升学习效率。
  • 本质:在 DNN 之前加上 CNN,先去除不必要的参数,再进入 DNN。
  • 常用于图片识别
    • 对图像特征的局部性(稀疏连接)和平移不变性(参数共享)进行处理。
    • 分层特征提取:从低级到高级,捕获图片中的复杂结构。
    • 池化层:降维,减少参数量。

2. CNN 的架构

  1. 特征1(卷积层)

    • 检测局部图案,不需要查看整张图。
    • 满足稀疏连接特性。
  2. 特征2(卷积层)

    • 对不同位置相同的图案,使用相同的参数(Filter)。
    • 满足参数共享特性。
  3. 特征3(池化层)

    • 通过抽样将图片缩小,保留最重要的特征,且不影响最终结构。

3. 卷积层

  • 总体功能:卷积层用于特征提取,通过稀疏连接和权值共享,将输入图像与滤波器进行卷积操作,得到多个特征图

卷积核

  • 特点:过滤器,相当于 DNN 中的神经元,卷积核就是 CNN 中的神经元。

  • 作用:检查图像中是否存在某些图案。

  • 优点:

    • 满足特征1:可以只检测局部区域。
    • 满足特征2:不同位置的图案共享同一卷积核。
  • 注意:卷积核的尺寸会根据输入图像的维度进行调整。

    • 例如:若输入图像维度为 1,卷积核为 3×3,若图像维度为 25,卷积核变为 25×3×3。
  • 通常情况下,多个不同的卷积核被用于构建过滤器,每个卷积核提取不同的特征。

特征映射

  • 过程:卷积核滑动并与图像局部进行卷积操作,得到特征图。
  • 注:卷积后的特征映射维度与卷积核的数量相关,而与当前图像维度无关。
    • 示例:输入 28×28×3,卷积核 3×3×3,核数为 5,步幅 1 → 输出为 26×26×5。

改进

  • 问题:同一个卷积核处理不同大小的图案较为困难。
  • 解决方案:在 CNN 前加一层进行图像加工(如缩小、旋转等处理)。

4. 池化层

功能

  • 池化层将卷积层输出划分为多个区域,从每个区域中提取最大值或平均值,从而减少图像尺寸,同时保持图像特性。
  • 保持平移、伸缩、旋转不变性。
  • 减少参数量,提升模型的泛化能力。

Flatten

  • 过程:池化层操作后,将提取到的特征平铺,输入到 DNN 层进行深度学习。

池化类型

  • 平均池化:对每个区域取平均值,保留整体信息。
  • 最大池化:对每个区域取最大值,提取最显著的特征。

5. CNN 的应用

  1. AlphaGo

    • 只使用了卷积层,不使用池化层。
  2. 语音识别

    • 将语音转为频谱图,卷积核仅在纵坐标(频率)方向上移动,而不在时间序列方向上移动。其他模型用于处理时间序列部分。
  3. 文字处理

    • 卷积网络的核心是捕捉局部特征。在文本处理中,若干单词组成的滑动窗口就构成了局部特征。
    • 对特征进行组合和筛选,获取不同层次的语义信息。
    • 只在时间方向上使用卷积,因为不同维度的文字意义是相互独立的。
相关推荐
周圣贤13 分钟前
区块链、量子与机器学习:边缘计算与云原生的未来互联之路
机器学习·云原生·区块链·边缘计算·量子计算
浮生如梦_14 分钟前
C#Halcon深度学习预热与否的运行时间测试
图像处理·人工智能·深度学习·算法·计算机视觉·c#·视觉检测
可喜~可乐21 分钟前
目标检测入门指南:从原理到实践
人工智能·python·深度学习·目标检测·机器学习·计算机视觉
MediaTea21 分钟前
Ae 效果详解:漩涡条纹
图像处理·人工智能·计算机视觉
goomind34 分钟前
voc格式数据集转换到yolo格式
人工智能·深度学习·yolo
余胜辉1 小时前
基于COT(Chain-of-Thought Prompt)的教学应用:如何通过思维链提示提升模型推理能力
人工智能·自然语言处理·cot·模型推理·教学应用
JINGWHALE11 小时前
设计模式 结构型 适配器模式(Adapter Pattern)与 常见技术框架应用 解析
前端·人工智能·后端·设计模式·性能优化·系统架构·适配器模式
DX_水位流量监测1 小时前
水库水雨情监测系统:水位、雨量、流量等参数全天候实时监测
大数据·开发语言·前端·网络·人工智能·信息可视化
warren@伟_1 小时前
Event-Based Visible and Infrared Fusion via Multi-Task Collaboration
人工智能·python·数码相机·计算机视觉
dundunmm1 小时前
【论文阅读】SCGC : Self-supervised contrastive graph clustering
论文阅读·人工智能·算法·数据挖掘·聚类·深度聚类·图聚类