Island/Windows/Visual Studio. Latest Element Build.
The compiler mistakenly complains StochasticGradientDescent.ApplyGradient
does NOT match its base class Optimizer.ApplyGradient
- but they are indeed identical.
I guess this is a compiler bug?
NotNull<T> = not nullable T;
Output = public class
end;
Variable = public class
end;
OperationList = public class
end;
GradientAndVariablePair = Tuple of (Gradient: NotNull<Output>, Variable: NotNull<Variable>);
Optimizer = public abstract class
public
method ApplyGradient(aGradientsAndVariables: NotNull<array of GradientAndVariablePair>): OperationList; abstract; virtual;
end;
StochasticGradientDescent = public sealed class(Optimizer)
public
method ApplyGradient(aGradientsAndVariables: NotNull<array of GradientAndVariablePair>): OperationList; override;
begin
result := new OperationList;
end;
end;
Test-20200226.7z (4.1 KB)