CNN卷积网络基础-卷积核,padding,stride

2024-02-05 02:59

本文主要是介绍CNN卷积网络基础-卷积核,padding,stride,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

使用卷积网络来处理图像数据有两方面原因:
1.图像以像素点信息表示数据,数据之间的关联性由像素位置表征,图像数据中要观察的目标是一块像素区域,用卷积网络提取特征信息可以按块状提起
2.在DNN网络中,网络的架构与输入数据的维度有关,如果用来分析大分辨率的图像,那么网络将会包含很多参数,这样就需要有更多的训练样本来防止过拟合,如果用卷积网络就可以进行区域特征提取,而不用设计大输入维度的网络架构

边缘检测

卷积网络主要用于图像特征的提取,浅层的卷积网络提取边缘,也叫边缘检测,深层的卷积网络提取整体特征。
边缘检测可以参考下面这张图示,可以把有亮度信息的垂直边缘提取出来
在这里插入图片描述
由上面的垂直边缘检测器,可以联想到如下图所示的水平边缘检测器
在这里插入图片描述
早期的图像边缘提取还有经典的soble算子(着重考虑中间像素,提高鲁棒性)、scharr算子
在这里插入图片描述
在卷积网络中,该3x3的过滤器一共包含9个参数,通过反向传播计算就可以获取能提取任意角度的过滤器

padding和stride

在进行卷积操作时,有2个常用的参数设置,padding,stride。
padding有两个用途

1.解决图像经过卷积操作后图像缩小的问题
2.图像不进行padding的话,边缘处像素只会进行一次卷积操作,而中间的像素点则会进行多次卷积操作,这样边缘像素的信息就会有损失

在这里插入图片描述
下图展示了一个padding为1的图像卷积运算,经过卷积运算后,图像大小不变
在这里插入图片描述
( 6 + 2 ∗ p a d d i n g − k e r n e l + 1 ) → 6 ∗ 6 (6+2*padding-kernel+1)\rightarrow 6*6 (6+2paddingkernel+1)66
在一些深度学习网络框架中,在设置卷积层时,可设置不同的模式,常设置valid 和same,其中的区别可参考卷积的三种模式:full, same, valid

stride用于设置卷积移动的步幅,卷积特征图尺寸计算公式: F o = ⌊ F i n + 2 × p − k s ⌋ + 1 F_o=\lfloor \frac{F_{in}+2\times p - k}{s} \rfloor +1 Fo=sFin+2×pk+1 式中2p表示对图像的上下左右各填充p个像素,式中 ⌊ ⌋ \lfloor\rfloor 是向下取整的符号,意思是除不尽的时候向下取整,k代表卷积核的尺寸,s就是步长,在卷积网络中特征尺寸的计算可参考我的一篇博文深度学习网络-AlexNet

这篇关于CNN卷积网络基础-卷积核,padding,stride的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/679576

相关文章

从基础到进阶详解Pandas时间数据处理指南

《从基础到进阶详解Pandas时间数据处理指南》Pandas构建了完整的时间数据处理生态,核心由四个基础类构成,Timestamp,DatetimeIndex,Period和Timedelta,下面我... 目录1. 时间数据类型与基础操作1.1 核心时间对象体系1.2 时间数据生成技巧2. 时间索引与数据

安装centos8设置基础软件仓库时出错的解决方案

《安装centos8设置基础软件仓库时出错的解决方案》:本文主要介绍安装centos8设置基础软件仓库时出错的解决方案,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐... 目录安装Centos8设置基础软件仓库时出错版本 8版本 8.2.200android4版本 javas

Linux基础命令@grep、wc、管道符的使用详解

《Linux基础命令@grep、wc、管道符的使用详解》:本文主要介绍Linux基础命令@grep、wc、管道符的使用,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐... 目录grep概念语法作用演示一演示二演示三,带选项 -nwc概念语法作用wc,不带选项-c,统计字节数-

python操作redis基础

《python操作redis基础》Redis(RemoteDictionaryServer)是一个开源的、基于内存的键值对(Key-Value)存储系统,它通常用作数据库、缓存和消息代理,这篇文章... 目录1. Redis 简介2. 前提条件3. 安装 python Redis 客户端库4. 连接到 Re

Linux网络配置之网桥和虚拟网络的配置指南

《Linux网络配置之网桥和虚拟网络的配置指南》这篇文章主要为大家详细介绍了Linux中配置网桥和虚拟网络的相关方法,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 一、网桥的配置在linux系统中配置一个新的网桥主要涉及以下几个步骤:1.为yum仓库做准备,安装组件epel-re

SpringBoot基础框架详解

《SpringBoot基础框架详解》SpringBoot开发目的是为了简化Spring应用的创建、运行、调试和部署等,使用SpringBoot可以不用或者只需要很少的Spring配置就可以让企业项目快... 目录SpringBoot基础 – 框架介绍1.SpringBoot介绍1.1 概述1.2 核心功能2

python如何下载网络文件到本地指定文件夹

《python如何下载网络文件到本地指定文件夹》这篇文章主要为大家详细介绍了python如何实现下载网络文件到本地指定文件夹,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下...  在python中下载文件到本地指定文件夹可以通过以下步骤实现,使用requests库处理HTTP请求,并结合o

Spring Boot集成SLF4j从基础到高级实践(最新推荐)

《SpringBoot集成SLF4j从基础到高级实践(最新推荐)》SLF4j(SimpleLoggingFacadeforJava)是一个日志门面(Facade),不是具体的日志实现,这篇文章主要介... 目录一、日志框架概述与SLF4j简介1.1 为什么需要日志框架1.2 主流日志框架对比1.3 SLF4

Spring Boot集成Logback终极指南之从基础到高级配置实战指南

《SpringBoot集成Logback终极指南之从基础到高级配置实战指南》Logback是一个可靠、通用且快速的Java日志框架,作为Log4j的继承者,由Log4j创始人设计,:本文主要介绍... 目录一、Logback简介与Spring Boot集成基础1.1 Logback是什么?1.2 Sprin

Linux高并发场景下的网络参数调优实战指南

《Linux高并发场景下的网络参数调优实战指南》在高并发网络服务场景中,Linux内核的默认网络参数往往无法满足需求,导致性能瓶颈、连接超时甚至服务崩溃,本文基于真实案例分析,从参数解读、问题诊断到优... 目录一、问题背景:当并发连接遇上性能瓶颈1.1 案例环境1.2 初始参数分析二、深度诊断:连接状态与