momentum:
v的形状与params[key] 相同,与grads[key]相同。
v[key] = momentum*v[key] - lr*grads[key]
params[key] += v[key]
当momentum=0时,就是SGD
optimizer=Momentum(0.8,0)#相当于sgd,可以看到有多之字形震荡:
optimizer=Momentum(0.8,0.2),使用momentum后,得到优化
import sys, os
sys.path.append(os.pardir)
import numpy as np
from common.gradient import numerical_gradient
import matplotlib.pylab as plt
class simple:
def __init__(self,x,y):
self.x=x
self.y=y
def f(self):