卷积神经网络(CNN)

大家好,这里是七七,今天来更新关于CNN相关的内容同了。本文是针对CNN原理的说明,但对于小白不是非常友好,建议先掌握神经网络相应知识再进行阅读哦。


一、卷积与互相关

卷积

卷积运算是对两个函数进行的一种数学运算,结果是一个新的函数,如果第一个函数为f(x),第二个为g(x),那么其卷积运算被定义为

对于这种运算,如果用手算的话,我们一般先画出f(t),再画出g(t),然后再对g(t)沿y轴翻过去变为g(-t),然后根据偏移量x来进行平移,最后再相乘,就可以得到对应点的卷积值了

值得一提的是,卷积运算满足交换律

互相关

互相关运算与卷积运算极为相似,其公式是这样的

计算过程同上,不再赘述。

值得一提的是,互相关运算不满足交换律

二、卷积核与特征映射图

在图像处理领域中,我们经常使用卷积神经网络(CNN)来进行处理。一般来说,用卷积操作或互相关操作,两者的作用是完全相同的。但出于算法简便性考虑,一般用互相关运算。其实很多神经网络平台提供的库函数中所使用的就是互相关而非卷积,但习惯地称之为卷积。

再用CNN处理图像时,待处理的图像称之为输入,并表示为一个二元离散函数f(m,n)。为了从图片中提取出来特征,我们还需要另一个函数与图像进行卷积,从而提取出相应的特征,而对应的函数就是卷积核,或核函数g(n,m)。卷积的结果是一个新的二元离散函数,被称为特征映射图。这一过程被称为特征提取。

三、CNN的一般结构

  1. 在第二部介绍过特征提取物过程,就是用核函数与原始数据进行卷积,从而提取出特征。
  2. 下一步就是用激活函数对特征映射图进行非线性处理,如把小于0的数据都变为0。
  3. 接着就是采用池化函数分别对特征图进行池化,原理就是使用图像中某个位置及其周边相邻位置的总体统计特征来代替该位置的取值。可以采用最大池化、平均池化等一系列方法。池化的目的是亚索图像的尺寸,凸显特征。
  4. 最后呢,就是需要将池化后的数据展开为1维的数据,然后投入MLP中进行训练。

在这一过程中,也有一些术语,这里简要介绍一下

  • 卷积级:将原始图像与核函数进行卷积这一过程
  • 探测级:用激活函数对特征映射图进行非线性处理
  • 池化级:池化这一过程
  • 卷积层:卷积级、探测级、池化级合起来

因此呢,框架也就基本确定了,CNN的一般架构在大的层面上可分为卷积层+MLP层。其中卷积层权值不变,MLP层权值会改变。

当然,也可以设立很多个卷积层1、卷积层2......;卷积层中也可能存在某些带训练的参数(如偏移量)。

三、边界策略和池化

边界策略

一般来说,输入图像的尺寸远大于核函数的尺寸,而特征图的尺寸不仅取决于原始尺寸和核函数,与边界策略也有关系。

所幸的是,边界策略一般不是那么重要,因为一般来说,图像的特征更多会集中在中心,与边界关系不大

池化

这里比较重要的是步幅,就是每次池化窗口移动的距离。最为常见的情况是等于池化窗口边长-1。

池化还有一个很重要的特征,就是对局部微小位移的不变性。也就是说,被池化的图像中所有像素或部分像素发生了微小位移后,池化的结果并不会发生改变。

相关推荐
北京软秦科技有限公司30 分钟前
IACheck+AI审核如何赋能刑事证据检测?全面提升报告法律效力,构建高标准司法鉴定审核体系
人工智能·安全
QYR_1131 分钟前
香叶醇行业深度解析:香精香料领域核心原料的发展潜力与挑战
大数据·人工智能·物联网
Dylan~~~1 小时前
Redis MCP Server:让 AI 拥有“持久记忆“的革命性方案
数据库·人工智能·redis
mygljx1 小时前
spring-ai 下载不了依赖spring-ai-openai-spring-boot-starter
java·人工智能·spring
hsling松子2 小时前
基于 PaddleOCR-VL 与 PaddleFormers 的多模态文档解析微调项目
人工智能·计算机视觉·语言模型·自然语言处理·ocr
AEIC学术交流中心2 小时前
【快速EI检索 | ACM出版】第三届数字化社会与人工智能国际学术会议(DSAI 2026)
人工智能
Lynn_mg2 小时前
Opencv,contrib安装
人工智能·opencv·计算机视觉
User_芊芊君子2 小时前
2026最新Python+AI入门指南:从零基础到实战落地,避开90%新手坑
开发语言·人工智能·python
lzq6032 小时前
如何利用AI生成可视化图表(统计图、流程图、思维导图……)免代码一键绘制图表
人工智能·aigc·数据可视化