(param,
g_t,
t,
m,
v,
alpha=0.001,
beta1=0.9,
beta2=0.999,
epsilon=1e-8)
| 35 | |
| 36 | |
| 37 | def adam_update_numpy(param, |
| 38 | g_t, |
| 39 | t, |
| 40 | m, |
| 41 | v, |
| 42 | alpha=0.001, |
| 43 | beta1=0.9, |
| 44 | beta2=0.999, |
| 45 | epsilon=1e-8): |
| 46 | alpha_t = alpha * np.sqrt(1 - beta2**t) / (1 - beta1**t) |
| 47 | |
| 48 | m_t = beta1 * m + (1 - beta1) * g_t |
| 49 | v_t = beta2 * v + (1 - beta2) * g_t * g_t |
| 50 | |
| 51 | param_t = param - alpha_t * m_t / (np.sqrt(v_t) + epsilon) |
| 52 | return param_t, m_t, v_t |
| 53 | |
| 54 | |
| 55 | class AdamOptimizerTest(test.TestCase): |
no outgoing calls
no test coverage detected