机器学习笔记5_Why Deep Learning & BP

本文是李宏毅机器学习的笔记,这是第五节,介绍了为什么是Deep Learning,以及介绍了反向传播算法。

文章目录

      • 1. Why Deep Learning
      • 2. BackPropagation

1. Why Deep Learning

深度学习就是在4中提到的鱼和熊掌可兼得的一种方法。首先回顾一下network的构成。
机器学习笔记5_Why Deep Learning & BP_第1张图片
从下面的实验中,可以看出Thin+Tall的神经网络表现的要更好一些。所以,虽然一层神经网络只要足够宽就可以表示任何函数,但是对比相同参数量的deep structure效果要差很多。
机器学习笔记5_Why Deep Learning & BP_第2张图片
问什么使用deep learning,首先用逻辑电路的例子说明一下,对于表示同样的逻辑表达式,单层网络需要O( 2 d 2^d 2d)个门电路,但是如果是多层结构,只需要O( d d d)个门电路
机器学习笔记5_Why Deep Learning & BP_第3张图片
接下来用一个神经网络的例子进行说明:
机器学习笔记5_Why Deep Learning & BP_第4张图片
机器学习笔记5_Why Deep Learning & BP_第5张图片
机器学习笔记5_Why Deep Learning & BP_第6张图片
从下图中可以看出Deep的结构,表示同样的函数,所用的神经节点明显要少,只需2K 个,但是对于Shallow的结构,就真的需要 2 K 2^K 2K个节点。
机器学习笔记5_Why Deep Learning & BP_第7张图片
Deep networks适用于loss低的且是复杂而且有规律的function
Deep network甚至当 y = x 2 y=x^2 y=x2时就比shallow的要好。
机器学习笔记5_Why Deep Learning & BP_第8张图片

2. BackPropagation

首先回顾下梯度下降的流程
机器学习笔记5_Why Deep Learning & BP_第9张图片
对于这个计算梯度的过程,我们使用反向传播算法,反向传播算法是基于链式求导法则的一种方法,所谓链式求导法则就是:
机器学习笔记5_Why Deep Learning & BP_第10张图片
接下来举个例子说明下,反向传播算法的流程,首先定义一个损失函数 L ( θ ) L(\theta) L(θ) C n ( θ ) C^n(\theta) Cn(θ)代表预测值与真实值之间的差距函数,N代表输入数据的数量,w代表要求的参数
机器学习笔记5_Why Deep Learning & BP_第11张图片
从下图可以看出求出梯度,需要有两个步骤,一个是前向传播,求出 δ z δ w \frac{\delta_z}{\delta_w} δwδz,另一部就是反向传播求出 δ C δ z \frac{\delta_C}{\delta_z} δzδC
机器学习笔记5_Why Deep Learning & BP_第12张图片
前向传播的值就是与之相连的input节点的值。
机器学习笔记5_Why Deep Learning & BP_第13张图片
机器学习笔记5_Why Deep Learning & BP_第14张图片
反向传播的计算如下
机器学习笔记5_Why Deep Learning & BP_第15张图片
机器学习笔记5_Why Deep Learning & BP_第16张图片
机器学习笔记5_Why Deep Learning & BP_第17张图片

机器学习笔记5_Why Deep Learning & BP_第18张图片

机器学习笔记5_Why Deep Learning & BP_第19张图片

机器学习笔记5_Why Deep Learning & BP_第20张图片

机器学习笔记5_Why Deep Learning & BP_第21张图片

你可能感兴趣的:(深度学习笔记,机器学习)