前言
在沐神的动手深度学习中v2的房价预测中,第一次遇到了adam优化,
![在这里插入图片描述](https://i-blog.csdnimg.cn/blog_migrate/56865005c79570187b67c56e28f9d11c.png)
对于小白的我,肯定没听过adam什么的,所以就上网查了一下。补了下知识。
为什么要优化?
在神经网络中,我们通常都用梯度下降法来更新参数,但是这会有个弊端——计算量会很大。假如你有一张1080x1920的图片,在加上RGB,就等于6220800,所以人们就想了两个办法
1.从神经网络结构出发,增加池化层,dropout等
2.从梯度下降本身出发
下面重点在第二个
优化方法
因为神经网络要经过很多次运算,我们首先可以从得到的数据出发——随机梯度下降,既减少了计算量,还避免了普通梯度下降可能陷于局部最小值。
其次可以从优化下降路径出发,使损失函数可以尽量走有用路程。
动量法(惯性法)
这个是基于指数平均加权移动,具体可以看这个
指数加权平均移动
他的作用是,当前的值不但取决与其本身,还取决与前时刻所有的值,从而不会产生过大的震荡
还有其它优化,但这里不详细说了。
为什么要使lr动态化
既然我们可以从优化他的步长来获取最小值,那是是不是代表我们也可以直接对lr进行优化。
lr固定的危害
在开始的时候可能不会有太大影响,但是容易在最小值后面产生来回的震荡,所以我们需要lr在优化中动态变化————Adagrade适应性梯度算法(adagrade、adadelta、RMSprop都是梯度自适应算法)
Adam
Adam就正是momentum和RMSprop(均方根传播)的结合,所以有了文中,它对学习率不是那么敏感
可以参考下面
https://blog.csdn.net/weixin_38381682/article/details/105854613
最后分享一波自己挑的参数,(我尽力在调了,沐神来全调了)
最好的排名是在kaggle 1200多名
引用:
https://blog.csdn.net/weixin_38381682/article/details/105854613
https://blog.csdn.net/mzpmzk/article/details/80085929?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522163921407116780274169848%2522%252C%2522scm%2522%253A%252220140713.130102334…%2522%257D&request_id=163921407116780274169848&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2allsobaiduend~default-2-80085929.first_rank_v2_pc_rank_v29&utm_term=%E6%8C%87%E6%95%B0%E5%8A%A0%E6%9D%83%E7%A7%BB%E5%8A%A8%E5%B9%B3%E5%9D%87&spm=1018.2226.3001.4187