万字长文:详解现代AI和深度学习发展史(6)
扫一扫
分享文章到微信
扫一扫
关注99科技网微信公众号
十三、1991年4月:通过自监督的预训练进行深度学习
今天最强大的NN往往是非常深的,也就是说,它们有很多层的神经元或很多后续的计算阶段。 然而,在20世纪90年代之前,基于梯度的训练对深度NN并不奏效(只对浅层NN有效)。 与前馈NN(FNN)不同的是,RNN有反馈连接。这使得RNN成为强大的、通用的、平行序列的计算机,可以处理任意长度的输入序列(比如语音或者视频)。 然而,在20世纪90年代之前,RNN在实践中未能学习深层次的问题。 为此,Schmidhuber建立了一个自监督的RNN层次结构,来尝试实现「通用深度学习」。
1991年4月:将一个NN蒸馏成另一个NN通过使用Schmidhuber在1991年提出的NN蒸馏程序,上述神经历史压缩机的分层内部表征可以被压缩成一个单一的递归NN(RNN)。 在这里,教师NN的知识被「蒸馏」到学生NN中,方法是训练学生NN模仿教师NN的行为(同时也重新训练学生NN,从而保证之前学到的技能不会被忘记)。NN蒸馏法也在许多年后被重新发表,并在今天被广泛使用。
十四、1991年6月:基本问题——梯度消失
Schmidhuber的第一个学生Sepp Hochreiter在1991年的毕业论文中发现并分析了基本的深度学习问题。 深度NN受到现在著名的梯度消失问题的困扰:在典型的深度或递归网络中,反向传播的错误信号要么迅速缩小,要么超出界限增长。在这两种情况下,学习都会失败。
十五、1991年6月:LSTM/Highway Net/ResNet的基础
长短期记忆(LSTM)递归神经网络克服了Sepp Hochreiter在上述1991年的毕业论文中指出的基本深度学习问题。 在1997年发表了经同行评审的论文之后(现在是20世纪被引用最多的NN文章),Schmidhuber的学生Felix Gers和Alex Graves等人,进一步改进了LSTM及其训练程序。 1999-2000年发表的LSTM变体——带有遗忘门的「vanilla LSTM架构」,在如今谷歌的Tensorflow中依然还在应用。 2005年,Schmidhuber首次发表了LSTM在时间上完全反向传播和双向传播的文章(同样也被广泛使用)。 2006年一个里程碑式的训练方法是「联结主义时间分类」(CTC),用于同时对齐和识别序列。 Schmidhuber的团队在2007年成功地将CTC训练的LSTM应用于语音(也有分层的LSTM堆栈),第一次实现了卓越的端到端神经语音识别效果。 2009年,通过Alex的努力,由CTC训练的LSTM成为第一个赢得国际比赛的RNN,即三个ICDAR 2009手写比赛(法语、波斯语、阿拉伯语)。这引起了业界的极大兴趣。LSTM很快被用于所有涉及序列数据的场合,比如语音和视频。 2015年,CTC-LSTM的组合极大地改善了谷歌在安卓智能手机上的语音识别性能。直到2019年,谷歌在移动端搭载的语音识别仍然是基于LSTM。
99科技网:http://www.99it.com.cn
