神经网络的发展历史

 1、三代神经网络的发展

第一代神经网络:感知器(1950s)

第一代神经网络又称为感知机,在1950年左右被提出来,算法分为输入层和输出层,输入和输出之间为线性关系,感知机无法处理非线性模型,即不能解决线性不可分的问题。

第二代神经网络:多层感知器MLP(1980s)

第二代神经网络为多层感知机(MLP),在1980年左右Rumelhart、Williams等人提出,和第一代相比,在中间加了多个隐藏层,隐藏层可以引入非线性结构,能够解决第一代神经网络面临的线性不可分问题,从而能够处理非线性问题。

第三代神经网络:深度神经网络(2010s)

MLP能够解决线性不可分问题,但是隐藏层的引入也使得MLP变得复杂,由于梯度消失的问题,MLP难以训练,直到2006年Hinton采取无监督预训练(Pre-Training)的方法解决了梯度消失的问题,使得深度神经网络变得可训练,自此逐步开启了第三代神经网络。

第三代神经网络主要包括DNN、RNN、CNN等。

 

 

2、DNN:深度神经网络

DNN和传统意义上的神经网络(NN)在结构上并无大的差别,主要是层数增加了,并且解决了不可训练的问题。

 

DNN最大的问题是只能看到预先设定的长度的数据,对于语音和语言等前后相关的时序信号的表达能力还是有限的,基于此提出了RNN模型,即递归神经网络。

3、RNN:递归神经网络

DNN存在的问题是:无法对时间序列上的变化进行建模。因为DNN的隐藏层只能接收当前时刻上一层的输入。

在RNN中。神经元的输出可以在下一时刻作用到本身,也就是说,RNN的隐藏层不仅可以接收到来自当前时刻上一层的输入,还可以接收上一时刻当前隐藏层的输入。

RNN的这种变化使得神经网络具有了历史记忆功能,原则上可以看到无穷长的历史信息,可以用来处理时间序列问题,例如连续的语音、连续的手写文字等。

 

 4、CNN:卷积神经网络

卷积神经网络是为了模拟人的视觉神经系统提出来的,广泛应用于图像识别等领域。

以CNN做人脸识别任务为例,先得到一些像素信息,再往上层得到一些边界信息,然后再往上提取就是一些人脸的部件信息,包括眼睛、耳朵、眉毛、嘴巴等,最后是人脸识别,这整个过程和人的视觉神经系统是非常相似的。

CNN网络结构包括输入层、隐藏层、输出层等,隐藏层由卷积层、池化层、全连接层等组成。

 参考

https://www.cnblogs.com/pinard/p/6418668.html

https://zhuanlan.zhihu.com/p/51241366

https://zhuanlan.zhihu.com/p/55838329

https://www.cnblogs.com/wj-1314/p/12015278.html

 

posted @ 2022-09-05 12:04  Init0ne  阅读(2423)  评论(0编辑  收藏  举报