反向传播算法
2022/1/19 22:21:14
本文主要是介绍反向传播算法,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
一、公式定义
举例:
二、推导过程
(1)求解第k层的参数:
注:loss表示误差,由误差函数作用于神经网络最后一层输出值和真实值而得出。
将参数表示为矩阵:
注:另外一些文章的Wk可能是这种表示方式的转置。
则:
(a0即为输入层x0)(公式1)
(公式2)
显然,ak-1在前向传播过程中已经得到,要求出第k层的W和b,我们很自然地想到要求出第k层的δ。
(2)求解
(公式3)
注:diag((γk)T)即以γk为对角元素的对角矩阵。
三、算法流程
可以直接求出最后一层的δ,然后根据公式3依次求出前面各层的δ。根据公式1,2求出各层的W和b。
假设最后一层(输出层)的上标为K(省略了前向传播过程)。
注:个人认为流程中的第2步和第3步不能颠倒顺序。
推荐:
https://zhuanlan.zhihu.com/p/25609953(详细推导)
https://www.cnblogs.com/jsfantasy/p/12177216.html(算法实现)
这篇关于反向传播算法的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-06-26结对编程到底难不难?答案在这里
- 2024-06-19《2023版Java工程师》课程升级公告
- 2024-06-15matplotlib作图不显示3D图,怎么办?
- 2024-06-1503-Loki 日志监控
- 2024-06-1504-让LLM理解知识 -Prompt
- 2024-06-05做软件测试需要懂代码吗?
- 2024-06-0514-ShardingSphere的分布式主键实现
- 2024-06-03为什么以及如何要进行架构设计权衡?
- 2024-05-31全网首发第二弹!软考2024年5月《软件设计师》真题+解析+答案!(11-20题)
- 2024-05-31全网首发!软考2024年5月《软件设计师》真题+解析+答案!(21-30题)