public void SquareErrorForward() { SquareError errorOp = new SquareError(); double res = errorOp.ForwardPass(2, 5); Assert.AreEqual(9, res); res = errorOp.ForwardPass(5, 2); Assert.AreEqual(9, res); }
private static void CheckSquareInternal(double h, double t) { SquareError errorOp = new SquareError(); double fa1 = errorOp.ComputeLossGradient(h, t); double f1Val = errorOp.ForwardPass(h + GradUtils.H, t); double f2Val = errorOp.ForwardPass(h - GradUtils.H, t); bool res = GradUtils.ChechAnalGrad(fa1, f1Val, f2Val); Assert.IsTrue(res); }
static void Main(string[] args) { float[][] Dmatrix = new float[4][] { new float[4] { 0, 3, 4, 3 }, new float[4] { 3, 0, 4, 5 }, new float[4] { 4, 4, 0, 2 }, new float[4] { 3, 5, 2, 0 }, }; float[][] dmatrix = new float[4][] { new float[4] { 0, 3, 4, 4 }, new float[4] { 3, 0, 4, 4 }, new float[4] { 4, 4, 0, 2 }, new float[4] { 4, 4, 2, 0 }, }; Node nodeI = new Node(null, 0.0f, null, 0.0f); Node nodeJ = new Node(null, 0.0f, null, 0.0f); Node nodeK = new Node(null, 0.0f, null, 0.0f); Node nodeL = new Node(null, 0.0f, null, 0.0f); Node nodeIJ = new Node(nodeI, 1.5F, nodeJ, 1.5f); Node nodeKL = new Node(nodeK, 1F, nodeL, 1f); Node root = new Node(nodeIJ, 1.5f / 2, nodeKL, 1.5f / 2); Tree tree = new Tree(root); tree.DFS(tree.root); Console.WriteLine(tree.sumDistance); Console.WriteLine("----"); SquareError squareError = new SquareError(Dmatrix, dmatrix); Console.WriteLine(squareError.calculateSquaredError()); }