62

为什么要有深度学习?系统学习清单

 6 years ago
source link: https://mp.weixin.qq.com/s?__biz=MzI3NTkyMjA4NA%3D%3D&%3Bmid=2247484546&%3Bidx=1&%3Bsn=5faace9b5763359019184327f53056dc&%3Bchksm=eb7c2949dc0ba05f0435ea2d1cc8630af0191b577f5033c5aea0685bc74e75f09dfc9c7
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

为什么要有深度学习?系统学习清单

Original alg-flody 程序员zhenguo 2017-12-15 14:24 Posted on

收录于合集 #AI算法真经 178个

请点击上面公众号,免费订阅。 

《实例》阐述算法,通俗易懂,助您对算法的理解达到一个新高度。包含但不限于:经典算法,机器学习,深度学习,LeetCode 题解,Kaggle 实战。期待您的到来!

利用36天的时间,系统地梳理了机器学习(ML)的一些经典算法,从算法思想,到算法实例,有的包括源码实现,有的包括实战分析,大致分类如下:

机器学习的概念总结

33 机器学习集成算法:XGBoost模型构造

34 机器学习:XGBoost 安装及实战应用

有了对这些 ML 算法的基本认识后,下一站,探索下深度学习吧,首先要清楚,深度学习也是机器学习的一个子领域,并且在近几年变得非常火热。

那么,第一问题,为什么深度学习变得如此火热? 上面说的这些ML算法还有用吗? 

为什么要有深度学习?

深度学习可以用更多的数据或是更好的算法来提高学习算法的结果。对于某些应用而言,深度学习在大数据集上的表现比其他机器学习(ML)方法都要好。

性能表现方面,深度学习探索了神经网络的概率空间,与其他工具相比,深度学习算法更适合无监督和半监督学习,更适合强特征提取,也更适合于图像识别领域、文本识别领域、语音识别领域等。

为什么深度学习会如此被热衷,因为它不以任何损失函数为特征,也不会被特定公式所限制,这使得该算法对科学家们更为开放,它能以比其他传统机器学习工具更好的方式进行使用和扩展。

进一步地说,引用 《Deep Learning Book MIT》(免费电子书:http://www.deeplearningbook.org/)这本书上的某个观点,或许能进一步给出为什么要从机器学习到深度学习,

1960年后,线性分类器的局限性开始被认识到,它只能将输入空间切分为非常简单的区域,即由一个超平面分离的两个半区间。对于像图像和语音识别这类问题,需要输入-输出函数对输入的非相关变化(位置的变化,方向变化,光照变化,语音的高音和低音变化)不敏感,而对类别敏感(如白狼和萨摩耶犬)。

在像素级别,两张不同的姿态,不同环境下萨摩耶犬的照片会有极大的不同,而同样的背景,同样位置的萨摩耶犬和白狼的照片可能非常相似。对直接操作图像像素的线性分类器或者其他“浅层”分类器可能不容易区分后两张照片,同时将前两张放在同一类。这就是为什么浅层分类器需要好的特征提取器—有选择地产生图片中重要类别信息的表示,同时对无关信息如姿态具有不变性—-以解决选择无关的困境。 

为了让分类器更强大,可以使用广义非线性特征以及核函数方法。但广义特征(如高斯核函数)泛华能力差,常规的方法是手动设计好的特征提取器,而这需要大量工程经验和领域专家才能完成。如果好的特征可以使用通过学习的方法自动学习得到,上述问题就可以避免,这是深度学习的核心优势。

由此可见,深度学习有它强于传统的机器学习算法的地方,并且有时候只能用深度学习借助训练神经网络来完成某些识别任务。

深度学习系统学习清单

有了对ML算法的基本认识后,有助于对深度学习的快速理解,根据 playground.tensorflow.org 给出的一本免费深度学习电子书,再结合相关的paper,可以快速了解其中的理论和算法,包括广泛使用的几套神经网络模型,先对这些内容做一个提纲,接下来再有重点的总结。

这本书的组织思路如下:

1.  Perceptrons 感知器,这是最简单的神经网络

Image

2. Sigmoid neurons 

Image

3. The architecture of neural networks

Image

4  A simple network to classify handwritten digits 手写字分类

对手写字分类任务中,涉及到深度学习非常重要的参数求解方法:梯度下降学习权重参数;书中给出了源码实现。

5 反向传播算法(BP)

6 提升神经元学习的方法

7 可视化地证明:神经网络可以表示任何函数

8 为什么深度神经网络难以训练,包括常见的梯度消失问题。

再分析总结几套常用的神经网络:

DNN,深度神经网路。

特指全连接的神经元结构,并不包含卷积单元或是时间上的关联。

Image

RNN,循环神经网络

训练样本输入是连续的序列,且序列的长短不一,比如基于时间的序列:一段连续的语音,一段连续的手写文字。这些序列比较长,且长度不一,比较难直接的拆分成一个个独立的样本来通过DNN/CNN进行训练。

但是 RNN有致命的缺陷,只能知道记忆短暂的信息,对于距离相距很远的信息记忆能力差。比如我们做完型填空时,可能需要整合全文来填某一个句子,比如 I grew up in China….此处省略一万字.....I speak fluent _____ . 如果 RNN 只知道邻近的几个单词,可能它会知道此处需要填写一门语言,但至于应该填什么,就需要找到更远前的信息,直到 找到 China 才行。这种需要寻找相距很远信息的情况,实际上非常常见。

此时需要,LSTM ,它是 RNN 的一种特殊形式,它被广泛应用在语音识别、语言建模、机器翻译、为图像起标题。

Image

CNN,卷积神经网络

是深度学习算法在图像处理领域的一个应用。CNN主要用来识别位移、缩放及其他形式扭曲不变性的二维图形。

Image

以上总结的是一本深度学习电子书的提纲,几套深度学习的神经网络模型,DNN,RNN,LSTM,CNN ,接下来,将会对它们进行详细总结。

http://neuralnetworksanddeeplearning.com

http://ufldl.stanford.edu/tutorial/

http://www.deeplearningbook.org/

Image

请记住:每天一小步,日积月累一大步!

Image

《实例》阐述算法,通俗易懂,助您对算法的理解达到一个新高度。包含但不限于:经典算法,机器学习,深度学习,LeetCode 题解,Kaggle 实战。期待您的到来!


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK