反向传播(Back propagation)笔记

本文详细介绍了反向传播算法在深度学习中的应用,包括反向传播的基本概念、深度学习知识背景、相关数学知识如链式法则和多元函数微分,以及在L2 规整化回归和多层感知器中的应用。通过反向传播,可以有效地计算神经网络的梯度,用于优化权重。总结中强调反向传播在现代神经网络中的核心地位,尽管其生物学解释尚待深入研究。
摘要由CSDN通过智能技术生成

反向广播 (Backpropagation)

Based on slides and readings by R. Grosse
此文为私人学习的笔记

总览

  • 反向广播几乎可以硕士深度学习的核心模块
    • 反向传播是一个用于计算梯度的算法
    • 反向传播是一个自动逆向计算微分的实例,它的应用甚至比神经网络本身更加广泛
    • 而自动微分实际上是一个对于链式法则求导的聪明的高效的应用

深度学习知识背景

  • 任务(目的): 回归, 二元区分, 多元区分
  • 模型: 线性的,log线性的, 多层感知的
  • 损失方程: 错误值(偏差)的平方, 0-1 的损失(Normalize), 交叉熵, 折页损失(hinge loss)
  • 优化算法: 直接方案, 梯度下降, 感知层
    • 这之中我们需要用到反向传播来计算梯度
    • 而梯度下降就是向着梯度相反的方向移动
    • 多层神经网络的权重空间: 针对一层网络的权重和偏差值的一个组合
    • 而我们用一下公式来计算消费梯度 d ε d w \frac{d\varepsilon}{dw} dwdε,也就是一个关于部分导数的向量
      • 而在训练中我们用 d L d w \frac{d\mathcal{L}}{dw} dwdL的均值来作为训练样本

相关数学知识

  • 一元函数的锁链法则
  • 如果方程式 f ( x ) f(x) f(x) x ( t ) x(t) x(t)都是关于t的一元函数,则

d d t f ( x ( t ) ) = d f d x d x d t \frac{d}{dt} f(x(t)) = \frac{df}{dx}\frac{dx}{dt} dtdf(x(t))=dxdfdtdx

compute loss
x
z
w
b
y
L
t
I
S

计算标记

  • y ˉ \bar{y} yˉ标记的是微分 d L d y \frac{d\mathcal{L}}{dy} dydL,有时也被叫做错误信号
  • 错误信号就是反向传播所需要计算的值
  • 而损失值和微分的计算可以用以下公式表示
损失值

z = w x + b y = σ ( z ) L = 1 2 ( y − t ) 2 z = wx +b \\ y = \sigma(z)\\ \mathcal{L} = \frac{1}{2}(y-t)^2 z=wx+by=σ(z)L=21(yt)2

计算微分

y ˉ = y − t z ˉ = y ˉ σ ′ ( z ) w ˉ = z ˉ x b ˉ = z ˉ \bar{y} = y-t \\ \bar{z} = \bar{y}\sigma'(z)\\ \bar{w} = \bar{z}x\\ \bar{b} = \bar{z} yˉ=ytzˉ=yˉσ(z)wˉ=zˉxbˉ=zˉ

扩展

  • 但是在神经网络中输出值(fan-out)可能会不止一个而此时会需要多元函数的链式法则
  • 此时我们遇到的问题是多元化而并非多层神经网络
L2 规整化回归
图解
x
z
b
w
y
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值