CNN细节
2024-09-13 01:38:51
1、各层作用
输入层
输入层是整个神经网络的输入,一般代表的是图片的像素矩阵(一般为三维矩阵,即像素x像素x通道)卷积层
每一层卷积都会提取数据特征,再经过组合和抽象形成更高阶的特征。池化层
保留最显著的特征,提升模型的畸变容忍能力(平移不变性)。池化层可以非常有效地缩小图片的尺寸。从而减少最后全连接层的参数,在加快计算速度的同时也防止了过拟合的产生,提高了模型的泛化能力。最大池化层(max pooling),计算图像区域内最大值,提取纹理效果较好;平均池化层(mean pooling),计算图像区域的平均值,保留背景更好。全连接层
图像中被抽象成了信息含量更高的特征在经过神经网络完成后续分类等任务。输出层
一般是使用softmax输出概率值或者分类结果。
2、feature map尺寸计算
2.1 卷积层
输入图片的尺寸大小W1 x H1
卷积核(又称滤波器)的大小F x F
输出图片的尺寸大小W2 x H2
stride:S
padding:P
关系式如下:
W2 = (W1-F+2P)/S + 1
H2 = (H1-F+2P)/S + 1
2.2 池化层
输入图片的尺寸大小W1 x H1
卷积核(又称滤波器)的大小F x F
输出图片的尺寸大小W2 x H2
stride:S
关系式如下:
W2 = (W1-F)/S + 1
H2 = (H1-F)/S + 1
3、权值共享
每一个卷积层中使用的过滤器参数是相同的,这就是卷积核的权值共享
- 从直观上理解,共享卷积核可以使得图像上的内容不受位置的影响,这提高了模型对平移的容忍性,这大大的提高了模型提取特征的能力
- 从网络结构上来说,共享每一个卷积层的卷积核,可以大大减少网络的参数,这不仅可以降低计算的复杂度,而且还能减少因为连接过多导致的严重过拟合,从而提高了模型的泛化能力。
最新文章
- Maven的配置和使用(一)
- Java项目JUnit简单使用
- Docker私有仓库 Registry中的镜像管理
- Arduino I2C + 三轴加速度计LIS3DH
- 奇怪的cab_xxxx_x文件
- jquery checkbox 选中 全选 插件
- django访问sqlserver中的坑
- Spring Security(18)——Jsp标签
- AI 人工智能 探索 (七)
- C#标识符
- 安装Apache提示APR not found的解决办法
- iOS下JS与OC互相调用(五)--UIWebView + WebViewJavascriptBridge
- PYTHON风格规范-Google 开源项目风格指南
- Redis in .NET Core 入门:(1) 安装和主要功能简介
- bzoj 2527: [Poi2011]Meteors
- python实现的简单点对点(p2p)聊天
- MAC 无脑编译OpenCV
- asp.net core跨平台开发从入门到实战文摘
- HTML(一)基础
- 用户空间程序的函数跟踪器 (Function Tracer)
热门文章
- 封装个StringBuffer,用array join的方式拼接字符串
- c++优先队列(堆)
- 【Asp.net入门11】第一个ASP.NET 应用程序-创建摘要视图
- PDF文本内容批量提取到Excel
- 2016/1/3 Python中的多线程(2):threading模块
- 2015/12/12 考了PAT,又回来玩Python了。
- python核心编程笔记——Chapter8
- 发现IE 9的一个独有的小bug,并附解决方案
- springboot中使用Scheduled定时任务
- vue_router 动态路由