public override float Backward(Differentiable differentiable) { if (!_isEvaluated) { throw new Exception("!_isEvaluated"); } if (!_isDerived) { _totalDerivative = Differentiables.Select((value, index) => Derive(index) * value.Backward(differentiable)).Sum(); } _isDerived = true; return(_totalDerivative); }
public abstract float Backward(Differentiable differentiable);
public override float Backward(Differentiable differentiables) { return(differentiables.Equals(this) ? 1.0f : 0.0f); }