def update_one_gpu(self, param, state):
cuda.elementwise(
'T grad, T one_minus_rho, T eps',
'T param, T msg, T msdx',
'''msg = msg + one_minus_rho * (grad * grad - msg);
T dx = sqrt((msdx + eps) / (msg + eps)) * grad;
msdx += one_minus_rho * (dx * dx - msdx);
param -= dx;''',
'adadelta')(param.grad, 1 - self.rho, self.eps,
param.data, state['msg'], state['msdx'])
评论列表
文章目录