卷积取的是局部特征,全连接就是把以前的局部特征重新通过权值矩阵组装成完整的图。因为用到了所有的局部特征,所以叫全连接。

全连接层(fully connected layers,FC)在整个卷积神经网络中起到“分类器”的作用。如果说卷积层、池化层和激活函数层等操作是将原始数据映射到隐层特征空间的话,全连接层则起到将学到的“分布式特征表示”映射到样本标记空间的作用。

先看全连接的图:

深度学习全连接层的作用 全连接层的原理_深度学习


全连接把卷积输出的二维特征图(feature map)转化成一个一维向量,也就是说:最后的两列小圆球就是两个全连接层,在最后一层卷积结束后,又进行了一次池化操作,输出了20个12x12的图像(20指最后一层的厚度),然后通过了一个全连接层变成了1x100的向量(第一个全连接层神经元的个数是100)

怎么做到的?

该操作其实就是用100个20x12x12的卷积核卷积出来的,对于输入的每一张特征图,都使用一个和图像大小一样的核卷积进行卷积运算,这样整幅图就变成了一个数了,如果厚度是20就是那20个核卷积完了之后相加求和。这样就能把一张图高度浓缩成一个数了。

但是全连接的参数实在是太多了,你想这张图里就有20个12x12x100个参数,前面随便一层卷积,假设卷积核是7*7的,厚度是64,那也才7x7x64,所以现在的趋势是尽量避免全连接,目前主流的一个方法是全局平均池化(GlobalAveragePooling)。也就是最后那一层的feature map(最后一层卷积的输出结果),直接求平均值。有多少种分类就训练多少层,这十个数字就是对应的概率。

参考:深度学习笔记——全连接层