CNN 可以检测不同图像的特征吗?

数据挖掘 机器学习 深度学习 神经网络 美国有线电视新闻网 迁移学习
2022-02-12 21:39:59

在讲座中,我们谈到了“参数共享”作为使用卷积网络的好处。以下关于 ConvNets 中参数共享的说法正确的是?(检查所有适用。)

  1. 它允许为一项任务学习的参数即使对于不同的任务也可以共享(迁移学习)。
  2. 它减少了参数的总数,从而减少了过拟合。
  3. 它允许梯度下降将许多参数设置为零,从而使连接稀疏。
  4. 它允许在整个输入图像/输入体积中的多个位置使用特征检测器。

以下是正确答案:

  1. 它减少了参数的总数,从而减少了过拟合。
  2. 它允许在整个输入图像/输入体积中的多个位置使用特征检测器。

为什么以下答案也不正确:

  1. 它允许为一项任务学习的参数即使对于不同的任务也可以共享(迁移学习)。ConvNets 不允许参数共享,检测不同图像的相似特征吗?
3个回答

关键是参数共享与在一个任务中将一些学习到的权重重用于另一个任务(又名迁移学习)不同;也就是说,迁移学习可以与卷积神经网络一起使用,但参数共享并不意味着将知识从一项任务转移到另一项任务。有关参数共享的详细定义,请查看斯坦福大学的此文档,参数共享部分

正如该页面中所解释的,您可以将其视为在学习特定任务时减少权重数量的工具(所以忘记将这些权重转移到另一个任务,可能是这种情况,但不是这个概念的含义)。

推理该概念的一种直观方式可能是: 参数共享假设是相对合理的:如果在图像中的某个位置检测水平边缘很重要,那么由于平移不变的结构,它在其他位置也应该直观地有用。图片

ConvNets 不允许参数共享,检测不同图像的相似特征吗?

您的最后陈述适用于早期层中的卷积层,但最终层检测更多抽象特征,例如完整对象。因此,用鲜花图像训练的 CNN 的最后一层对于充满汽车的数据集没有帮助。它们的高级功能不同。在迁移学习中,根据数据集的大小和数据集的相似性,有不同的场景。

顺便说一句,conv 网络中的最后一层看到的范围更广,而第一层同时访问了有限的区域。

卷积神经网络不像NLP 中的Transformer 模型那样容易用于迁移学习。他们非常依赖于他们的训练数据集和其中显示的对象。因此,在花朵上训练的 ConvNet 可能可以转移到玫瑰分类任务,但不能用于检测汽车,因为数据集的特征完全不同。也许如果你使用像CIFAR10这样更广泛的数据集,模型会变得更加健壮。