一、前序

深度学习的应用场景很多,不再叙述。罗列一下深度学习的发展历史:

【李宏毅 深度学习】Brief Introduction of Deep Learning

二、Fully Connect Feedforward Network

神经网络就是一个Function,输入和输出都是矩阵。

一个神经网络的结构可以称为一个“Function Set”。

【李宏毅 深度学习】Brief Introduction of Deep Learning

【李宏毅 深度学习】Brief Introduction of Deep Learning

【李宏毅 深度学习】Brief Introduction of Deep Learning

第一层称为“Input Layer”,最后一层称为“Output Layer”,中间的层称为“Hidden Layer”。

【注】:输入的向量维度与输出的向量维度不一定相等。

深度学习的“Deep”就是“Many hidden layers”.

【李宏毅 深度学习】Brief Introduction of Deep Learning

神经网络的计算实际上是一层层的矩阵计算。

【李宏毅 深度学习】Brief Introduction of Deep Learning

Neural Network 的运算,上一层的输出作为一个下一层的输入。

运用并行计算技术可以加快矩阵计算。

【李宏毅 深度学习】Brief Introduction of Deep Learning

【李宏毅 深度学习】Brief Introduction of Deep Learning

输出层作为多分类器。

Feature extractor replacing feature engineering.

【李宏毅 深度学习】Brief Introduction of Deep Learning

三、举一个例子(数字识别)

【李宏毅 深度学习】Brief Introduction of Deep Learning

【李宏毅 深度学习】Brief Introduction of Deep Learning

输入是256维向量。

输出是一个10维向量,表示数字1~9。

【李宏毅 深度学习】Brief Introduction of Deep Learning

前面说了,一个结构可以表示一个Function Set。在训练之前,首先需要确定这个神经网络的结构,然后选择”好“的参数来作为分类器。

【李宏毅 深度学习】Brief Introduction of Deep Learning

几个问题:

1.神经网络需要几层?每层多少个神经元?

不同的情况下有不同的设计结构,需要根据经验/直觉来确定。

2.是否可以自动的选择Structure?

答案是可以的。但是这中方法还没有很成熟,也没有普及。比如Evolutionary Artificial Neural Networks。

3.我们能不能自己设计Network Structure?

可以。比如CNN(Convolutional Neural Network )。

四、Three Steps for Deep Learning

【李宏毅 深度学习】Brief Introduction of Deep Learning

如何看一个unction是否是好呢?我们可以用Loss。

【李宏毅 深度学习】Brief Introduction of Deep Learning

【李宏毅 深度学习】Brief Introduction of Deep Learning

那怎么解Minimize total loss L呢?

这个方法就是Gradient Descent。不要觉得很失望啊,alpha都是用到了这个。

【李宏毅 深度学习】Brief Introduction of Deep Learning

相关文章: