对深度学习的认知——深度模型可以解决什么问题?

在跟深度模型打交道的过程中,使用 DNN 解决了一些分类的问题。目前 DNN 好像是非常流行的一种学习方法。但是,如果要问我什么是 DNN,DNN 到底为什么这么受欢迎,它到底有哪些优势?以下是我个人的一些看法和回答。

1. 什么是 DNN?

对于这个问题,我觉得 DNN 就是利用多层抽象表示概念和特征的一种方法。


如图,隐藏层就是 DNN 的秘密所在,它模拟的是人体神经元的传输机制。加权求和 - > 非线性激活 - > 偏置移动(类比于线性回归中的截距)- > 传导下一层。这就是 DNN 中的传输过程。正是由于隐藏层的非线性变换,使得 DNN 非常的灵活,灵活到几乎可以拟合任何功能。

2. DNN 为什么流行?

要回答这个问题,这么说吧,我使用过卷积神经网络对咨询进行过分类,分类的过程中我并不清楚它对于分类模型拟合的分类算法公式,也许这是一个存在的,但是未知的公式。这个公式肯定是非常复杂的,对我来说是未知的。但是它却得到了很好的结果。我们无需去找到这个公式的表达式,就可以灵活的使用 任何分段连续的公式 去建立我们的预测模型。一个隐藏层足以在一定误差范围内模拟任何分段连续函数。这使得在理论上,一个隐藏层就可以解决很多问题。当然实际情况略有不同,因为现实的决策函数可能并不连续,看上去需要多个隐藏层来实现精确的分类和预测。

3. DNN 的优势

我想这个问题前面就已经回答了,DNN 的优势就在于它隐藏层所提供的巨大的灵活性使得它可以拟合任何功能。这是任何传统的算法所不具备的灵活性。一般传统的算法首先解决的问题是有限的,其次传统的算法无法拟合任何模型。再次传统的算法只能基于已有的函数拟合,而 DNN 理论上可以模型任何复杂的对我们来说未知的函数。

4. DNN 的使用场景

我的理解是,如果决策可以通过复杂的函数进行数学建模,但是无法通过确定的规则或函数来表示。并且容许一定的误差的情况下,就可以使用 DNN。

以上是我在对 DNN 已知的认知中,以及短暂的实践中,对 DNN 的一些个人理解。也许随着以后对 DNN 的打交道过程中,会获得更深入的认识。

本文转自: 代码天地,转载此文目的在于传递更多信息,版权归原作者所有。

推荐阅读