cnn学习之卷积或者池化后输出的map的size计算
来源:互联网 发布:学c和linux 编辑:程序博客网 时间:2024/06/04 00:59
相信各位在学习cnn的时候,常常对于卷积或者池化后所得map的的大小具体是多少,不知道怎么算。尤其涉及到边界的时候。
首先需要了解对于一个输入的input_height*input_widtht的图像,在卷积或者池化的时候,经常需要加padding,这是为了处理边界问题时而采用的一种方式,于是原输入就变成了下图所示:
对于输出的size计算 如下图:
out_height=((input_height - filter_height + padding_top+padding_bottom)/stride_height )+1
out_width=((input_width - filter_width + padding_left+padding_right)/stride_width )+1
只不过往往
out_height=out_width ,
input_height = input_width
fillter_height=filter_width padding_top=padding_bottom=padding_left=padding_right
stride_width=stride_height罢了
此外对于当前主流的cnn框架
tensorflow中是如此计算的:
首先对于padding有两个默认的选项same和valid ,如果是valid的话,则padding的四个值均为0,也就是没有padding
对于same,计算方式如下图,图中out的值可以直接计算出来的原因是因为padding的值是一个根据输入的定值的;大家把pad_along_height的等式转化成,左边是out_height,右边是其他的形式。就一样了。
其他的框架,比如caffe,应该都是自己设置padding的值大小。
至于padding出来的区域的值,一般填0。或者复制边界的值等等。
- cnn学习之卷积或者池化后输出的map的size计算
- cnn学习之卷积或者池化后输出的map的size计算
- CNN 卷积之后 map大小的计算
- 卷积神经网络传播过程中感受野的理解以及feature map size 、receptive field size的计算(代码)
- 干货 | 深度学习之卷积神经网络(CNN)的模型结构
- 如何得到卷积层输出的深度--CNN卷积层
- CNN之卷积计算层
- 深度学习(DL)与卷积神经网络(CNN)学习随笔-05-基于Python的LeNet之CNN
- 深度学习(DL)与卷积神经网络(CNN)学习随笔-05-基于Python的LeNet之CNN
- 深度学习(DL)与卷积神经网络(CNN)学习随笔-05-基于Python的LeNet之CNN
- 深度学习(DL)与卷积神经网络(CNN)学习随笔-05-基于Python的LeNet之CNN
- CNN feature map 大小的计算公式
- 编写C语言版本的卷积神经网络CNN之四:CNN的学习及测试结果的比较
- (四)Tensorflow学习之旅——MNIST分类的卷积神经网络CNN示例
- tensorflow机器学习之利用CNN卷积神经网络进行面部表情识别的实例代码
- 干货 | 深度学习之卷积神经网络(CNN)的前向传播算法详解
- 深度学习之cnn中第一层卷积层特征的显示
- 卷积神经网络CNN的理解
- Spring源码阅读笔记
- 《算法》逆序数组,选择排序和插入排序谁更快
- 计算机体系结构--流水线
- SpringMVC作用域传值
- Appium移动自动化测试(四)--one demo
- cnn学习之卷积或者池化后输出的map的size计算
- ajax嵌套问题
- ceph 停止集群
- Python 实现有序列表合并算法
- Nginx的入门使用
- 计算机体系结构--主辅存储器
- 实例应用:实现用户登录功能
- 统一应用程序中所有Activity的栈管理
- 希腊字母发音