一、Momentum
1. 计算dw、db.
2. 定义v_db、v_dw
[v_{dw}=eta v_{dw}+(1-eta)dw
]
[v_{db}=eta v_{db}+(1-eta)db
]
3. 更新dw、db
[dw=w-alpha v_{dw}
]
[db=b-alpha v_{db}
]
二、RMSprop
1. 计算dw、db.
2. 定义s_db、s_dw (这里的平方是元素级的)
[s_{dw}=eta s_{dw}+(1-eta)dw^2
]
[s_{db}=eta s_{db}+(1-eta)db^2
]
3. 更新dw、db
[dw=w-alpha frac{w}{sqrt{s_{dw}}}
]
[db=b-alpha frac{b}{sqrt{s_{db}}}
]
三、Adam
结合了Momentum+RMSprop
1. 计算dw、db.
2. 定义v_db、v_dw、s_db、s_dw.
[v_{dw}=eta_{1} v_{dw}+(1-eta_{1})dw
]
[v_{db}=eta_{1} v_{db}+(1-eta_{1})db
]
[s_{dw}=eta_{2} s_{dw}+(1-eta_{2})dw^2
]
[s_{db}=eta_{2} s_{db}+(1-eta_{2})db^2
]
3. 纠偏(t为迭代次数)
[v_{dw}^{correct}=frac{v_{dw}}{1-eta^t}
]
[v_{db}^{correct}=frac{v_{db}}{1-eta^t}
]
[s_{dw}^{correct}=frac{s_{dw}}{1-eta^t}
]
[s_{db}^{correct}=frac{s_{db}}{1-eta^t}
]
4. 更新dw、db,e为很小的数,防止分母为0。
通常(e=10^-8)
[dw=w-alpha frac{v_{dw}^{correct}}{sqrt{s_{dw}^{correct}}+e}
]
[db=b-alpha frac{v_{db}^{correct}}{sqrt{s_{db}^{correct}}+e}
]