找回密码
 立即注册
查看: 297|回复: 0

反向传播算法以及最优化问题

[复制链接]
发表于 2022-1-9 09:01 | 显示全部楼层 |阅读模式
最近在研究深度学习的一些网络结构,然后突然想到为什么这么多神经网络都需要反向传播进行优化,还有其他算法可以起到同样的作用么?答案是有,反向传播其实就是最优化问题的一个解决方案。
一、反向传播

这里先说反向传播算法,然后在说什么是最优化问题以及最优化问题还有什么其他方法。
反向传播,其实是复合函数的链式求导。这里进行简单说明,然后推荐大家一篇博客,写的很清晰。反向传播一般在神经网络中会与正向传播一同使用。神经网络中,我们的目的是求权重,使得使用这个权重真实值与预测值之间差距最小,一般情况下会随机初始化(可以以一定的分布进行初始化),然后将这些权重正向求w*x,得到最终的值,这是我们预测的值。然后计算预测值与真实值差距,求梯度,进行反向传播得到待更新的新的权重,反复这个过程,求得最接近真实值的w。
反向传播推导博客(英文如果阅读起来,可以使用google浏览器进行翻译):
还有另外一篇:

二、最优化问题

我理解的最优化问题就是,给一个目标函数,然后使得这个目标函数取得极值的参数,求这个参数的过程就是求解最优化问题的方法。(个人理解,可能比较片面,不对的可以指出)
而求解最优化的问题的方法有哪些?
比如:爬山算法(梯度下降法)、牛顿法、模拟退火算法、粒子群算法、蚁群算法、遗传算法、
这些算法的一个共同点就是都是选择一个更新参数的策略,然后达到极值,其实这也就是最优化问题的目标。蚁群算法就是通过模拟蚂蚁的运行实物的路径的方式进行更新参数,粒子群算法一般是指鸟群,也就是用鸟群的策略更新参数,等等,如果对这些算法感兴趣,也可以多查查paper、博客等等。
同样推荐个博客:

三、总结

其实这里没有讲很多细节的问题,只是把这些算法的关系串起来,整体有个了解。
懒得打字嘛,点击右侧快捷回复 【右侧内容,后台自定义】
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Unity开发者联盟 ( 粤ICP备20003399号 )

GMT+8, 2024-9-22 23:37 , Processed in 0.086266 second(s), 25 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表