zoukankan      html  css  js  c++  java
  • CNN中feature map、卷积核、卷积核的个数、filter、channel的概念解释

    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抵消了卷积的缩小
    

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

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

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

    欢迎评论交流!
  • 相关阅读:
    HttpClient使用详解
    JBPM的.jpdl.xml文件中文出现乱码
    maven实现项目热部署
    基于Solr和Zookeeper的分布式搜索方案的配置
    MySQL5.7 多线程复制,配置和测试结果(转)
    重庆--上海手动切换容灾方案执行步骤
    elasticsearch Unassigned 分片解决办法
    基于docker使用elasticsearch-dump,es数据导入导出
    iperf3 测试linux服务器之间带宽
    elasticsearch重庆上海移动切换方案
  • 原文地址:https://www.cnblogs.com/alking1001/p/11957037.html
Copyright © 2011-2022 走看看