Adam 优化算法(Adam optimization algorithm)
在深度学习的历史上,包括许多知名研究者在内,提出了优化算法,并很好地解决了一些问题,但随后这些优化算法被指出并不能一般化,并不适用于多种神经网络,时间久了,深度学习圈子里的人开始多少有些质疑全新的优化算法,很多人都觉得动量(Momentum)梯度下降法很好用,很难再想出更好的优化算法。
所以RMSprop以及Adam优化算法,就是少有的经受住人们考验的两种算法,已被证明适用于不同的深度学习结构,这个算法我会毫不犹豫地推荐给你,因为很多人都试过,并且用它很好地解决了许多问题。
Adam优化算法基本上就是将Momentum和RMSprop结合在一起,那么来看看如何使用Adam算法。
使用Adam算法,首先你要初始化,v_dW=0,S_dW=0,v_db=0,S_db=0,在第t次迭代中,你要计算微分,用当前的mini-batch计算dW,db,一般你会用mini-batch梯度下降法。
接下来计算Momentum指数加权平均数,所以v_dW=β_1 v_dW+(1-β_1)dW(使用β_1,这样就不会跟超参数β_2混淆,因为后面RMSprop要用到β_2),使用Momentum时我们肯定会用这个