中文

智慧分享|【人工智能方法及应用系列讲座】第三讲——深度学习

发表时间:2019-11-22
作者:德尔智慧
浏览量: 139

深度学习


人工智能是引领未来的战略性技术,了解人工智能领域的发展过程及现状,了解机器学习、神经网络、深度学习的基本原理、

适用场景、算法方法,通过课程学习能够结合自身工作用人工智能思维思考、解决实际问题。

image.png

【人工智能方法及应用系列讲座】(将分为第一讲、第二讲、第三讲、第四讲共四篇章逐步分享给大家),主讲人是合肥工业大学博士、

博士后吕增威为大家带来的全面了解人工智能的纯干货分享,值得学习与收藏(致谢:由于参考来源转载或改编,版权归原作者所有,在此对原作者表示感谢!)。

此篇为第三讲——深度学习。


一、深度学习原理

什么是深度?为什么深度?

image.png

Deep = 很多隐藏层

image.png

优点:1.高效率。2.可塑性。 如果用传统算法去解决一个问题,调整模型的代价可能是把代码重新写一遍,这使得改进的成本巨大。

深度学习只需要调整参数,就能改变模型。3.普适性。 神经网络是通过学习来解决问题,可以根据问题自动建立模型,

所以能够适用于各种问题,而不是局限于某个固定的问题。

缺点:1.训练成本高。深度学习要求使用高端GPU。这些GPU非常昂贵,但是如果没有它们,就很难实现高性能的深度网络。

要有效地使用这样的高端GPU,还需要一个快速的CPU、SSD存储、快速而且容量大的RAM。经典的ML算法只需要一个像样的CPU就可以训练得很好,并不需要最好的硬件。

2.不会直接学习知识。知识是由从数据提炼出来的。如果你要把人类的知识直接教给它,比如把爱因斯坦的相对论教给它,那么现在还没有相应的解决方案。

3.不善于解决某些特定问题。复杂的数学运算用神经网络来进行恐怕不是最佳方案,需要结合其他算法。4.本质是黑盒,其理论不完备。

image.png

既然深度好,为什么不深度?

梯度消失和梯度爆炸问题

本质上是一样的,都是因为网络层数太深而引发的梯度反向传播中的连乘效应。

在标量情况下,要么当这个值的绝对值大于1时,发生梯度爆炸;要么当这个值的绝对值小于1时,发生梯度消失,直到为0。

image.png

深度学习领域的进步主要靠不断增长的训练数据量以及不断增长的计算力(CPU和GPU的发展);一个巨大的突破就是用relu函数代替了sigmoid函数。


二、卷积神经网络

image.png

图片是由像素点组成的,用矩阵表示的,28*28的矩阵,肯定是没法直接放到神经元里的,我们得把它“拍平”,变成一个28*28=784 的一列向量,

这一列向量和隐含层的15个神经元连接,就有784*15=11760个权重w,隐含层和最后的输出层的10个神经元连接,就有11760*10=117600个权重w,

再加上隐含层的偏置项15个和输出层的偏置项10个,就是:117625个参数了。

卷积神经网络的由来

从1989年LeCun提出第一个真正意义上的卷积神经网络到今天为止,已经30年。

image.png

image.png

卷积层

image.png

一维卷积运算

image.png

两维卷积运算

image.png

卷积填充

image.png

第一个缺点是每次做卷积操作,你的图像就会缩小

第二个缺点时,如果你注意角落边缘的像素,这个像素点(绿色阴影标记)只被一个输出所触碰或者使用,

因为它位于这个 3×3 的区域的一角。但如果是在中间的像素点,比如这个(红色方框标记),就会有许多 3×3 的区域与之重叠。

所以那些在角落或者边缘区域的像素点在输出中采用较少,意味着你丢掉了图像边缘位置的许多信息

image.png

池化层(Pooling)

图像具有一种“静态性”的属性,这也就意味着在一个图像区域有用的特征极有可能在另一个区域同样适用。

因此,为了描述大的图像,一个很自然的想法就是对不同位置的特征进行聚合统计,

例如,人们可以计算图像一个区域上的某个特定特征的平均值 (或最大值)。

这些概要统计特征不仅具有低得多的维度 (相比使用所有提取得到的特征),同时还会改善结果(不容易过拟合)。

这种聚合的操作就叫做池化 (pooling),有时也称为平均池化或者最大池化 (取决于计算池化的方法)。

image.png

非线性激活层

image.png

 image.png

彩色图像?

image.png

彩色图像,一般都是RGB三个通道(channel)的,因此输入数据的维度一般有三个:(长,宽,通道)。比如一个28×28的RGB图片,维度就是(28,28,3)。

多通道卷积

image.png

三维卷积

image.png

image.png


三、循环神经网络(RNN)

序列类型的数据怎么处理?

相互依赖的(有限或无限)数据流,比如时间序列数据、信息性的字符串、对话等。Recurrent Neural Networks,翻译成循环神经网络、递归神经网络、时间递归神经网络。

image.png

RNN的结构

image.png

代表性的递归神经网络包括

image.png

长短期记忆神经网络(LSTM)

image.png

cell的状态像是一条传送带,它贯穿整条链,其中只发生一些小的线性作用。信息流过这条线而不改变是非常容易的。

image.png

image.png

Gated Recurrent Unit(GRU网络)

GRU保持了LSTM的效果同时又使结构更加简单。

image.png


四、深度信念网络(DBN)

受限玻尔兹曼机((Restricted Boltzmann Machine,RBM)

Hinton教授在2006年的关于深度信念网络(deep belief network,DBN)的工作,以及逐层预训练的训练方法,开启了深度学习的序章。

image.png

将限制波尔兹曼机(RBM)堆叠起来,通过逐层训练RBM网络,并将训练好的RBM网络堆叠成深度学习网络,可以得到非常好的初始参数值。

image.png

深度信念网络DBN和深度玻尔兹曼机DBM

image.png

生成式对抗网络(GAN)

2014年的时候,一种叫做生成式对抗网络(GAN)的东西横空出世了

image.png


五、深度强化学习(DRL)

image.png

强化学习(RL)

image.png

深度强化学习(RL)

image.png

image.png

热门推荐