嵌牛IT观察

为什么要有深度学习?

2020-06-08  本文已影响0人  西贝溪贝

姓名:贾聪月

学号:19021210915

转自:https://blog.csdn.net/yc733uIz/article/details/78840638

【嵌牛导读】深度学习可以用更多的数据或是更好的算法来提高学习算法的结果。它不以任何损失函数为特征,也不会被特定公式所限制,这使得该算法对科学家们更为开放。性能表现方面,深度学习探索了神经网络的概率空间,与其他工具相比,深度学习算法更适合无监督和半监督学习。

【嵌牛鼻子】深度学习、神经网络

【嵌牛提问】为什么要有深度学习?

【嵌牛正文】

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

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

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

进一步地说,引用 《Deep Learning Book MIT》这本书上的某个观点,或许能进一步给出为什么要从机器学习到深度学习。

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

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

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

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

深度学习系统学习清单

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

《Deep Learning Book MIT》这本书的组织思路如下:

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

2.Sigmoid neurons 

3.The architecture of neural networks

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

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

5 反向传播算法(BP)

6 提升神经元学习的方法

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

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

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

DNN,深度神经网络

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

RNN,循环神经网络

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

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

LSTM

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

CNN,卷积神经网络

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

上一篇下一篇

猜你喜欢

热点阅读