CNN中feature map、卷积核、卷积核的个数、filter、channel的概念解释

参考链接: https://blog.csdn.net/xys430381_1/article/details/82529397

作者写的很好,解决了很多基础问题。

feather map理解

这个是输入经过卷积操作后输出的结果,一般都是二维的多张图片,在论文图上都是以是多张二维图片排列在一起的(像个豆腐皮一样),它们其中的每一个都被称为\(feature \quad map\)

feather map 是怎么产生的

有几个卷积核就会产生几个\(feather \quad map\)。输入数据经过卷积操作输出\(feather \quad map\),从名字也可以知道(翻译就是特征图)这个是经过卷积核提取后得到的特征

多个\(feather \quad map\)就意味着我们提取了多个特征值,这样或许就可以更加准确地识别数据。

卷积核的理解

卷积核又名过滤器(\(filter\))。

每个卷积核有三个属性:长宽深,这里一般深度不需要自己定义,深度是和输入的数据深度相同;

有多少个卷积核就有多少个\(feather \quad map\)

例如在\(pytorch.nn.Conv2d()\)函数中:

torch.nn.Conv2d(1, 16, kernel_size=5, stride=1, padding=2)
#二维卷积层,输入通道数1,输出通道数16(相当于有16个filter,也就是16个卷积核),卷积核大小为5*5*1(因为输入的通道数为1,所以这里卷积核的深度也就自动设置为1了),步长为1,零填充2圈
#经过计算,可以得到卷积输出的图像的大小和输入的图像大小是等大小的,但是深度不一样,为28*28*16(16为深度),因为这里的padding抵消了卷积的缩小

卷积核的个数:看到很多文章,一般都说随着网络的加深,\(feather\quad map\)的长宽尺寸会变小,也就是卷积提取的特征越具有代表性,所以后面的卷积层数需要增加,所以卷积核的个数也是要增加的,一般是成倍增加(有的会更根据实验的情况来具体设置)。下面的图示很好的说明了这个:(中间的就是卷积核,这是一个三维的卷积核,是一个,所以输出为一个\(feather \quad map\))

CNN学习过程:更新卷积核的值(也就是更新卷积核中的数值)

开始的卷积核的值是随机的,之后每次的向后计算的过程中会得出这个图像的类别,当然这个第一次的结果大部分都是不准确的,之后经过\(loss\quad function\)的作用,CNN会更新这些卷积核中的值,然后再来一次学习。这样经过多次的学习,CNN就会找到卷积核的最佳参数,使得提取的特征能准确区分这些图片,这样也就完成了CNN的学习过程。

CNN中feature map、卷积核、卷积核的个数、filter、channel的概念解释的更多相关文章

  1. CNN中feature map、卷积核、卷积核个数、filter、channel的概念解释,以及CNN 学习过程中卷积核更新的理解

    具体可以看这篇文章,写的很详细.https://blog.csdn.net/xys430381_1/article/details/82529397

  2. pytorch中,不同的kernel对不同的feature map进行卷积之后输出某一个channel对应的多个feature map如何得到一个channel的feature map

    实际上在卷积操作的时候,比如说,我某一层输出的feature map的size为4713*13 channel的数目为7,设经过某卷积层之后,网络输出的feature map的channel的数目为1 ...

  3. CNN中,1X1卷积核到底有什么作用呢?

    CNN中,1X1卷积核到底有什么作用呢? https://www.jianshu.com/p/ba51f8c6e348 Question: 从NIN 到Googlenet mrsa net 都是用了这 ...

  4. CNN 中, 1X1卷积核到底有什么作用

    转自https://blog.csdn.net/u014114990/article/details/50767786 从NIN 到Googlenet mrsa net 都是用了这个,为什么呢 发现很 ...

  5. 【深度学习】CNN 中 1x1 卷积核的作用

    [深度学习]CNN 中 1x1 卷积核的作用 最近研究 GoogLeNet 和 VGG 神经网络结构的时候,都看见了它们在某些层有采取 1x1 作为卷积核,起初的时候,对这个做法很是迷惑,这是因为之前 ...

  6. CNN中的feature map

    个人学习CNN的一些笔记,比较基础,整合了其他博客的内容 feature map的理解在cnn的每个卷积层,数据都是以三维形式存在的.你可以把它看成许多个二维图片叠在一起(像豆腐皮竖直的贴成豆腐块一样 ...

  7. pytorch中网络特征图(feture map)、卷积核权重、卷积核最匹配样本、类别激活图(Class Activation Map/CAM)、网络结构的可视化方法

    目录 0,可视化的重要性: 1,特征图(feture map) 2,卷积核权重 3,卷积核最匹配样本 4,类别激活图(Class Activation Map/CAM) 5,网络结构的可视化 0,可视 ...

  8. CNN中各类卷积总结:残差、shuffle、空洞卷积、变形卷积核、可分离卷积等

    CNN从2012年的AlexNet发展至今,科学家们发明出各种各样的CNN模型,一个比一个深,一个比一个准确,一个比一个轻量.我下面会对近几年一些具有变革性的工作进行简单盘点,从这些充满革新性的工作中 ...

  9. CNN中的卷积核及TensorFlow中卷积的各种实现

    声明: 1. 我和每一个应该看这篇博文的人一样,都是初学者,都是小菜鸟,我发布博文只是希望加深学习印象并与大家讨论. 2. 我不确定的地方用了"应该"二字 首先,通俗说一下,CNN ...

随机推荐

  1. flask框架(七): flask模板

    1.模板的使用 Flask使用的是Jinja2模板,所以其语法和Django无差别 2.自定义模板方法 Flask中自定义模板方法的方式和Bottle相似,创建一个函数并通过参数的形式传入render ...

  2. DB 分库分表(1):拆分实施策略和示例演示

    DB 分库分表(1):拆分实施策略和示例演示 第一部分:实施策略 1.准备阶段 对数据库进行分库分表(Sharding化)前,需要开发人员充分了解系统业务逻辑和数据库schema.一个好的建议是绘制一 ...

  3. @configuration和@component之间的区别

    @configuration和@component之间的区别是:@Component注解的范围最广,所有类都可以注解,但是@Configuration注解一般注解在这样的类上:这个类里面有@Value ...

  4. tp5最强分页 自定义model,控制器引用。只显示一页

    1.不多逼逼 model 代码 <?phpnamespace app\common\model; use think\Model; class Fpage{ private $page;//当前 ...

  5. 批量删除.svn文件夹、.svn文件

      使用svn进行版本控制,每个文件夹下都有.svn文件夹,有些项目在脱离svn版本控制之后,想删除项目中所有的.svn文件夹,可用下面的方法进行快速删除: 1.打开要删除.svn文件的最外层文件夹, ...

  6. char能不能存储一个汉字

    答案是肯定的 请参见博客:https://www.cnblogs.com/1017hlbyr/p/6419016.html

  7. 9.关联规则那不行fizi麸子

    1.关联规则概述 2.关联规则算法罗兵烙饼选择 3.关联规则的算法

  8. vue echarts圆角阴影效果

    series: [ { name: '销量', type: 'bar', data: [5, 20, 36, 10, 10, 20], itemStyle: { normal: { barBorder ...

  9. tensorflow实现线性回归、以及模型保存与加载

    内容:包含tensorflow变量作用域.tensorboard收集.模型保存与加载.自定义命令行参数 1.知识点 """ 1.训练过程: 1.准备好特征和目标值 2.建 ...

  10. python 生成随机红包

    假设红包金额为money,数量是num,并且红包金额money>=num*0.01 原理如下,从1~money*100的数的集合中,随机抽取num-1个数,然后对这些数进行排序,在排序后的集合前 ...