【问题标题】:Are deep neural networks taught layer by layer or all layers at once?深度神经网络是逐层教授还是一次性教授所有层?
【发布时间】:2017-01-08 13:12:26
【问题描述】:

我正在尝试掌握深度神经网络的概念。当他们被解释时,他们基本上说网络的每一层代表一个抽象层次,例如,第一层是关于边缘,下一层是关于形状,比如轮子,下一层是关于轮子加起来的东西,像汽车一样。

这张图片几乎代表了这个概念:

在计算每一层的权重时,是一次完成一层还是所有层一起完成。你是先在一组标有不同类型边缘的图像上运行 AI,然后在一组标有轮子之类的图像上运行 AI,然后再在一组标有汽车的图像上运行 AI,还是让网络自己解决这个问题?

【问题讨论】:

    标签: artificial-intelligence


    【解决方案1】:

    您没有为深度网络提供对每一层的监督,这在构建数据集方面过于复杂。您在这些幻灯片上看到的是对正在发生的事情的解释自行,而不是我们强制执行。既有逐层技术(现在不太流行),也有一切联合(流行知道),但它们都没有使用额外的监督,你不告诉网络提取边缘,它只是从优化问题和网络结构中出现在实践中。

    但是,也有一些深层架构不具备此属性,例如 https://arxiv.org/abs/1603.09382 或一般的循环网络(在这个意义上也是“深层”)。因此不要将其视为深度学习的属性,这只是处理特定数据时的常见经验观察,仅此而已。

    【讨论】:

    • 这很有帮助!在训练单层网络时,我了解如何使用梯度下降之类的方法来确定如何正确更改权重,但是如果您有隐藏层,您不知道要优化什么,您怎么知道如何改变每个重量。这可能是它自己的话题,但如果你能指出我正确的方向,那就太好了!
    • 我可以在这里看到你的困惑。当你有一个隐藏层时,你也没有监督,你不知道预期的激活是什么,你只知道顶层的正确答案。那你干什么?您只需计算梯度 wrt 参数。当你有更多的层时,什么都不会改变。顶部仍然有一个监督,您可以计算所有参数的梯度。有一些技巧可以有效地做到这一点(反向传播),但从数学的角度来看也是一样的。你只需要部分导数。因此,您将所有其他重量视为常数并区分
    猜你喜欢
    • 2011-05-10
    • 2022-01-21
    • 2017-04-28
    • 1970-01-01
    • 1970-01-01
    • 2016-10-22
    • 2019-10-12
    • 2018-12-04
    • 2011-03-28
    相关资源
    最近更新 更多