深度学习(Deep Learning)综述
深度学习是ML研究中的一个新的领域,它被引入到ML中使ML更接近于其原始的目标:AI。查看a brief introduction to Machine Learning for AI 和 an introduction to Deep Learning algorithms.
深度学习是关于学习多个表示和抽象层次,这些层次帮助解释数据,例如图像,声音和文本。对于更多的关于深度学习算法的知识,查看:
- The monograph or review paper Learning Deep Architectures for AI (Foundations & Trends in Machine Learning, 2009).
- The ICML 2009 Workshop on Learning Feature Hierarchies webpage has a list of references.
- The LISA public wiki has a reading list and a bibliography.
- Geoff Hinton has readings from last year’s NIPS tutorial.
这篇综述主要是介绍一些最重要的深度学习算法,并将演示如何用Theano来运行它们。Theano是一个python库,使得写深度学习模型更加容易,同时也给出了一些关于在GPU上训练它们的选项。
这个算法的综述有一些先决条件。你应该首先知道一个关于python的知识,并熟悉numpy。由于这个综述是关于如何使用Theano,你应该首先阅读Theano basic tutorial。一旦你完成这些,阅读我们的Getting Started章节---它将介绍概念定义,数据集,和利用随机梯度下降来优化模型的方法。
纯有监督学习算法可以按照以下顺序阅读:
- Logistic Regression - using Theano for something simple
- Multilayer perceptron - introduction to layers
- Deep Convolutional Network - a simplified version of LeNet5
无监督和半监督学习算法可以用任意顺序阅读(auto-encoders可以被独立于RBM/DBM地阅读):
- Auto Encoders, Denoising Autoencoders - description of autoencoders
- Stacked Denoising Auto-Encoders - easy steps into unsupervised pre-training for deep nets
- Restricted Boltzmann Machines - single layer generative RBM model
- Deep Belief Networks - unsupervised generative pre-training of stacked RBMs followed by supervised fine-tuning
关于mcRBM模型,我们有一篇新的关于从能量模型中抽样的综述:
- HMC Sampling - hybrid (aka Hamiltonian) Monte-Carlo sampling with scan()