Conv和FC层之间的区别?

机器算法验证 神经网络 卷积神经网络 卷积
2022-03-09 04:39:27

conv 层FC 层有什么区别

为什么我不能使用conv 层而不是FC 层

3个回答

卷积层在其下层的不同位置重复应用相同(通常很小)的过滤器。例如,如果输入层的尺寸为 512 x 512,您可以有一个 conv 层应用相同的 8 x 8 滤波器(由 64 个滤波器系数指定),在(例如)覆盖在输入层上的 128 x 128 网格中的每个点. 另一方面,全连接层中的每个节点将学习 512 x 512 个权重,一个用于输入层中的每个节点。

因此,卷积层非常适合检测可能出现在输入中任何位置的局部特征(例如,视觉图像中的边缘)。这个想法是您不必单独训练每个节点来检测相同的特征,而是学习一个在所有节点之间共享的过滤器。

(请注意,每个卷积层通常会学习一组过滤器,每个过滤器都会在输入中重复应用。例如,如果卷积层学习 16 个不同的特征,则称其“深度”为 16。)

FC 层用于检测网络中较低层检测到的特征的特定全局配置。它们通常位于网络层次结构的顶部,此时输入已被减少(通过先前的,通常是卷积层)以紧凑地表示特征。FC 层中的每个节点都在其下层中的所有节点上学习自己的一组权重。

因此,您可以(粗略地)将卷积层视为将输入(例如图像)分解为公共特征,而 FC 层将这些特征拼凑成您希望网络识别的对象。

您可以使用 conv 层代替 FC。但是,由于共享权重的卷积层的性质,参数会少得多。这可能会导致您的网络可能没有足够的能力来学习这些东西。但这一切都取决于您的网络。

卷积层和全连接层是大多数神经网络的构建块。它们是构建大多数 NN 的单元(层)。卷积层和全连接层是将神经网络的一层连接到后续层的乘法参数,从而使每一层的权重成为其前一层的线性组合(应用 Relu 或 Tanh 后为非线性)。然而,它们在连接两层神经网络的方式上有所不同。

顾名思义,全连接层将输出层的每个神经元连接到输入层的每个神经元。它们可以用于表达输入层中的任何一般模式。这使得完全连接的层能够最好地识别 NN 层中的全局模式。因此,它们非常适合用于包装所有先前层识别的所有模式(作为 NN 的最后一层)。此外,NN 的最后一层的层大小通常相对较小,这意味着在学习方面,全连接层中的大量参数不是问题。然而,权重数量的丰富(在学习 NN 时应该独立学习),

另一方面,在卷积中,输出层的每个神经元仅通过通用“过滤器”连接到前一层中的少数神经元(本地),这使得要学习的参数数量实际上少于完全-连接层。此外,应用于整个神经元层的滤波器的唯一性允许卷积层识别相同模式在不同输入层中的重复出现(文本处理中的字母重合和图像识别中的角点)。因此,由于要学习的参数数量较少,它们可以更容易地堆叠,以构建具有可负担学习过程的深度神经网络。