目录
一、深度学习介绍
1、深度学习历史
回顾一下deep learning的历史:
- 1958: Perceptron (linear model)
- 1969: Perceptron has limitation
- 1980s: Multi-layer perceptron
- Do not have significant difference from DNN today
- 1986: Backpropagation
- Usually more than 3 hidden layers is not helpful
- 1989: 1 hidden layer is “good enough”, why deep?
- 2006: RBM initialization (breakthrough)
- 2009: GPU
- 2011: Start to be popular in speech recognition
- 2012: win ILSVRC image competition
感知机(Perceptron)非常像我们的逻辑回归(Logistics Regression)只不过是没有sigmoid
激活函数。09年的GPU的发展是很关键的,使用GPU矩阵运算节省了很多的时间。
2、深度学习的步骤
一般来说,深度学习有两部分构成,一是构造神经网络,二是对模型进行评估,三是选择最优函数
3、全连接前馈神经网络
前馈:从信号流向来理解就是输入信号进入网络后,信号流动是单向的,即信号从前一层流向后一层,一直到输出层,其中任意两层之间的连接并没有反馈,亦即信号没有从后一层又返回到前一层。
全连接:层间神经元完全连接,每个输出神经元可以获取到所有输入神经元的信息,有利于信息汇总,常置于网络末层;连接与连接之间独立参数,大量的连接大大增加模型的参数规模。
全连接前馈神经网络,是利用多层感知机进行Logistic回归。
4、深度与隐藏层
深度:通过叠加若干层来模拟深度网络。
隐藏层:对于单层隐藏层,意味着通过输入数据的特征,抽象到另一个维度空间,来展现其更抽象化的特征,这些特征能更好的进行线性划分。而多层隐藏层,则为了更好的线性划分不同数据。
全连接神经网络把隐藏层通过特征提取来替代原来的特征工程,这样在最后一个隐藏层输出的就是一组新的特征(相当于黑箱操作)而对于输出层,其实是把前面的隐藏层的输出当做输入(经过特征提取得到的一组最好的特征)然后通过一个多分类器(可以是softmax函数)得到最后的输出y。
二、反向传播
1、为什么要进行反向传播?
由于深度学习中,存在若干隐藏层,如果深度过大,计算量就会增大。通过利用反向传播,逐层求出目标函数对各神经元权值的偏导数,构成目标函数对权值向量的梯度,为权值的优化提供依据,权值优化后,再进行正向传播,当输出的结果达到设定的标准时,算法结束。
2、何为反向传播?
由于人工神经网络的输入结果与输出结果有误差,通过计算估计值与实际值之间的误差,从输出层--隐藏层--输入层进行反向传播。
参考资料:
李宏毅视频地址:13-深度学习简介_哔哩哔哩_bilibili