if self.cache is None:
            self.cache = [_zero(p.shape) for p in params]