zoukankan      html  css  js  c++  java
  • 全连接层有何作用?

    1 作用

    众所周知,全连接层之前的作用是提取特征,全连接层的作用是分类。

    2 关键阶段介绍

    假设通过CNN已经提取到特征,下一层是全连接层,这个阶段比较关键,举个例子说明:

    上图中CNN的输出是3x3x5的特征图,它是怎么样转换成1x4096的形式呢?

    很简单,可以理解为在中间做了一个卷积。这一步卷积一个非常重要,它的作用就是把分布式特征representation映射到样本标记空间!

    简单来说:它把特征representation整合到一起,输出为一个值。这样做,有一个什么好处:就是大大减少特征位置对分类带来的影响。

    注:样本标记空间也叫样本输出空间。

    再举个例子说明上述的过程:

    从上图我们可以看出,猫在不同的位置,输出的feature值相同,但是位置不同。对于电脑来说,那分类结果也可能不一样。

    而这时全连接层filter的作用就相当于:猫在哪我不管,只要找到猫就可以,于是让全连接层filter去把这个猫找到,实际就是把feature map 整合成一个值。

    这个值大,有猫,这个值小,那就可能没猫,这和猫在哪关系不大了,鲁棒性大大增强了!

    因为空间结构特性被忽略了,所以全连接层不适合用于在方位上找模式的任务,比如分割。

    3 全连接层为什么大部分是两层

    只用一层fully connected layer 有时候没法解决非线性问题,而如果有两层或以上fully connected layer就可以很好地解决非线性问题了。

    4 换个方式讲

    现在的任务是去识别一图片是不是猫。

    假设这个神经网络模型已经训练完了,全连接层已经知道

    当我们得到以上特征,我就可以判断这个是不是猫了,因为全连接层的作用主要就是实现分类(Classification)。

    从上图,可以看出:

    红色的神经元表示这个特征被找到了(激活了),同一层的其他神经元,要么猫的特征不明显,要么没找到。

    当我们把这些找到的特征组合在一起,发现最符合要求的是猫,则认为这是猫了!

  • 相关阅读:
    spring boot 2.0.3+spring cloud (Finchley)2、搭建负载均衡Ribbon (Eureka+Ribbon+RestTemplate)
    spring boot 2.0.3+spring cloud (Finchley)1、搭建服务注册和发现组件Eureka 以及构建高可用Eureka Server集群
    windows下安装redis
    Spring注解@Resource和@Autowired的区别
    spring常用管理bean注解
    maven中package和install命令的区别
    SpringBoot打war包并部署到tomcat下运行
    使用jquery.qrcode生成二维码及常见问题解决方案
    动态生成二维码插件 jquery.qrcode.js
    Notepad++的列编辑功能
  • 原文地址:https://www.cnblogs.com/Terrypython/p/11147665.html
Copyright © 2011-2022 走看看