4.反向传播与神经网络初步

这节课换了美女老师,美不美其次,是个亚洲面孔,看着亲切。她是李飞飞的博士生,年轻有为啊!

计算图框架

4.反向传播与神经网络初步_第1张图片
线性

可以用计算图表示的框架,就可以利用链式法则,实现方向传播。

反向传播

一个简单的方向传播的例子:

  • 例如,x=-2,y=5,z=-4
  • 引入中间变量q,q=x+y,关于q的x、y的偏导数均为1
  • 则f=qz,关于f的q的偏导数是z,也就是-4;z的偏导数是q,也就是x+y=3
  • 那么关于f的x的偏导数是-4,y的偏导数是-4,z的偏导数是3
4.反向传播与神经网络初步_第2张图片
反向传播

进一步讲解的例子

  • f是一个节点,它有两个输入x,y,一个输出z
  • 我们可以知道z关于x,y的梯度
  • 若知道L关于z的梯度值
  • 我们就可以利用链式法则求出L关于x,y的梯度
  • 对于每个节点,我们只关心它的输入输出就可以了,不需要关心其他节点
4.反向传播与神经网络初步_第3张图片
图片.png

又一个例子

  • 首先得到它的计算图框架
4.反向传播与神经网络初步_第4张图片
图片.png
  • 从末尾开始进行反向传播
4.反向传播与神经网络初步_第5张图片
图片.png
  • 接着
4.反向传播与神经网络初步_第6张图片
图片.png
  • 再往下
4.反向传播与神经网络初步_第7张图片
图片.png
  • 再接着往下
4.反向传播与神经网络初步_第8张图片
图片.png
  • 下面是加法部分,我们知道梯度是1,所以
4.反向传播与神经网络初步_第9张图片
图片.png

4.反向传播与神经网络初步_第10张图片
图片.png
  • 下面到了x0,w0,x1,w1,w2这层
4.反向传播与神经网络初步_第11张图片
图片.png

总结

  • 求出本地梯度
  • 求出上层梯度
  • 本地梯度乘以上层梯度就好了

注意

  • 精髓就是链式法则
  • 例如可以把方程中的一部分整体的梯度算出来,就不需要再分解了
  • 记住sigmoid的梯度公式
4.反向传播与神经网络初步_第12张图片
图片.png

在方向传播中,都做了什么

  • 加法门:分发
  • max门:只发送给一个输入
  • 乘法men:交叉转换
4.反向传播与神经网络初步_第13张图片
图片.png
  • 如果一个节点有多个上游节点相加,则梯度也相加


    4.反向传播与神经网络初步_第14张图片
    图片.png

高维度变量的方向传播怎么计算

  • 计算的流程是不变的
  • 只是x,y,z这些变量变成了矩阵
4.反向传播与神经网络初步_第15张图片
图片.png

一个例子

  • 正向传播
4.反向传播与神经网络初步_第16张图片
图片.png
  • 反向传播
4.反向传播与神经网络初步_第17张图片
图片.png
4.反向传播与神经网络初步_第18张图片
图片.png
4.反向传播与神经网络初步_第19张图片
图片.png

有点复杂,不解释了,动笔算算就明白了

神经网络介绍

  • 神经网络就是由一组函数组成的
  • 这是一个两层的神经网络,由一个线性方程和一个非线性方程组成
4.反向传播与神经网络初步_第20张图片
两层网络
4.反向传播与神经网络初步_第21张图片
三层网络
  • 激活函数
4.反向传播与神经网络初步_第22张图片
激活函数
  • 网络模型
4.反向传播与神经网络初步_第23张图片
网络模型

你可能感兴趣的:(4.反向传播与神经网络初步)