BP与CNN的联系总结

本文探讨了BP全连接网络与CNN的反馈过程,总结了两者的联系。在BP网络中,介绍了误差调整项的计算;在CNN中,阐述了卷积层和池化层的误差反向传播,并解释了权值共享如何减少需要调整的参数数量。通过上采样和卷积操作,详细说明了误差对卷积核和偏置的偏导数计算。
部署运行你感兴趣的模型镜像

传统全连接BP网络与CNN的一些总结与联系

 

本文的目的是:

1、 对刚学知识的温故知新;

2、 作为一个笔记作用;

3、 恳请对错误点或者不恰当点的指正。

 

下面开始扯皮。

 

网络前向传播略。

BP网络反馈过程:

证明过程略,主要是链式法则,网上一大堆证明。下面给出结论,各个符号的意义体会到其中道理即可。

(粗体是向量or矩阵,正常体是标量)

一个重要的定义------误差调整项(or灵敏度)δ。

假设网络一共L层(第L层是输出层)

 

    δL = ƒˊ(μL)Ο (yn-tn)

Ο是逐项相乘

l(小写L)层的δ

    δl = (Wl+1)Tδl+1Ο ƒˊ(μl)

W是个权值矩阵;

δ列向量;

μ输入累积和的列向量。

 

CNN反馈过程:

当前层是卷积层,下一层是pooling

pooling层是由卷积层下采样得到(压缩),那么在计算卷积层的δ的时候,需要把pooling层的δ上采样回去,使得两个δmap图大小相等。

其实在计算卷积层的δ的时候,可以套用这个公式

    δl = (Wl+1)Tδl+1Ο ƒˊ(μl)

为什么呢?

卷积网络其实就是在全连接网络的基础上,把全连接改为部分连接,然后再利用权值共享的技巧大量减少网络需要修改的权值数量(或者说是数量级),这里共享的权值其实就是卷积核矩阵各个坐标上的元素是什么罢了,想象着把二维图片拉长为一维向量,即可理解这句话。在上采样前,通过卷积核,从卷积层到pooling层是多对一的连接关系。由于是多对一的关系,所以用到了Ο这个计算符号!

    所以:

    δlj = (βl+1j)T( upsample(δl+1j )Ο ƒˊ(μlj))

βl+1j是个标量,在这里比例系数就是权值。

upsample(.)依赖于原来的下采样方式,means方式或者max方式。

    那么:

    误差对bias的偏导 = (δlj)u,v

     误差对卷积核k的偏导= rot180(conv2(xl-1i,rot180(δlj)),‘valid’)

kl-1层到l层的卷积核。

 

当前层是pooling层,下一层是卷积层

还是利用这个公式:

    δl = (Wl+1)Tδl+1Ο ƒˊ(μl)

灵活套用即可:

δlj = ( conv2(δl+1j,rot180(kl+1j),‘full’) )Ο ƒˊ(μlj)

则:

     误差对bias的偏导= (δlj)u,v

     误差对比例因子的偏导= (δljΟdown(xl-1j))u,v

您可能感兴趣的与本文相关的镜像

Dify

Dify

AI应用
Agent编排

Dify 是一款开源的大语言模型(LLM)应用开发平台,它结合了 后端即服务(Backend as a Service) 和LLMOps 的理念,让开发者能快速、高效地构建和部署生产级的生成式AI应用。 它提供了包含模型兼容支持、Prompt 编排界面、RAG 引擎、Agent 框架、工作流编排等核心技术栈,并且提供了易用的界面和API,让技术和非技术人员都能参与到AI应用的开发过程中

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值