CNN中完全连接的层做什么?


Answers:


31

卷积层的输出表示数据中的高级特征。虽然可以将输出平坦化并连接到输出层,但是添加完全连接的层是学习这些功能的非线性组合的(通常)便宜的方法。

本质上,卷积层提供了有意义的,低维的并且多少不变的特征空间,而全连接层正在学习该空间中的(可能是非线性的)函数。

注意:从FC层转换为Conv层很简单。如将这些顶级FC层转化率的层可以是有帮助的这个页面描述。


谢谢詹姆斯的回答。因此,我们正在学习具有反向传播的连接层之间的权重,对吗?
jeff,2015年

是的,错误通过全连接层反向传播到卷积和池化层。
jamesmf

好。因此,fc层的目的可以被视为非线性PCA,它纠正了“良好”功能,并通过学习全套权重来减少其他功能。
2015年

1
它主要允许您非线性组合功能。所有功能可能都不错(假设您没有“死”功能),但是这些功能的组合可能更好。
jamesmf

@jamesmf:什么是无效功能?您正在谈论的功能组合是什么?非线性组合是什么意思?在CNN中是否必须使用完全连接的层?还是可以取代它而不会影响准确性?在此先感谢。如果您能对我提出的问题有直觉,我将不胜感激。
里卡

4

我发现Anil-SharmaQuora上的回答 很有帮助。

我们可以将整个网络(用于分类)分为两部分:

  • 特征提取:在传统的分类算法(如SVM)中,我们通常从数据中提取特征以使分类工作。卷积层用于特征提取的相同目的。CNN可以更好地表示数据,因此我们不需要进行特征工程。

  • 分类:特征提取后,我们需要将数据分类为各种类别,这可以使用完全连接(FC)的神经网络来完成。代替完全连接的层,我们还可以使用传统的分类器,例如SVM。但是我们通常最终会添加FC层以使模型端到端可训练。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.