DNN与ANN的区别

原创 2013年12月05日 14:14:34

1、ANN与DNN背景

       传统的神经网络,也称为浅层神经网络SNN(shallow nerual network)。Deep Learning中重点研究的是深层神经网络,也称为DNN(Deep neural network,其中D是Deep的缩写。无论是SNN还是DNN都属于一类人工神经网络ANN。DNN也是机器学习(machine learning)或感知学习(perception learning)的一个分支。

下面是摘自网上对传统浅层ANN和DNN的描述。

1.1浅层学习是机器学习的第一次浪潮

       20世纪80年代末期,用于人工神经网络的反向传播算法(也叫Back Propagation算法或者BP算法)的发明,给机器学习带来了希望,掀起了基于统计模型的机器学习热潮。这个热潮一直持续到今天。人们发现,利用BP算法可以让一个人工神经网络模型从大量训练样本中学习统计规律,从而对未知事件做预测。这种基于统计的机器学习方法比起过去基于人工规则的系统,在很多方面显出优越性。这个时候的人工神经网络,虽也被称作多层感知机(Multi-layer Perceptron),但实际是种只含有一层隐层节点的浅层模型。

        20世纪90年代,各种各样的浅层机器学习模型相继被提出,例如支撑向量机(SVM,Support Vector Machines)、 Boosting、最大熵方法(如LR,Logistic Regression)等。这些模型的结构基本上可以看成带有一层隐层节点(如SVM、Boosting),或没有隐层节点(如LR)。这些模型无论是在理论分析还是应用中都获得了巨大的成功。相比之下,由于理论分析的难度大,训练方法又需要很多经验和技巧,这个时期浅层人工神经网络反而相对沉寂。

1.2深度学习是机器学习的第二次浪潮

        2006年,加拿大多伦多大学教授、机器学习领域的泰斗Geoffrey Hinton和他的学生RuslanSalakhutdinov在《科学》上发表了一篇文章,开启了深度学习在学术界和工业界的浪潮。这篇文章有两个主要观点:1)多隐层的人工神经网络具有优异的特征学习能力,学习得到的特征对数据有更本质的刻画,从而有利于可视化或分类;2)深度神经网络在训练上的难度,可以通过“逐层初始化”(layer-wise pre-training)来有效克服,在这篇文章中,逐层初始化是通过无监督学习实现的。

        当前多数分类、回归等学习方法为浅层结构算法,其局限性在于有限样本和计算单元情况下对复杂函数的表示能力有限,针对复杂分类问题其泛化能力受到一定制约。深度学习可通过学习一种深层非线性网络结构,实现复杂函数逼近,表征输入数据分布式表示,并展现了强大的从少数样本集中学习数据集本质特征的能力。(多层的好处是可以用较少的参数表示复杂的函数)

 

        深度学习的实质,是通过构建具有很多隐层的机器学习模型和海量的训练数据,来学习更有用的特征,从而最终提升分类或预测的准确性。因此,“深度模型”是手段,“特征学习”是目的。区别于传统的浅层学习,深度学习的不同在于:1)强调了模型结构的深度,通常有5层、6层,甚至10多层的隐层节点;2)明确突出了特征学习的重要性,也就是说,通过逐层特征变换,将样本在原空间的特征表示变换到一个新特征空间,从而使分类或预测更加容易。与人工规则构造特征的方法相比,利用大数据来学习特征,更能够刻画数据的丰富内在信息。

2、DNN的优点

相比传统的SNN,DNN由于具有更多的层次结果,因而对事物的建模或抽象表现能力更强,也能模拟更复杂的模型。

3、DNN与ANN的区别

其实DNN和ANN都是一种人工神经网络,所以可以说DNN属于ANN的一个分支。但是过去传统的神经网络ANN(Artifical Neural Network),都是层次较少的网络型结构,所以又被称为浅层网络(shallow neural network),DNN与传统SNN的区别就在于其网络层次结构更多,等复杂,因此由于其层次更多,在图论上说就是图的深度更深,所以被冠名为深度神经网络(Deep Neural Network)。

References

http://blog.csdn.net/zouxy09/article/details/8775518



相关文章推荐

CNN(卷积神经网络)、RNN(循环神经网络)、DNN(深度神经网络)概念区分理解

1、相关知识从广义上来说,NN(或是更美的DNN)确实可以认为包含了CNN、RNN这些具体的变种形式。有很多人认为,它们并没有可比性,或是根本没必要放在一起比较。在实际应用中,所谓的深度神经网络DNN...

【学习OpenCV】编程笔记:一些需要注意的细节

1、Mat的存储是逐行的存储的,matlab中是

opencv的dnn解析

在学习过caffemodel加载之后,回头看看这个dnn里面都编译了哪些函数? 先看blob头文件: #ifndef __OPENCV_DNN_DNN_BLOB_HPP__ #define __OPE...

DBN\DNN\ANN\SNN

一、ANN与DNN区别 1、ANN与DNN背景        传统的神经网络,也称为浅层神经网络SNN(shallow nerual network)。Deep Learning中重点...

DBN/DNN/ANN/SNN

一、ANN与DNN区别 1、ANN与DNN背景        传统的神经网络,也称为浅层神经网络SNN(shallow nerual network)。Deep Learning中重点...

CNN(卷积神经网络)、RNN(循环神经网络)、DNN(深度神经网络)的内部网络结构有什么区别?

首先,我感觉不必像 @李Shawn 同学一样认为DNN、CNN、RNN完全不能相提并论。从广义上来说,NN(或是更美的DNN)确实可以认为包含了CNN、RNN这些具体的变种形式。在实际应用中,所谓的深...

CNN(卷积神经网络)、RNN(循环神经网络)、DNN(深度神经网络)的内部网络结构的区别

神经网络技术起源于上世纪五、六十年代,当时叫感知机(perceptron),拥有输入层、输出层和一个隐含层。输入的特征向量通过隐含层变换达到输出层,在输出层得到分类结果。早期感知机的推动者是Rosen...

CNN(卷积神经网络)、RNN(循环神经网络)、DNN(深度神经网络)的区别

http://www.zhihu.com/question/34681168 个人觉得CNN、RNN和DNN不能放在一起比较。 DNN是一个大类,CNN是一个典型的空间上深度的神经网络,RNN...

CNN、RNN、DNN的内部网络结构有什么区别?

从广义上来说,NN(或是更美的DNN)确实可以认为包含了CNN、RNN这些具体的变种形式。在实际应用中,所谓的深度神经网络DNN,往往融合了多种已知的结构,包括卷积层或是LSTM单元。但是就题主的意思...

模式识别(Pattern Recognition)学习笔记(二十一)--再谈(人工)神经网络(ANN)

1.简介        目前为止,通过MLP和BP算法的学习,我们已经接触了神经网络,并且知道了最具有代表性的一种模型“多层感知器”,这篇文章对ANN做个详细的总结和概述。        一般来讲...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:DNN与ANN的区别
举报原因:
原因补充:

(最多只允许输入30个字)