卷积神经网络 - 基本概念

前馈网络包括全连接前馈网络(就是前面博文中介绍的前馈神经网络)和卷积神经网络,本文开始,我们来认识和学习卷积神经网络。

卷积神经网络主要使用在图像和视频分析的各种任务(比如图像分类、人 脸识别、物体识别、图像分割等)上,其准确率一般也远远超出了其他的神经网络模型。近年来卷积神经网络也广泛地应用到自然语言处理、推荐系统等领域。

在正式开始学习之前,我们来了解一些基本概念。

一、全连接前馈网络存在的问题

1、参数太多

如果输入图像大小为 100 × 100 × 3(即图像高度为 100,宽度为100 以及 RGB 3 个颜色通道),在全连接前馈网络中,第一个隐藏层的每个神经元到输入层都有 100 × 100 × 3 = 30000 个互相独立的连接,每个连接都对应一个权重参数。随着隐藏层神经元数量的增多,参数的规模也会急剧增加。这会导致整个神经网络的训练效率非常低,也很容易出现过拟合。

2、全连接前馈网络很难提取局部不变性特征

局部不变性特征指的是图像中某个局部区域的特征能够在经历小幅平移、旋转或缩放等变化后保持稳定,不会因为这些局部变化而大幅改变。这一性质对于图像识别非常重要,因为它允许模型专注于识别局部模式,而不必过分担心对象在图像中的具体位置或角度变化。

以卷积神经网络为例:

  • 卷积操作:通过在图像上滑动固定尺寸的卷积核,CNN可以提取局部区域内的特征(如边缘、角落等)。这种局部特征在图像稍有平移时通常不会改变太多,因为卷积核能够捕捉到相同的模式。
  • 池化层:例如最大池化能够将相邻区域内最显著的特征保留下来,从而进一步提高模型对小幅平移或局部变形的鲁棒性。

例如,一个简单的边缘检测滤波器,无论边缘在图像中稍微向左或向右移动,其检测结果大致相同,这就是局部不变性的体现。

自然图像中的物体都具有局部不变性特征,比如尺度缩放、平移、旋转等操作不影响其语义信息。而全连接前馈网络很难提取这些局部不变性特征,一般需要进行数据增强来提高性能。

二、卷积神经网络与全连接前馈网络对比的优势

卷积神经网络是受生物学上感受野机制的启发而提出的。

感受野(Recep- tive Field)机制主要是指听觉、视觉等神经系统中一些神经元的特性,即神经元只接受其所支配的刺激区域内的信号。在视觉神经系统中,视觉皮层中的神经细胞的输出依赖于视网膜上的光感受器。视网膜上的光感受器受刺激兴奋时,将神经冲动信号传到视觉皮层,但不是所有视觉皮层中的神经元都会接受这些信号。一个神经元的感受野是指视网膜上的特定区域,只有这个区域内的刺激才能够激活该神经元。

目前的卷积神经网络一般是由卷积层、汇聚层和全连接层交叉堆叠而成的前馈神经网络。卷积神经网络有三个结构上的特性:局部连接、权重共享以及汇聚。这些特性使得卷积神经网络具有一定程度上的平移、缩放和旋转不变性。和全连接前馈神经网络相比,卷积神经网络的参数更少。

三、RGB&MNIST数据集&数据增强

1、RGB

RGB 是一种颜色模型,其中“R”、“G”、“B”分别代表红(Red)、绿(Green)和蓝(Blue)。在这种模型中,一个颜色通常由三个分量构成,每个分量表示对应颜色光的强度。数字图像会将每个像素分为三个通道:红色通道、绿色通道和蓝色通道,通过调整这三个通道的值,可以混合出各种颜色。这一模型广泛应用于数字显示设备、摄影和计算机图形学中。

对于光的加色模型(如显示器、电视等),基本色确实是RGB——红、绿、蓝。这三种光波经过不同比例叠加,可以组合出各种颜色,最终混合可产生白光。

因此对于上面所举的例子,“输入图像大小为 100 × 100 × 3”,3就是指三个颜色通道,每个通道都有100*100个像素,因此一共是100 × 100 × 3 = 30000个像素。

2、MNIST数据集

MNIST 全称是 Modified National Institute of Standards and Technology 数据库,是机器学习领域中一个非常经典的手写数字数据集。它包含了大约 70,000 张 28×28 像素的灰度图像,其中 60,000 张用于训练,10,000 张用于测试。每张图像中的数字是 0 到 9 之间的手写数字。这个数据集经过预处理、归一化,非常适合作为图像分类算法(如前馈神经网络、卷积神经网络等)的基准测试集,也常被用来教学和实验,以验证新算法的性能和效果。

这种数据集的设计目标是提供一个简单而统一的标准,使得研究者和开发者可以在同一数据集上比较不同算法的准确率和效率,从而推动图像识别技术的发展。

3、数据增强

数据增强(Data Augmentation)是一种在训练机器学习模型时扩充数据集的方法,通过对已有图像进行各种变化操作(而这些变化不会改变图像的语义信息),从而生成新的训练样本。这种方法可以帮助模型更好地学习到自然图像中物体在尺度、平移、旋转等方面的局部不变性,提高模型的泛化能力。

例如,在图像识别任务中,如果你有一张包含猫的图像,你可以对这张图像进行以下几种操作来“增强”数据集:

  • 平移:将图像稍微向左、右、上或下移动。
  • 旋转:将图像旋转一定角度(例如 ±10°、±15°)。
  • 尺度缩放:对图像进行放大或缩小操作。
  • 翻转:水平或垂直翻转图像。
  • 颜色变换:调整亮度、对比度或饱和度。

这些操作会生成一系列新的图像样本,每个样本在视觉上与原始图像保持相似的语义,但具有不同的外观。这样,模型在训练时就能接触到更多样化的数据,从而更鲁棒地识别同一物体在不同条件下的表现。

简而言之,数据增强就是利用上述变换方法在不改变图像内容的前提下人为“制造”出更多样本,帮助模型学会对常见的图像变换保持不敏感,提升最终的识别效果。

四、感受野机制

感受野(Receptive Field)最初是神经科学中的一个概念,用来描述单个神经元在视觉皮层中能够“看到”或响应的视野区域。通俗地说,就像每个神经元都有一扇小窗户,只能看到窗户内的一部分图像信息,而看不到全局。这种局部视野使得神经元能够专注于捕捉图像中的局部特征,比如边缘、角落或纹理。

在卷积神经网络(CNN)中,这一思想得到了很好的应用:

  • 卷积核和局部连接每个卷积核(滤波器)在输入图像上滑动时,只处理其覆盖的那一小块区域。这一小块区域就相当于该卷积神经元的感受野。
  • 层级特征提取:通过多层卷积,低层的局部特征(如边缘)可以在更深层中组合成更抽象的全局特征(如形状或物体的一部分)。

简单例子
假设有一幅图像,我们用一个大小为3×3的卷积核来进行卷积操作:

  • 当卷积核在图像上滑动时,每次只会“看到”图像中3×3的局部区域。
  • 无论这个局部区域在整个图像中出现的位置如何,只要局部模式(比如一条边)相似,卷积核就能检测到相同的特征。
  • 随着网络层数的增加,前几层小感受野内提取出的特征会在后续层中整合,形成更大的“有效感受野”,从而捕捉到更大范围的图像结构。

这种局部连接与共享参数的机制,使得卷积神经网络在处理图像时具有很好的平移、缩放和旋转的不变性,同时大大减少了参数数量,从而提高了学习效率和泛化能力。

五、卷积神经网络的特性:局部连接、权重共享、汇聚

1、局部连接

像用「放大镜」扫描图片

想象你拿放大镜在照片上滑动检查细节:

  • 传统神经网络:每次都要同时观察整张照片(全连接)

  • CNN的局部连接:每次只看放大镜框住的局部区域(如3x3的小方块)

举个实际例子:
要识别「猫耳朵」,传统方法需要同时分析整张猫的照片(包括尾巴、背景等无关区域),而CNN的局部连接会先聚焦在图片左上角的尖耳朵形状,再移动到右下角的另一只耳朵。就像拼图时逐个区域观察,而不是一次性记住整张拼图

2、权重共享

像用「同一把尺子」量遍全场

假设你有一把专门测量「条纹密度」的尺子:

  • 传统神经网络:每个位置需要不同的尺子(每个区域独立参数)

  • CNN的权重共享:用同一把尺子扫描全图所有位置

举个实际例子:
要识别斑马条纹,传统方法需要为图片每个位置定制专用检测器(检测左上角的条纹用A参数,检测右下角的条纹用B参数)。而CNN会用同一组参数(同一把「条纹检测器」)扫过整张图片——无论条纹在图片左上角还是右下角,都用同一标准判断

对比总结:

传统神经网络CNN的局部连接+权重共享
工作方式全图同时分析用放大镜分块扫描
参数特点每个位置独立参数全图共用同一组检测器
类比给每个学生发不同的试卷全班用同一份试卷考试
优势理论上有更强拟合能力减少参数,更擅长找重复特征

3、汇聚

我们可以用「渔网捞鱼」的比喻来理解汇聚(Pooling)这个概念:

(一)直观比喻

假设你有一张渔网(卷积层提取的特征图),现在要缩小渔网范围同时保留最重要的鱼:

  • 最大池化(最常用):只保留渔网每个网格中最大的鱼(最显著特征)

  • 平均池化:取渔网每个网格中鱼的平均大小(平滑特征)

实际效果:
原始渔网 → 对每个2x2网格操作 → 新渔网尺寸缩小一半,但保留了主要的大鱼(关键特征)

(二)技术解析

1. 核心作用
作用维度具体表现
降维压缩将特征图尺寸缩小2-4倍(如从224x224→112x112),极大减少后续计算量
特征抽象通过取最大值/平均值,保留最显著特征,过滤噪声(如忽略猫耳朵边缘的杂毛)
平移不变性微小位移不影响最大池化结果(猫耳朵移动5像素仍能被检测)
防止过拟合减少参数量的同时引入轻微扰动,增强泛化能力
2. 操作示例(2x2最大池化)

假设输入特征图:

[[255, 128, 30,  20],[ 64, 224, 48, 100],[ 80,  32, 175, 45],[ 92,  45,  60, 210]]

池化过程:

  • 每个2x2窗口取最大值:

    [[255, 128 | 30, 20]       → 255 | 100[ 64, 224 | 48, 100] --------------------[ 80, 32  | 175, 45]      → 92  | 210[ 92, 45  | 60, 210]]
  • 输出结果:

[[255, 100],[ 92, 210]]

(三)与CNN前两个特性(局部连接和权重共享)的关系

完整工作流比喻:

  1. 局部连接:用放大镜扫描图片找特征(卷积核局部感知)

  2. 权重共享:用同一把尺子量遍全图(卷积核复用)

  3. 汇聚:把找到的特征打包压缩(保留最关键信息)

类比拼图游戏:

  • 局部连接 → 仔细检查每个拼图碎片

  • 权重共享 → 用相同方法检查所有碎片

  • 汇聚 → 把4个小碎片合并成1个大块(保留碎片中最明显的图案)

(四)经典结构对比

网络名称池化策略特殊设计
LeNet-5平均池化早期使用手工特征+池化结合
AlexNet重叠最大池化(3x3,步长2)首次证明最大池化的优越性
VGGNet严格2x2最大池化通过堆叠小池化保持信息连续性
ResNet1x1卷积+步长2代替部分池化用卷积下采样实现更灵活的特征保留

(五)现代演进趋势

  1. 可替代性

    • 用步长>1的卷积直接实现下采样(如ResNet)

    • 空洞卷积扩大感受野避免池化信息损失

  2. 自适应池化

    • 全局平均池化(GAP)替代全连接层(如SENet)

    • 空间金字塔池化(SPP)处理任意尺寸输入

  3. 可学习池化

    • 使用带参数的加权池化(Learned Pooling)

    • 注意力机制引导的特征选择(如SKNet)

总结理解:
汇聚(池化)就像给CNN安装了一个「智能压缩器」——在保留最核心特征的前提下,把数据量压缩到可处理的规模,同时让网络对特征的微小位移变得不敏感。 这种特性使得CNN既能深入捕捉细节,又不至于被海量数据淹没,是处理高维视觉数据的关键设计之一。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/35562.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

微软开源神器OmniParser V2.0 介绍

微软开源的OmniParser V2.0是一款基于纯视觉技术的GUI智能体解析工具,旨在将用户界面(UI)截图转换为结构化数据,从而实现对计算机屏幕上的可交互元素的高效识别和操控。这一工具通过结合先进的视觉解析技术和大型语言模型&#xf…

用python代码将excel中的数据批量写入Json中的某个字段,生成新的Json文件

需求 需求: 1.将execl文件中的A列赋值给json中的TrackId,B列赋值给json中的OId 要求 execl的每一行,对应json中的每一个OId json 如下: {"List": [{"BatchNumber": "181-{{var}}",// "Bat…

实验篇| Nginx环境搭建-安全配置

在前面的文章里,阿祥详细介绍了在 Windows 系统中安装 Nginx 服务器的具体操作步骤,感兴趣的朋友可以参考:实验篇 | Nginx 反向代理 - 7 层代理 。完成 Nginx 的安装只是搭建 Web 服务的第一步,为了保障服务器的稳定运行以及数据安…

理解我们单片机拥有的资源

目录 为什么要查询单片机拥有的资源 所以,去哪些地方可以找数据手册 一个例子:STM32F103C8T6 前言 本文章隶属于项目: Charliechen114514/BetterATK: This is a repo that helps rewrite STM32 Common Repositorieshttps://github.com/C…

从零开始 | C语言基础刷题DAY3

❤个人主页&#xff1a;折枝寄北的博客 目录 1.打印3的倍数的数2.从大到小输出3. 打印素数4.打印闰年5.最大公约数 1.打印3的倍数的数 题目&#xff1a; 写一个代码打印1-100之间所有3的倍数的数字 代码&#xff1a; int main(){int i 0;for (i 1; i < 100; i){if (i % …

Blender材质 - 层权重

层权重 混合着色器 可以让 面朝向的一面显示一种材质 另一面显示另一种材质 就能实现挺不错的材质效果 移动视角 材质会跟着变化 有点类似虚幻的视差节点BumpOffset

3个 Vue $set 的应用场景

大家好&#xff0c;我是大澈&#xff01;一个喜欢结交朋友、喜欢编程技术和科技前沿的老程序员&#x1f468;&#x1f3fb;‍&#x1f4bb;&#xff0c;关注我&#xff0c;科技未来或许我能帮到你&#xff01; 在 Vue2 中&#xff0c;由于 Object.defineProperty 的限制&#…

Flutter_学习记录_ ImagePicker拍照、录制视频、相册选择照片和视频、上传文件

插件地址&#xff1a;https://pub.dev/packages/image_picker 添加插件 添加配置 android无需配置开箱即用&#xff0c;ios还需要配置info.plist <key>NSPhotoLibraryUsageDescription</key> <string>应用需要访问相册读取文件</string> <key>N…

LeetCode 解题思路 19(Hot 100)

解题思路&#xff08;递归&#xff09;&#xff1a; 终止条件&#xff1a; 若节点为空&#xff0c;返回深度0。递归步骤&#xff1a; 分别计算左子树和右子树的最大深度&#xff0c;取较大者并加1&#xff08;当前节点&#xff09;。 Java代码&#xff1a; class Solution {…

如何启用 HTTPS 并配置免费的 SSL 证书

引言 HTTPS 已成为现代网站安全性的基础要求。通过 SSL/TLS 证书对数据进行加密&#xff0c;不仅可以保护用户隐私&#xff0c;还能提升搜索引擎排名并增强用户信任。本指南将详细介绍如何通过 Lets Encrypt&#xff08;免费、自动化的证书颁发机构&#xff09;为您的网站启用…

element-plus中Popconfirm气泡确认框组件的使用

1、基本使用 从element-plus官网复制代码&#xff1a; <template><el-popconfirm title"Are you sure to delete this?"><template #reference><el-button>Delete</el-button></template></el-popconfirm> </template…

软件需求分类、需求获取(高软46)

系列文章目录 软件需求分类&#xff0c;需求获取 文章目录 系列文章目录前言一、软件需求二、获取需求三、真题总结 前言 本节讲明软件需求分类、需求获取的相关知识。 一、软件需求 二、获取需求 三、真题 总结 就是高软笔记&#xff0c;大佬请略过&#xff01;

10、基于osg引擎生成热力图高度图实现3D热力图可视化、3D热力图实时更新(带过渡效果)

1、结果 2、完整C代码 #include <sstream> #include <iomanip> #include <iostream> #include <vector> #include <random> #include <cmath> #include <functional> #include <osgViewer/viewer> #include <osgDB/Read…

鸿蒙应用程序包HAP的开发与使用

1、HAP是什么&#xff1f; HAP&#xff08;Harmony Ability Package&#xff09;是应用安装和运行的基本单元。HAP包是由代码、资源、第三方库、配置文件等打包生成的模块包&#xff0c;其主要分为两种类型&#xff1a;entry和feature。 entry&#xff1a;应用的主模块&#x…

【Mac】安装 Parallels Desktop、Windows、Rocky Linux

一、安装PD 理论上&#xff0c;PD只支持试用15天&#xff01;当然&#xff0c;你懂的。 第一步&#xff0c;在 Parallels Desktop for Mac 官网 下载 Install Parallels Desktop.dmg第二步&#xff0c;双击 Install Parallels Desktop.dmg 第三步&#xff0c;双击安装Paralle…

matlab 自适应模糊PID在反应釜温度控制中的应用

1、内容简介 matlab163-自适应模糊PID在反应釜温度控制中的应用 可以交流、咨询、答疑 2、内容说明 略摘要:针对工业过程控制具有时变、滞后、非线性等特点,在传统 PID 控制中融入模糊控制的功能,形成了新的参数自 适应模糊 PID 控制器,并把它应用在化工制药中常用的反应釜温度…

基于FPGA的3U机箱温度采集板PT100,应用于轨道交通/电力储能等

板卡简介&#xff1a; 本板为温度采集板&#xff08;PT100&#xff09;&#xff0c;对目标进行测温&#xff0c;然后将温度转换成处理器可识别的电流信号。 性能规格&#xff1a; 电源&#xff1a;DC5V&#xff0c;DC15V 4线制PT100&#xff1a;7路&#xff08;标称测温范围…

管家婆实用贴-如何设置打印机共享

很多商家在使用管家婆软件经营日常业务时会有多个操作员多台电脑需要打印&#xff0c;但是不想每台电脑配置一台打印机&#xff0c;一台电脑专门用来打印又浪费设备。遇到这种情况时可以将插线电脑上的打印机共享给其他的电脑一起使用&#xff0c;方便又高效。今天来和小编一起…

Qt QML实现视频帧提取

## 前言 视频帧率&#xff08;Frame Rate&#xff09;是指视频播放时每秒显示的画面帧数&#xff0c;通常用fps&#xff08;Frames Per Second&#xff09;来表示。视频是由一系列静止的图像帧组成的&#xff0c;而视频帧率则决定了这些图像帧在单位时间内播放的速度。较高的视…

LabVIEW压比调节器动态试验台

本案介绍了一种基于LabVIEW的压比调节器动态试验台的设计&#xff0c;通过实用的LabVIEW图形化编程语言&#xff0c;优化了数据采集与处理的整个流程。案例通过实际应用展示了设计的专业性与高效性&#xff0c;以及如何通过系统化的方法实现精确的动态测试和结果分析。 ​ 项目…