计算机视觉工程师在面试过程中主要考察三个内容:图像处理、机器学习、深度学习。然而,各类资料纷繁复杂,或是简单的知识点罗列,或是有着详细数学推导令人望而生畏的大部头。为了督促自己学习,也为了方便后人,决心将常考必会的知识点以通俗易懂的方式设立专栏进行讲解,努力做到长期更新。此专栏不求甚解,只追求应付一般面试。希望该专栏羽翼渐丰之日,可以为大家免去寻找资料的劳累。每篇介绍一个知识点,没有先后顺序。想了解什么知识点可以私信或者评论,如果重要而且恰巧我也能学会,会尽快更新。最后,每一个知识点我会参考很多资料。考虑到简洁性,就不引用了。如有冒犯之处,联系我进行删除或者补加引用。在此先提前致歉了!
反向传播
Back Propagation
BP
关于反向传播
根据具体情境和链式法则
大家都可以进行推导
本文着重进行一般化推导(即BP的四大公式)
在推导过后,对BP的思想进行总结
我的数学能力一言难尽。。。
我能推出来,大家一定可以
点开这篇博客,一定要自己手写推导一遍以上
这样你关闭这篇博客才会有收获
为了互相鼓励,这篇博客的推导部分我也全部手写
先列出4个公式
推导:
思想
面试不一定让你证明,很可能让你自己写出这4个式子
记下来又比较困难
如果能够了解思想,会很有帮助
BP1:计算最后一层的反向误差
BP2:根据L+1层的反向误差计算L层的反向误差
BP3:根据反向误差计算w的梯度
BP4:根据反向误差计算b的梯度
然后根据梯度更新参数就好了
可以看出来,很像一个递归的过程:
第一层的反向误差需要第二层的
第二层的需要第三层的
。。。
第n-1层需要第n层的
BP1计算出第n层的反向误差
BP2就能计算所有层的反向误差
BP3和BP4就能计算参数的梯度了
这种方法也避免了计算某一层梯度时,要把后面所有层的反向误差再重新计算一遍
根据这个思想就可以自己推导出这4个公式了
完
欢迎讨论 欢迎吐槽