当前位置: 首页 > news >正文

神经网络中卷积和池化的区别

1、什么叫卷积?

卷积层是用一个固定大小的矩形区去席卷原始数据,将原始数据分成一个个和卷积核大小相同的小块,然后将这些小块和卷积核相乘输出一个卷积值(注意这里是一个单独的值,不再是矩阵了)。

卷积的本质就是用卷积核的参数来提取原始数据的特征,通过矩阵点乘的运算,提取出和卷积核特征一致的值,如果卷积层有多个卷积核,则神经网络会自动学习卷积核的参数值,使得每个卷积核代表一个特征。

卷积首先要定义一个卷积核,卷积核通常是一个正方形,长宽就是卷积核的尺寸,比如(2,2)的卷积核,表示用:

[W11  W12

W21 W22]

大小的卷积核来对原始数据进行卷积。卷积核的权重参数w11-w22就是该卷积核的特征值,卷积结果是输入数据和卷积核的内积和全加运算。

首先我们需要知道什么是卷积计算,它其实是一种简单数学运算,有两个步骤:一个是矩阵内积乘法,另一个是将内积乘法的结果进行全加。

(1)矩阵内积乘法

矩阵的内积乘法非常简单,就是把两个相乘的矩阵,相同位置的元素进行乘法运算,这个时候会得到一个新的矩阵(在这里我们需要注意一下,卷积是在作矩阵内积乘法,而不是矩阵乘法)。

(2)全加计算

这个新矩阵的全部值会进行相加,然后会得到一个值,这个值才是卷积运算的结果。

2、什么是池化

池化(Pooling):也称为欠采样或下采样。主要用于特征降维,压缩数据和参数的数量,减小过拟合,同时提高模型的容错性。比如以(2,2)作为一个池化单位,其含义就是每次将2*2=4个特征值根据池化算法合并成一个特征值,常用的池化算法有以下几种:

  1. 平均值:取4个特征值的平均值作为新的特征值。
  2. 最大值:取4个特征值中最大值作为新的特征值。
  3. 最小值:取4个特征值中最小值作为新的特征值。

3、特征图像与卷积核

对于实际的卷积过程中,它一方面有输入图像,这些输入图像被称作是特征图像(注:卷积神经网络中,原始的输入是真实的图像,经过卷积后会生成特征图像),另一方面还需要有卷积核。

卷积核的值是人为设定的,它是可以调节的,在实际的卷积神经网络中,卷积核的值就是网络的参数。对卷积网络进行训练,就是在调节这些卷积核心的参数。在实际中一般不会用太大的卷积核,常见的卷积核大小有3*3,5*5,1*1的大小。

特征图像和卷积核都是以矩阵的形式存在,因此它们可以进行卷积计算。卷积计算的输入不仅可以是图像,还可以是其它的二维矩阵信息(当然还有一维和三维的卷积,这里就不多介绍了)。卷积核首先会对特征图像的第一个区域进行卷积运算,这个卷积计算的结果,会作为输出特征图像上的一个点。将像素图中相连的4个像素提取成了一个像素,通俗一点是什么意思呢?读者可以好好体会一下:将一个小区域的图像中的特征提取成用一个值来表示。

总结:

(1)卷积是从一小块图像区域中提取出特征值来表示这一小块区域的内在特征(或者说内在含义)。

(2)池化是将相临的多个特征用一个特征来代替,压缩特征维度。

卷积和池化是图像人工智能应用场景中绕不过去的两种基本处理过程,所以我们还是先了解他俩的内在含义吧。

转载于:什么是卷积和池化-CSDN博客icon-default.png?t=N7T8https://blog.csdn.net/choushi5845/article/details/100747117?spm=1001.2101.3001.6661.1&utm_medium=distribute.pc_relevant_t0.none-task-blog-2~default~BlogCommendFromBaidu~Rate-1-100747117-blog-79964306.235%5Ev38%5Epc_relevant_sort_base1&depth_1-utm_source=distribute.pc_relevant_t0.none-task-blog-2~default~BlogCommendFromBaidu~Rate-1-100747117-blog-79964306.235%5Ev38%5Epc_relevant_sort_base1&utm_relevant_index=1

http://www.lryc.cn/news/188311.html

相关文章:

  • RK3568平台开发系列讲解(驱动篇)RK3568 PWM详解
  • 禾匠商城系统 企业转账到零钱 修改成 商家转账到零钱
  • 点云从入门到精通技术详解100篇-基于激光点云的道路目标检测
  • 【Hello Algorithm】暴力递归到动态规划(一)
  • 凉鞋的 Godot 笔记 107. 脚本窗口文件系统窗口
  • 数据源作用以及spring配置数据源
  • Javaweb中的servlet中的消息体是什么?
  • 饥荒服务器阿里云租用价格表一年和一个月收费报价表
  • 前端 JS 经典:Math 常用方法汇总
  • MongoDB 笔记
  • Maven 项目文档
  • 浏览器中XPath的使用
  • js录制屏幕并输出视频
  • 华为OD机试 - 数组组成的最小数字(Java 2023 B卷 100分)
  • 数据结构-顺序存储二叉树
  • mysql学习实践
  • 键盘控制应用--通过键盘发送控制指令
  • python中pytorch的广播机制——Broadcasting
  • 基于BES平台音乐信号处理之DRC算法实现
  • 如何加快香山处理器Chisel->Verilog编译速度
  • pillow篇---pillow连续打开同一张图片会导致打开失败问题
  • 详细解说iptables 高阶用法,用来完成哪些高效率网络路由策略场景,iptables 实现域名过滤,Linux如何利用iptables屏蔽某些域名?
  • 面试总结-Redis篇章(十二)——Redis是单线程的,为什么还那么快
  • 5.编写程序 超强力方法
  • 超详细DeepLabv3 介绍与使用指南 – 使用 PyTorch 推理
  • 移动应用-Android-开发指南
  • 免费开源的非标项目型制造BOM一键导入方案介绍
  • 用合成数据训练车辆姿态估计神经网络
  • 【QT开发笔记-基础篇】| 第四章 事件QEvent | 4.5 键盘事件
  • 爬取微博热榜并将其存储为csv文件