通过深度神经网络快速认识深度学习

【深度学习与深层次神经网络结构】 

  【什么是深度学习】

    通过 多层 非线性 变换对高复杂度数据建模的算法的合集。

  【什么是神经网络】

    【前馈神经网络】

    【神经网络的训练】

  【线性模型的局限性】

      1 多层线性模型/线性网络的组合,仍然是线性的——只通过线性变换,多层的全连接线性神经网络与单层神经网络的作用是相同的。如果一个问题可以用一条直线划分,那么这个问题可以用线性模型解决。对于线性不可分问题无法处理。

      2  异或问题 不是线性可分问题,感知机(单层神经网络-线性分类器),无法解决线性问题。同样多层的线性网络组合也不能解决异或问题。

  【激活函数实现去线性化】:实质上是对线性模型的结果再进行变换处理

    激活函数可以曲线型

  【多层网络解决异或问题

    多层网络,去线性后可以解决异或问题。可在TensorFlow游乐场中测试。

    【疑问】x1*x2 引入,单层神经网络也可解决异或问题?- 参考《机器学习》

  【常用激活函数】

  【自定义激活函数】

  【损失函数】:神经网络的训练过程即是寻找使损失函数最小的参数组的过程!

  【经典损失函数】

    【分类问题-交叉熵】:神经网络解决分类问题输出为一个 n维向量,n为类别数。理想的分类结果为 【0,1,0,0,0】,实际预测结果为【0.1,0.8,0.05,0.05,0】

      评估实际预测结果与理想结果之间的接近程度的方法:交叉熵。交叉熵刻画两个概率分布之间的距离。

      SoftMax函数,将神经网络前向传输结果转换为概率分布,即【0.1,0.8,0.05,0.05,0】      

    【回归问题-MSE】

  【自定义损失函数】

3【网络优化】

  【反向传播与梯度下降算法】

    梯度下降算法:用于优化单个参数的取值。梯度下降算法会的带式更新参数,沿着梯度的反方向让参数最小。

    反向传播:所有参数上使用梯度下降算法。  

  【基础优化方法】

  【学习率】:每完整的迭代一遍训练数据,学习率就减少一次。训练过程中会对数据完整迭代多轮。

    初始学习率:初始值

    衰减系数:系数

    衰减速度:步长

4 【过拟合】

  【正则化】:在损失函数中加入权重项

  【滑动平均模型】:模型参数更新过程中会维护一个影子参数组。每一轮迭代时更新影子参数组,当前参数值与影子参数相同。

    衰减率:一般会设置成非常接近1,例如:0.999

  【Droupout】

  

【验证集、测试集】

【经验风险最小化】  

【结构风险最小化】

猜你喜欢

转载自www.cnblogs.com/ailex/p/9660751.html