【机器学习】 卷积神经网络 (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. 文字处理

    • 卷积网络的核心是捕捉局部特征。在文本处理中,若干单词组成的滑动窗口就构成了局部特征。
    • 对特征进行组合和筛选,获取不同层次的语义信息。
    • 只在时间方向上使用卷积,因为不同维度的文字意义是相互独立的。
相关推荐
新缸中之脑2 小时前
Paperless-NGX实战文档管理
人工智能
无极低码3 小时前
ecGlypher新手安装分步指南(标准化流程)
人工智能·算法·自然语言处理·大模型·rag
grant-ADAS3 小时前
记录paddlepaddleOCR从环境到使用默认模型,再训练自己的数据微调模型再推理
人工智能·深度学习
炎爆的土豆翔4 小时前
OpenCV 阈值二值化优化实战:LUT 并行、手写 AVX2 与 cv::threshold 性能对比
人工智能·opencv·计算机视觉
智能相对论4 小时前
从AWE看到海尔智慧家庭步步引领
人工智能
云和数据.ChenGuang4 小时前
魔搭社区 测试AI案例故障
人工智能·深度学习·机器学习·ai·mindstudio
小锋学长生活大爆炸4 小时前
【工具】无需Token!WebAI2API将网页AI转为API使用
人工智能·深度学习·chatgpt·openclaw
昨夜见军贴06164 小时前
AI审核赋能司法鉴定:IACheck如何保障刑事证据检测报告精准无误、经得起推敲?
人工智能
测试_AI_一辰4 小时前
AI系统到底怎么测?一套六层测试框架(Agent案例)
人工智能·功能测试·需求分析·ai编程
运维小欣4 小时前
智能体选型实战指南
运维·人工智能