0. 深度学习的“圣经”

提到入门级的书,就不得不提这一本 Bengio Yoshua,Ian J. Goodfellow 和 Aaron Courville共同撰写的《深度学习》(Deep Learning)。

“这本关于深度学习的教课书是一本为了帮助学生及从业者入门机器学习,并专注于深度学习领域的教材。”值得一提的是,这本 MIT 出版的“书”数年来一直在网上实时更新和完善,不断补充研究成果和新的参考文献,也向公众开放评论,接受修改意见,其火爆程度甚至被誉为深度学习的“圣经”。 目前该书可在亚马逊预定,今年年底就会送到你手上。

《深度学习》阅读网址:http://www.deeplearningbook.org/

1. 调研

Yann LeCun , Yoshua Bengio和Geoffrey Hinton被作者誉为深度学习界三大天王,他们所发布在 Nature上的“Deep Learning”包含了大量的研究和调查,五星推荐,值得一读!

[1] http://www.cs.toronto.edu/~hinton/absps/NatureDeepReview.pdf

2. 建立深度学习的知识网

作为 AI 领袖级人物,Geoffrey Hinton 目前就职于谷歌,而其与E., Simon Osindero和Yee-Whye The的代表作《A fast learning algorithm for deep belief nets》更是被奉为圭臬,不妨看看。

[2] http://www.cs.toronto.edu/~hinton/absps/ncfast.pdf

此外,他还有一篇署名第一作者的《Reducing the dimensionality of data with neural networks》,可以说是深度学习的里程碑之作。

[3] http://www.cs.toronto.edu/~hinton/science.pdf

3. ImageNet 革命

当你读完了上面的几篇论文,相信你对深度学习也有了一个大致的了解。那么深度学习的突破点在哪呢?在 2012 年,Krizhevsky 的《Imagenet classification with deep convolutional neural networks》预示着神经网络的出现和发展有了突破性的研究进展。来不及了,赶紧上车吧,推荐指数五颗星。

[4] http://papers.nips.cc/paper/4824-imagenet-classification-with-deep-convolutional-neural-networks.pdf

而深度对于网络有多重要?《Very deep convolutional networks for large-scale image recognition》是牛津大学视觉几何组(VGG)Karen Simonyan 和 Andrew Zisserman 于 2014 年撰写的论文,主要探讨了深度对于网络的重要性;并建立了一个 19层的深度网络并获得了很好的结果。该论文在 ILSVRC上定位第一,分类第二。

[5] https://arxiv.org/pdf/1409.1556.pdf

如果想要了解下神经网络结构是如何改进的,那一定得读下这篇。Szegedy 和 Christian 都是当代著名的计算机科学家,他们曾在 2015 年合写了《Going deeper with convolutions》,这篇论文是为 ImageNet2014 的比赛而作,论文中的方法获得了比赛的第一名,包括 task1 分类任务和 task2 检测任务。本文主要关注针对计算机视觉的高效深度神经网络结构,通过改进神经网络的结构达到不增加计算资源需求的前提下提高网络的深度,从而达到提高效果的目的。

[6] http://www.cv-foundation.org/openaccess/content_cvpr_2015/papers/Szegedy_Going_Deeper_With_2015_CVPR_paper.pdf

在第六届 ImageNet 年度图像识别测试中,微软研究院的计算机图像识别系统在几个类别的测试中拔得头筹,击败了谷歌、英特尔、高通、腾讯以及一些创业公司和学术实验室的系统。微软的获胜系统名为“图像识别的深度残差学习”(Deep Residual Learning for Image Recognition),由微软研究员何恺明、张祥雨、任少卿和孙剑组成的团队开发。因此,记录这一团队系统开发心得的《Deep Residual Learning for Image Recognition》绝对是学习必备啊,五星推荐。

[7] https://arxiv.org/pdf/1512.03385.pdf

4. 语音识别大法好

Hinton 与 Geoffrey 等技术专家合著的《Deep neural networks for acoustic modeling in speech recognition: The shared views of four research groups》是语音识别领域的巨大突破。它融合了四个小组利用深度神经网络和声学建模完成语音识别的实例。

[8] http://cs224d.stanford.edu/papers/maas_paper.pdf

除了上面的几篇论文,Geoffrey Hinton 大神 在《Speech recognition with deep recurrent neural networks》一文中也是思如泉涌,他向我们介绍了深度循环神经网络(RNNs)在语音识别中的重要性。

[9] https://arxiv.org/pdf/1303.5778.pdf

想必我们对语音输入并不陌生,但这是如何实现的呢?这篇名为《Towards End-To-End Speech Recognition with Recurrent Neural Networks》由 Graves、Alex 和多伦多大学教授 Navdeep Jaitly 共同撰写。它向我们描述了一个无需中继语音重构的音频转文字识别系统。

[10] http://www.jmlr.org/proceedings/papers/v32/graves14.pdf

如果你要问谷歌语音识别系统之源是什么,那我一定会向你推荐这篇名为《Fast and accurate recurrent neural network acoustic models for speech recognition》的论文由 Sak 和 Hasim 等多位专家撰写而成,它是谷歌语音识别系统的重要理论基础之一。

[11] https://arxiv.org/pdf/1507.06947.pdf

百度近日公布了其硅谷人工智能实验室(SVAIL)的一项新的研究成果,被称为 Deep Speech 2。Deep Speech 通过使用一个单一的学习算法实现了准确识别英语和汉语的能力。这一成果就发表在论文《Deep speech 2: End-to-end speech recognition in english and mandarin》之中。

[12] https://arxiv.org/pdf/1512.02595.pdf

本月 18 日,微软人工智能与研究部门的研究员和工程师发表了一篇名为《Achieving Human Parity in Conversational Speech Recognition》的论文。论文表明,微软的对话语音识别技术在产业标准 Switchboard 语音识别基准测试中实现了词错率(word error rate, 简称WER)低至 5.9% 的好成绩,首次达成与人类专业速记员持平,并且要优于绝大多数人的表现。雷锋网此前也有提及,详情可点击原文查看。同时,也刷新了自己的一个月前创造的 6.3% 的记录。微软首席语音科学家黄学东是这一研究的参与者之一。

[13] https://arxiv.org/pdf/1610.05256v1.pdf

读完了上面推荐的论文,你一定对深度学习的历史有了一个基本了解,其基本的模型架构(CNN/RNN/LSTM)与深度学习如何应用在图片和语音识别上肯定也不在话下了。下一部分,我们将通过新一批论文,让你对深度学习的方式与深度学习在不同领域的运用有个清晰的了解。由于第二部分的论文开始向细化方向延展,因此你可以根据自己的研究方向酌情进行选择。

 

1.深度学习模型

Hinton 与 Geoffrey 等技术专家合著的《Improving neural networks by preventing co-adaptation of feature detectors》也很有指导意义。论文提出,在训练神经网络模型时,如果训练样本较少,为了防止模型过拟合,Dropout 可以作为一种 trikc 供选择。

[1] https://arxiv.org/pdf/1207.0580.pdf

关于 Dropout,Srivastava 与 Nitish 等技术专家也合著过《Dropout: a simple way to prevent neural networks from overfitting》一文。论文提出,拥有大量参数的深度神经网络是性能极其强大的机器学习系统,但过度拟合问题却成了系统中难以解决的一个大问题,而 Dropout 是处理这一问题的技术捷径。

[2] http://www.jmlr.org/papers/volume15/srivastava14a.old/source/srivastava14a.pdf

深度神经网络的训练是个复杂异常的活,因为训练中每一层参数的更改都会牵一发而动全身,而这一问题就造成训练效率低下。Ioffe、 Sergey 和 Christian Szegedy在《Batch normalization: Accelerating deep network training by reducing internal covariate shift》一文中着重介绍了解决这一问题的关键:内部协变量的转变。

[3] https://arxiv.org/pdf/1502.03167.pdf

深度神经网络的训练非常考验计算能力,而要想缩短训练时间,就必须让神经元的活动正常化,而最新引入的“批规范化”技术则是解决这一问题的突破口。完成技术突破的技术方式纠缠在多位专家合著的这份名为《Layer normalization》的论文中。

[4] https://arxiv.org/pdf/1607.06450.pdf?utm_source=sciontist.com&utm_medium=refer&utm_campaign=promote

《Binarized Neural Networks: Training Neural Networks with Weights and Activations Constrained to+ 1 or−1》是今年2月份刚刚出炉的论文,论文的主要思想是通过二值化weights和activations,来提高NN的速度和减少其内存占用。由于二值网络只是将网络的参数和激活值二值化,并没有改变网络的结构,因此我们要关注如何二值化,以及二值化后参数如何更新。

[5] https://pdfs.semanticscholar.org/f832/b16cb367802609d91d400085eb87d630212a.pdf

《Decoupled neural interfaces using synthetic gradients》是一篇来自Google DeepMind很有意思的神经网络论文,论文中用合成的梯度来分解backprop中的关联关系,五星推荐。

[6] https://arxiv.org/pdf/1608.05343.pdf

 

2. 深度学习优化

《On the importance of initialization and momentum in deep learning》一文介绍了初始化和Momentum技术在深度学习方面的重要性,更多的着眼在实验分析上。

[7] http://www.jmlr.org/proceedings/papers/v28/sutskever13.pdf

Adam是一种基于梯度的优化方法,与SDG类似。其具体信息可以参阅论文《Adam: A method for stochastic optimization》。

[8] https://arxiv.org/pdf/1412.6980.pdf

《Learning to learn by gradient descent by gradient descent》由 Andrychowicz 和 Marcin 等专家撰写而成,本文的思想是利用LSTM学习神经网络的更新策略,即利用梯度下降法学习一个优化器,然后用这个优化器去优化其他网络的参数。该文指导意义颇强,五星推荐。

[9] https://arxiv.org/pdf/1606.04474.pdf

斯坦福大学的 Song Han 与 Huizi Mao 等专家撰写了一系列有关网络压缩的论文,《Deep compression: Compressing deep neural network with pruning, trained quantization and huffman coding》是其中一篇,论文题目已经概括了文中的三个重点,非常清晰明了。同时它也荣获了 ICLR 2016 最佳论文,五星推荐。

[10] https://pdfs.semanticscholar.org/5b6c/9dda1d88095fa4aac1507348e498a1f2e863.pdf

《SqueezeNet: AlexNet-level accuracy with 50x fewer parameters and< 1MB model size》由 Iandola 和 Forrest N 等专家撰写,开头论文先提了在相同精确度下,体积更小的深度神经网络有着3点好处。随后,提出了本文的创新 SqueezeNet 并给出了一个分类精度接近 AlexNet1 的网络,模型缩小 510 倍,还归纳了缩小模型尺寸时的设计思路。

[11] https://arxiv.org/pdf/1602.07360.pdf

 

3. 无监督学习/深层生成模型

《Building high-level features using large scale unsupervised learning》讲述了 Google Brain 中特征学习的原理,通过使用未标记的图像学习人脸、猫脸特征,得到检测器。文章使用大数据构建了一个9层的局部连接稀疏自编码网络,使用模型并行化和异步 SGD 在 1000 个机器(16000核)上训练了 3 天,实验结果显示可以在未标记图像是否有人脸的情况下训练出一个人脸检测器。

[12] https://arxiv.org/pdf/1112.6209.pdf&embed

Kingma、 Diederik P 和 Max Welling 三位专家共同撰写了《Auto-encoding variational bayes》,该论文提出一个融合 Variational Bayes 方法和神经网络的方法,这个方法可以用来构造生成模型的自编码器。

[13] https://arxiv.org/pdf/1312.6114.pdf

《Generative adversarial nets》是 Ian Goodfellow 大神的 2014 年的论文,中文应该叫做对抗网络,在许多教程中作为非监督深度学习的代表作给予推广。本文解决了非监督学习中的著名问题:给定一批样本,训练一个系统,能够生成类似的新样本。五星推荐。

[14] http://papers.nips.cc/paper/5423-generative-adversarial-nets.pdf

《Unsupervised representation learning with deep convolutional generative adversarial networks》是在 GAN 的论文中提出的对抗模型的原型,本文给出了基于卷机网的实现。同时还描述了实现过程中的细节,比如参数设置。也提到了解决 GAN 中训练不稳定的措施,但是并非完全解决。文中还提到利用对抗生成网络来做半监督学习。在训练结束后,识别网络可以用来提取图片特征,输入有标签的训练图片,可以将卷基层的输出特征作为 X ,标签作为 Y 做训练。

[15] https://arxiv.org/pdf/1511.06434.pdf

《DRAW: A recurrent neural network for image generation》来自谷歌,描述了如何用 Deep Recurrent Attentive Writer (DRAW)神经网络框架自动生成图像,五星推荐。

[16] http://jmlr.org/proceedings/papers/v37/gregor15.pdf

Pixel recurrent neural networks》是谷歌 ICML 获奖论文,它解释了像素递归神经网络是如何帮图片“极致”建模的。在这篇文章中,作者在深度递归网络下建立了对自然图片的通用建模并显著提升了它的效率。此外,作者提出了一种新颖的二维 LSTM 层:ROW LSTM和 Diagonal BiLSTM,它能更容易扩展到其他数据上。

[17] https://arxiv.org/pdf/1601.06759.pdf

《Conditional Image Generation with PixelCNN Decoders》来自谷歌DeepMind团队。他们研究一种基于PixelCNN(像素卷积神经网络)架构的模型,可以根据条件的变化生成新的图像。如果该模型输入ImageNet图像库的分类标签照片,该模型能生成多变的真实场景的照片,比如动物、风景等。如果该模型输入其他卷积神经生成的未见过的人脸照片,该模型能生成同一个人的不同表情、姿势的照片。

[18] https://arxiv.org/pdf/1606.05328.pdf

 

4. 循环神经网络/序列到序列模式

《Generating sequences with recurrent neural networks》一文由 Graves 和 Alex 两位专家合力撰写,这篇论文解释了用递归神经网络生成手写体的原理。

[19] https://arxiv.org/pdf/1308.0850.pdf

《Learning phrase representations using RNN encoder-decoder for statistical machine translation》完成了将英文转译为法文的任务,使用了一个 encoder-decoder 模型,在 encoder 的 RNN 模型中是将序列转化为一个向量。在 decoder 中是将向量转化为输出序列,使用 encoder-decoder 能够加入词语与词语之间的顺序信息。此外,还将序列表达为一个向量,利用向量能够清楚的看出那些语义上相近的词聚集在一起。

[20] https://arxiv.org/pdf/1406.1078.pdf

《Sequence to sequence learning with neural networks》是谷歌的 I. Sutskever 等人提出的一种序列到序列的学习方法, 最直接的应用就是机器翻译。

[21] http://papers.nips.cc/paper/5346-information-based-learning-by-agents-in-unbounded-state-spaces.pdf

Attention 机制最早是在视觉图像领域提出来的,随后 Bahdanau 等人在论文《Neural Machine Translation by Jointly Learning to Align and Translate》中,使用类似 attention 的机制在机器翻译任务上将翻译和对齐同时进行,他们算是第一个提出将 attention 机制应用到 NLP 领域中的团队。

[22] https://arxiv.org/pdf/1409.0473v7.pdf

《A Neural Conversational Model》是最早应用于序列到序列框架建立对话模型的论文,即便其中使用的模型结构并不复杂,网络层数数量也不多,但效果是却很可观。

[23] https://arxiv.org/pdf/1506.05869.pdf

 

5.神经图灵机

《Neural turing machines》一文介绍了神经图灵机,一种从生物可行内存和数字计算机的启发产生的神经网络架构。如同传统的神经网络,这个架构也是可微的端对端的并且可以通过梯度下降进行训练。我们的实验展示了它有能力从样本数据中学习简单的算法并且能够将这些算法推广到更多的超越了训练样本本身的数据上。绝对的五星推荐。

[24] https://arxiv.org/pdf/1410.5401.pdf

神经图灵机是当前深度学习领域三大重要研究方向之一。论文《Reinforcement learning neural Turing machines》利用增强学习算法来对神经网络进行训练,从而使神经图灵机的界面变得表现力十足。

[25] https://pdfs.semanticscholar.org/f10e/071292d593fef939e6ef4a59baf0bb3a6c2b.pdf

《Memory networks》由四位专家撰写而成,实际上所谓的 Memory Network 是一个通用的框架而已,内部的输入映射、更新记忆映射、输出映射、响应映射都是可以更换的。

[26] https://arxiv.org/pdf/1410.3916.pdf

《End-to-end memory networks》在算法层面解决了让记忆网络端对端进行训练的问题,在应用方面则解决了问题回答和语言建模等问题。

[27] http://papers.nips.cc/paper/5846-end-to-end-memory-networks.pdf

《Pointer networks》中提出了一种新型的网络架构,用来学习从一个序列输入到一个序列输出的推导。跟以往的成果不同之处在于,输入输出的长度都是可变的,输出的长度跟输入有关。

[28] http://papers.nips.cc/paper/5866-pointer-networks.pdf

《Hybrid computing using a neural network with dynamic external memory》是谷歌 DeepMind 首发于《自然》杂志的论文,它介绍了一种记忆增强式的神经网络形式,其被称为可微神经计算机(differentiable neural computer),研究表明它可以学习使用记忆来回答有关复杂的结构化数据的问题,其中包括人工生成的故事、家族树、甚至伦敦地铁的地图。研究还表明它还能使用强化学习解决拼图游戏问题。五星推荐。

[29] https://www.dropbox.com/s/0a40xi702grx3dq/2016-graves.pdf

 

6. 深度强化学习

终于!我们来到了深度强化学习的门下。说到这个名词,怎么能不提第一篇提出深度强化学习的论文呢?Mnih 所写的《Playing atari with deep reinforcement learning》将卷积神经网络和 Q Learning 结合,使用同一个网络玩 Atari 2600(也就是打方块)这类只需要短时记忆的 7 种游戏。结果显示,这种算法无需人工提取特征,还能生成无限样本以实现监督训练。

[30] http://arxiv.org/pdf/1312.5602.pdf

而至于深度强化学习的里程碑之作,同样要属同一作者的《Human-level control through deep reinforcement learning》,作者发明了一个名为DQN也就是深度Q网络的东西,让人工神经网络能直接从传感器的输入数据中获得物体分类,成功实现端到端的强化学习算法从高维的传感器输入中直接学习到成功策略。

[31] http://www.davidqiu.com:8888/research/nature14236.pdf

而接下来这篇名为《Dueling network architectures for deep reinforcement learning》的文章则提出了一个新的网络——竞争架构网络。它包括状态价值函数和状态依存动作优势函数。这一架构在多种价值相似的动作面前能引发更好的政策评估。此文当选 ICML 2016最佳论文大奖。

[32] http://arxiv.org/pdf/1511.06581

《Asynchronous methods for deep reinforcement learning》由 DeepMind 出品,主要增强了 Atari 2600 的游戏效果,也被视为通过多个实例采集样本进行异步更新的经典案例。

[33] http://arxiv.org/pdf/1602.01783

比起传统的规划方法,《Continuous control with deep reinforcement learning》里提到的DQL方法能够应用于连续动作领域,鲁棒解决了  20 个仿真运动,采用的是基于ICML 2014的Deterministic policy gradient (DPG)的 actor-critic 算法,名为 DDPG。

[34] http://arxiv.org/pdf/1509.02971

《Continuous Deep Q-Learning with Model-based Acceleration》采用了 Advantage Function 完成增强学习工作,但主要集中于变量连续行动空间。而就像标题所言,为了加快机器经验获取,研究还用卡尔曼滤波器加局部线性模型。实验结果显示,这种方法比前一篇论文提及的 DDPG 要好些。

[35] http://arxiv.org/pdf/1603.00748

Schulman的《Trust region policy optimization》可谓是计算机玩游戏的一大突破,这个名为 TRPO 的算法所呈现的结果丝毫不逊色于 DeepMind 的研究成果,展示了一种广义的学习能力。除了叫机器人走路,我们还能让它成为游戏高手。

[36] http://www.jmlr.org/proceedings/papers/v37/schulman15.pdf

接下来介绍的这篇论文就是鼎鼎大名的 AlphaGo 所运用的算法,《Mastering the game of Go with deep neural networks and tree search》里,谷歌运用了 13 层的策略网络,让计算机学会用蒙特卡罗搜索树玩围棋游戏。当然,五星推荐此篇,不服来辩。

[37]  http://willamette.edu/~levenick/cs448/goNature.pdf

 

7. 无监督特征学习

《Deep Learning of Representations for Unsupervised and Transfer Learning》可谓无监督特征学习的开山之作。

[38] http://www.jmlr.org/proceedings/papers/v27/bengio12a/bengio12a.pdf

而接下来的这篇《Lifelong Machine Learning Systems: Beyond Learning Algorithms》主要提到的观点是,如果一个具有Lifelong Machine Learning能力的机器学习系统,是否能够使用解决此前问题的相关知识帮助它解决新遇到的问题,也就是举一反三的能力。文章在 2013 年的AAAI 春季研讨会上首次提出。

[39] http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.696.7800&rep=rep1&type=pdf

人工智能教父又来了,他这次和 Dean 合作带来的是《Distilling the knowledge in a neural network》,也就是压缩神经网络。不过核心创新貌似不多,所以给个四星吧。

[40] http://arxiv.org/pdf/1503.02531

《Policy distillation》,文章由谷歌大神Andrei Alexandru Rusu 所写,同款文章还有 Parisotto 的《Actor-mimic: Deep multitask and transfer reinforcement learning》,都是在讲 RL 域的问题。

[41] http://arxiv.org/pdf/1511.0629

[42] http://arxiv.org/pdf/1511.06342

这里还有另外一篇 Andrei 的文章,名为《Progressive neural networks》,提出了一项名为“渐进式神经网络”的算法,即在仿真环境中训练机器学习,随后就能把知识迁移到真实环境中。无疑,这将大大加速机器人的学习速度。

[43] https://arxiv.org/pdf/1606.04671

 

8. 一步之遥

以下五篇论文虽然并不是完全针对深度学习而推荐,但包含的一些基本思想还是具有借鉴意义的。

《Human-level concept learning through probabilistic program induction》五星推荐,文章主要介绍了贝叶斯学习程序(BPL)框架,“如何依靠简单的例子来对新概念进行学习和加工,学习主体是人类。”

[44] http://clm.utexas.edu/compjclub/wp-content/uploads/2016/02/lake2015.pdf

而读读 Koch 的《Siamese Neural Networks for One-shot Image Recognition》和这篇《One-shot Learning with Memory-Augmented Neural Networks》着实很有必要。

[45] http://www.cs.utoronto.ca/~gkoch/files/msc-thesis.pdf

[46]http://arxiv.org/pdf/1605.06065

将重点放在大数据上的《Low-shot visual object recognition》则是走向图像识别的必要一步。

[47]http://arxiv.org/pdf/1606.02819

posted on 2016-10-25 15:45  sxron  阅读(3747)  评论(0编辑  收藏  举报