Ejemplo n.º 1
0
def evaluate_in_parallel(_x, calc_gradient, func, args, kwargs):
    _out = {}
    if calc_gradient:
        _out["__autograd__"], _ = run_and_trace(func, _x, *[_out])
    else:
        func(_x, _out, *args, **kwargs)
    return _out
Ejemplo n.º 2
0
 def func(_x):
     _out = {}
     if calc_gradient:
         _out["dF"], _ = run_and_trace(self._evaluate, _x, *[_out])
     else:
         self._evaluate(_x, _out, *args, **kwargs)
     return _out
Ejemplo n.º 3
0
 def func(_x):
     _out = {}
     if calc_gradient:
         grad, _ = run_and_trace(self._evaluate, _x, *[_out])
         _out["__autograd__"] = grad
     else:
         self._evaluate(_x, _out, *args, **kwargs)
     return _out
Ejemplo n.º 4
0
    def _evaluate_batch(self, X, calc_gradient, out, *args, **kwargs):
        if calc_gradient:
            out["__autograd__"], _ = run_and_trace(self._evaluate, X, *[out])
        else:
            self._evaluate(X, out, *args, **kwargs)
        at_least2d(out)

        return out