public void ArctanPrimeTest() { var a = new Matrix(2, 2); a.InRandomize(); var b = a.Duplicate(); a = new Arctan().Backward(a); b.InMap((x) => 1 / (1 + Math.Pow(x, 2))); Assert.IsTrue(Math.Abs(a.FrobeniusNorm() - b.FrobeniusNorm()) < 0.1, new Arctan().Type().ToString() + " Derivative."); }
public void ArctanTest() { var a = new Matrix(2, 2); a.InRandomize(); var b = a.Duplicate(); a = new Arctan().Forward(a); b.InMap(Math.Atan); Assert.IsTrue(Math.Abs(a.FrobeniusNorm() - b.FrobeniusNorm()) < 0.1, new Arctan().Type().ToString() + " Activation."); }