简单阐述一下BP的过程?

1.基本概念

BP(Back Propogation)算法是一种最有效的学习方法,主要特点是信号前向传递,而误差后向传播,通过不断调节网络权重值,使得网络的最终输出与期望输出尽可能接近,以达到训练的目的。前向过程中通过与正确标签计算损失,反向传递损失,更新参数,优化至最后的参数。

而面试的过程中,我们可以拿出一支笔,给面试官直接说,“老师,我来直接写一个吧,您看看呗?

“你看哈,我这一个两层的神经网络。其中 x x x是网络的输入, y y y是网络的输出, w w w是网络学习到的参数。"

“在这里, w w w的值就是我们需要更新的目标,但是我们只有一些 x x x与跟它对应的真实 y = f ( x ) y=f(x) y=f(x)的值,所以呢?我们需要使用这两个值来计算 w w w的值了,整个问题就转变成了下面的优化问题了,也就是我们需要求函数的最小值。”

image

在实际中,这类问题有一个经典的方法叫做梯度下降法。意思是我们先使用一个随机生成的 w w w,然后使用下面的公式不断更新 w w w的值,最终逼近真实效果。

w + = w − η ⋅ ∂ E ∂ w w^{+}=w-\eta \cdot \frac{\partial E}{\partial w} w+=wηwE

这里 w w w 是一个随机初始化的权重, ∂ E ∂ w \frac{\partial E}{\partial w} wE是表示当前误差对权重 w w w的梯度。 η \eta η是表示的学习率,通常不会很大,都是0.01以下的值,用来控制更新的步长。

2. BP基础之链式求导

y = g ( x ) y=g(x) y=g(x), z = f ( y ) z=f(y) z=f(y),那么 z = h ( x ) z=h(x) z=h(x),其中 h = f ∘ g h=f \circ g h=fg。其中 d y d x = g ′ ( x ) , d z d y = f ′ ( y ) \frac{d y}{d x}=g^{\prime}(x), \frac{d z}{d y}=f^{\prime}(y) dxdy=g(x),dydz=f(y)

当我们需要求 z z z x x x的导数 d z d x \frac{d z}{d x} dxdz就需要使用链式求导了。根据我们之前学过的知识:

h ′ ( x ) = d z d x = d z d y ⋅ d y d x h^{\prime}(x)=\frac{d z}{d x}=\frac{d z}{d y} \cdot \frac{d y}{d x} h(x)=dxdz=dydzdxdy

这里说的都还是以单变量作为例子,实际中,多维变量就是变成了求偏导数了。

OK!基本上面试的时候,答到这个份儿上了,就已经够了!!

3. 参考

  • https://blog.csdn.net/qq_43196058/article/details/102670461
  • https://zhuanlan.zhihu.com/p/40378224
  • https://zhuanlan.zhihu.com/p/21407711

大家好,我是灿视。目前是位算法工程师 + 创业者 + 奶爸的时间管理者!

我曾在19,20年联合了各大厂面试官,连续推出两版《百面计算机视觉》,受到了广泛好评,帮助了数百位同学们斩获了BAT等大小厂算法Offer。现在,我们继续出发,持续更新最强算法面经。
我曾经花了4个月,跨专业从双非上岸华五软工硕士,也从不会编程到进入到百度与腾讯实习。
欢迎加我私信,点赞朋友圈,参加朋友圈抽奖活动。如果你想加入<百面计算机视觉交流群>,也可以私我。在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值