深度学习与传统人工神经网络机器学习有什么区别?

时间:2016-04-12 16:07:44

标签: machine-learning neural-network artificial-intelligence deep-learning

您能否简单解释Deep Learning与利用神经网络的传统机器学习之间的差异?制作神经网络需要多少级别?#34;深度"?这只是营销炒作吗?

4 个答案:

答案 0 :(得分:11)

当层数变大时,标准反向传播算法(梯度下降)会出现严重问题。误差函数中局部最小值的概率随着每一层而增加。不仅数学意义上的局部最小值会导致问题,有时在误差函数中只有平坦区域(修改一个或多个权重不会显着改变误差),其中梯度下降不起作用。

另一方面,具有多层的网络可以解决更难的问题,因为每层细胞也可以提供一层抽象。

深度学习解决了这个问题。除了对整个网络使用梯度下降之外,基本思想是在每个单层上执行无监督学习过程。无监督学习的目标是使每个单层从其输入中提取特征特征,以供后续层使用。

尽管“深度学习”一词目前使用得太广泛,但它不仅仅是一种营销炒作。

编辑:几年前,很多人,包括我自己,都认为无人监督的预训练是深度学习的主要推动者。从那时起,其他技术变得流行,在许多情况下产生更好的结果。正如@Safak Okzan的评论中提到的(在他自己的回答下面),其中包括:

  • 剩余网络

  • 批量标准化

  • 整顿线性单位

答案 1 :(得分:3)

我不同意@Frank Puffer的回答。我不明白他在隐藏层等上执行无监督学习程序的含义。

深度学习是指神经网络模型,通常有超过2或3个隐藏层。大多数DL型号都有10到100层或更多层。

最近的深度学习模式革命依赖于两件事: 1.大量数据的可用性 - 这是互联网时代的产物 2. GPU的可用性

用于优化DL模型的算法称为反向传播算法(在数学上等效于梯度体面)。 Backprop实际上已经存在至少80年代 - 它不是DL特定的东西。

由于模型的复杂性和大小,DL模型通常需要大量数据。它们通常具有数百万个可调谐的重量参数。由于训练数据的大小以及需要在每次迭代时计算的数百万个偏导数(相对于权重),优化需要高计算能力。

从本质上讲,深度学习不是营销炒作。这是一个大型多层神经网络模型,需要大量数据和强大的GPU进行训练。一旦经过训练,他们就能在某些任务中达到超人的准确度。

答案 2 :(得分:2)

近年来,为解决各种机器学习问题而开发的模型变得更加复杂,层次非常多。例如,Google的Inception-v3模型(我认为)有42层。传统的神经网络通常只使用少数隐藏层。在“深度学习”和“深度卷积神经网络”的背景下使用的术语“深度”是对所涉及的大量层的认可。

答案 3 :(得分:0)

从应用程序角度,我将在以下几行中区分DL和ML中使用的神经网络:

  • 层数-简单的神经网络具有较少的隐藏层(通常在10个以内),而深度神经网络可以具有更多的隐藏层(如上述10到100或更多)。
  • 目的-深度学习具有专门的神经网络(就体系结构而言),可用于特定任务,例如用于图像分析的CNN,用于序列的RNN / LSTM等。可以使用简单的神经网络用于线性回归,分类(单/多类)等任务。
  • 处理复杂性-与传统的机器学习神经网络相比,训练深度学习模型需要更多的数据和计算资源。