1. Test Modules
  2. Training Characteristics
    1. Input Learning
      1. Gradient Descent
      2. Conjugate Gradient Descent
      3. Limited-Memory BFGS
    2. Results
  3. Results

Subreport: Logs for com.simiacryptus.ref.lang.ReferenceCountingBase

Test Modules

Using Seed 4498902278447316992

Training Characteristics

Input Learning

In this apply, we use a network to learn this target input, given it's pre-evaluated output:

TrainingTester.java:332 executed in 0.06 seconds (0.000 gc):

    return RefArrays.stream(RefUtil.addRef(input_target)).flatMap(RefArrays::stream).map(x -> {
      try {
        return x.prettyPrint();
      } finally {
        x.freeRef();
      }
    }).reduce((a, b) -> a + "\n" + b).orElse("");

Returns

    [
    	[ [ 0.48, -0.536, -1.632 ], [ 1.26, -1.184, -1.544 ], [ 0.652, 1.452, -1.772 ], [ -0.732, -1.564, -0.168 ], [ 1.524, 0.404, -1.56 ], [ -0.36, -0.788, -0.624 ], [ 1.08, -0.392, 0.604 ], [ -0.104, 1.36, -1.396 ], ... ],
    	[ [ -0.748, -1.476, -0.496 ], [ 0.484, -1.512, -1.204 ], [ -1.324, -1.184, -0.036 ], [ -0.64, -1.256, 0.1 ], [ -1.892, 1.216, -1.452 ], [ 1.54, -1.576, 0.408 ], [ 1.22, -0.828, 1.076 ], [ 0.28, 0.616, -0.296 ], ... ],
    	[ [ 1.256, 0.076, -0.4 ], [ -0.184, 0.624, 1.572 ], [ 1.476, 0.468, 1.26 ], [ -0.696, -0.904, -1.564 ], [ -1.252, 0.136, 0.944 ], [ -1.964, -0.584, -0.604 ], [ -0.904, -0.924, 1.028 ], [ 0.312, 0.716, -1.908 ], ... ],
    	[ [ 1.568, -0.516, -0.356 ], [ -1.284, -1.288, 0.124 ], [ -0.732, 0.78, 0.82 ], [ 0.2, -1.412, 1.144 ], [ 0.312, -1.74, 0.976 ], [ -0.668, 1.44, 0.056 ], [ -1.12, 0.468, -1.272 ], [ 1.576, -0.4, -0.66 ], ... ],
    	[ [ -0.432, 0.168, 1.052 ], [ -1.372, 1.408, 1.644 ], [ -1.04, -0.004, -0.576 ], [ 0.308, -1.544, -0.672 ], [ -1.504, 0.388, 0.28 ], [ -1.844, 1.596, -0.684 ], [ -1.028, 0.164, 0.792 ], [ -0.948, -0.392, 1.192 ], ... ],
    	[ [ -1.288, -1.86, 0.068 ], [ 1.384, -1.2, 0.332 ], [ -1.068, -1.732, 0.844 ], [ -0.32, 0.504, -1.088 ], [ 0.124, 0.444, 1.708 ], [ -0.152, -0.576, 0.884 ], [ -0.968, -1.672, -0.492 ], [ -0.572, -1.216, 0.764 ], ... ],
    	[ [ 1.588, -1.228, 0.572 ], [ -1.436, -1.456, 0.896 ], [ 1.708, 1.236, -0.132 ], [ 1.152, 1.268, 0.636 ], [ 0.66, 1.64, -1.36 ], [ -1.136, -0.996, 1.248 ], [ -0.532, 0.68, -1.344 ], [ 0.544, 0.048, 1.964 ], ... ],
    	[ [ -0.156, -0.616, -1.996 ], [ -1.848, -0.112, -0.716 ], [ -0.724, -1.976, -1.696 ], [ 0.544, -1.86, -0.472 ], [ -0.244, -1.396, 1.936 ], [ -1.412, 0.308, -0.38 ], [ -1.3, 1.896, 1.316 ], [ 1.672, 1.632, 1.248 ], ... ],
    	...
    ]
    [
    	[ [ 1.212, 1.328, 1.556 ], [ -0.02, 0.628, 1.72 ], [ 1.36, 1.936, -1.544 ], [ -1.22, 1.352, -0.892 ], [ -1.312, 1.004, -0.464 ], [ -0.02, -1.876, 0.544 ], [ -0.296, -0.968, -1.916 ], [ -1.04, -0.284, -0.416 ], ... ],
    	[ [ 0.048, 1.112, 1.432 ], [ 0.236, -0.864, -0.992 ], [ 0.52, 0.008, 1.192 ], [ 1.168, -1.088, -0.744 ], [ 1.38, 1.052, -0.056 ], [ 0.548, 1.708, 0.292 ], [ 0.148, 0.156, 2.0 ], [ 1.928, 1.004, 0.1 ], ... ],
    	[ [ 1.14, -1.76, 1.42 ], [ -1.992, -1.004, 1.912 ], [ -1.548, 1.376, -0.188 ], [ 1.992, -0.212, -0.392 ], [ 1.196, -0.996, 0.54 ], [ 0.444, 1.404, 0.296 ], [ -0.216, -0.904, 1.344 ], [ 0.216, 1.736, 1.052 ], ... ],
    	[ [ 0.388, 0.588, -1.352 ], [ 1.784, -0.468, -1.028 ], [ -1.724, 1.956, 0.016 ], [ -0.348, -1.544, 1.744 ], [ 0.596, -0.064, 1.528 ], [ -0.676, 0.036, 1.912 ], [ 1.588, -0.624, -0.204 ], [ -1.364, 1.792, 1.02 ], ... ],
    	[ [ 0.184, -0.62, -1.844 ], [ 1.476, 0.92, 0.856 ], [ -1.86, -1.86, -0.308 ], [ -1.36, -1.644, 0.944 ], [ -0.516, 0.688, 0.916 ], [ 1.628, -1.228, -0.604 ], [ 0.78, -1.112, 1.26 ], [ -1.076, 1.724, -1.616 ], ... ],
    	[ [ 0.868, 1.896, 1.912 ], [ 1.448, -1.176, 1.896 ], [ 0.8, 1.668, -1.1 ], [ 1.36, 1.76, -1.648 ], [ 1.156, -0.372, 1.504 ], [ 0.124, 0.424, -0.568 ], [ -0.444, -1.564, 1.12 ], [ 0.364, -0.412, 0.812 ], ... ],
    	[ [ -0.46, 0.688, -0.992 ], [ 0.052, -0.756, 0.16 ], [ 1.556, -0.364, 1.828 ], [ -0.416, -0.668, -0.688 ], [ -1.452, 1.064, -1.524 ], [ 1.228, -1.424, -1.476 ], [ 0.932, -0.296, 0.14 ], [ 1.536, 0.264, -0.704 ], ... ],
    	[ [ -1.42, -1.936, -1.36 ], [ -0.212, -0.176, 0.34 ], [ -0.804, 1.272, 1.448 ], [ -1.996, -0.76, -1.204 ], [ 1.236, -0.556, -1.876 ], [ -0.54, 0.38, 0.268 ], [ 0.976, -1.536, -1.372 ], [ -1.84, 1.936, 1.752 ], ... ],
    	...
    ]
    [
    	[ [ -1.732, -1.036, -1.26 ], [ 1.368, 0.088, 0.772 ], [ 0.416, 1.42, -1.644 ], [ -0.864, 0.608, -1.236 ], [ -0.296, -0.996, -0.48 ], [ -0.42, -1.36, 0.408 ], [ -0.016, 0.972, -0.588 ], [ 1.756, -1.0, -1.156 ], ... ],
    	[ [ -1.096, 0.324, 0.86 ], [ 1.068, 1.948, -1.108 ], [ -1.32, 1.404, -0.94 ], [ -0.648, -0.528, 1.212 ], [ -0.88, 0.092, -0.168 ], [ -0.804, 1.596, 1.004 ], [ -1.068, -0.372, 0.444 ], [ 1.36, 0.244, -1.24 ], ... ],
    	[ [ -0.788, 1.1, -0.676 ], [ -1.664, 1.788, 1.756 ], [ -1.172, -1.468, 1.5 ], [ -0.616, -0.24, -1.496 ], [ 1.964, -0.256, 1.004 ], [ -1.104, -1.06, -1.0 ], [ -0.108, -0.128, -1.632 ], [ -1.044, 1.812, -0.472 ], ... ],
    	[ [ -0.8, -1.648, -0.864 ], [ -0.372, -1.824, 0.624 ], [ 0.712, -1.724, -1.616 ], [ 0.808, 0.332, -1.432 ], [ -1.576, -1.816, -1.536 ], [ -0.38, -1.704, -0.836 ], [ 0.804, 1.304, -1.228 ], [ 0.892, 1.112, -0.072 ], ... ],
    	[ [ -1.96, 0.52, -0.532 ], [ -1.232, -0.656, 1.384 ], [ -1.208, -0.316, -1.72 ], [ -1.076, -0.5, 0.78 ], [ 1.616, -0.064, -1.076 ], [ -1.536, -0.588, 0.148 ], [ -0.416, 1.184, 1.172 ], [ 0.236, 1.884, 1.12 ], ... ],
    	[ [ 0.156, 1.876, -0.688 ], [ -0.784, 1.36, 0.312 ], [ 1.58, -1.82, -1.312 ], [ 1.88, 0.36, -0.24 ], [ -0.72, -0.864, -1.44 ], [ -0.948, 1.052, -0.708 ], [ -1.152, -1.616, 0.632 ], [ -0.292, 0.648, -1.204 ], ... ],
    	[ [ 0.528, 0.08, -1.748 ], [ 0.936, 0.404, 1.284 ], [ -0.952, -0.456, -0.672 ], [ 1.788, -1.132, -0.724 ], [ -1.108, 0.412, -1.088 ], [ 1.324, -1.92, 1.836 ], [ -0.992, -1.712, 0.084 ], [ 0.964, -0.032, -0.996 ], ... ],
    	[ [ 1.084, 1.78, 0.312 ], [ -1.66, -1.732, 1.244 ], [ 0.564, -0.676, 1.54 ], [ -1.564, 0.792, -1.884 ], [ 1.792, -0.392, -1.452 ], [ -0.948, 1.612, 0.62 ], [ -0.452, -1.66, -0.576 ], [ 1.952, 0.388, -0.472 ], ... ],
    	...
    ]
    [
    	[ [ -0.064, 0.076, -0.432 ], [ -1.516, 1.724, -0.06 ], [ 1.012, -1.364, -1.644 ], [ -1.044, 0.7, -0.448 ], [ 1.256, 1.716, 1.988 ], [ 1.612, 0.992, 0.552 ], [ 1.836, -0.216, 1.244 ], [ 0.888, -0.452, -0.936 ], ... ],
    	[ [ 0.588, 1.556, 0.524 ], [ -1.968, 0.532, 1.1 ], [ -0.28, 0.264, -0.02 ], [ -0.072, 0.212, 0.988 ], [ 1.936, 0.152, -1.768 ], [ 1.24, -1.948, -1.656 ], [ 1.652, -0.236, 0.508 ], [ 1.2, 0.872, -1.216 ], ... ],
    	[ [ 0.412, 1.308, 1.044 ], [ -0.544, 0.048, -1.168 ], [ 0.76, 0.888, -1.564 ], [ -0.308, 0.352, -1.744 ], [ 1.264, -1.564, -0.66 ], [ 0.188, -1.684, -1.964 ], [ -1.056, -0.404, -1.82 ], [ 1.652, -1.808, 0.52 ], ... ],
    	[ [ -1.812, 0.844, -0.98 ], [ -1.104, 0.84, 1.584 ], [ 0.332, -1.096, 1.776 ], [ 0.564, 1.084, -0.932 ], [ -0.968, 1.384, 0.924 ], [ -1.844, -0.06, 0.756 ], [ -0.592, 1.924, -0.468 ], [ 0.516, -1.7, 0.236 ], ... ],
    	[ [ -0.212, 1.564, 0.968 ], [ -1.728, 1.608, 1.288 ], [ -1.336, -1.436, -1.112 ], [ -1.472, 1.856, 0.104 ], [ 0.352, 1.744, -1.584 ], [ 0.312, 0.932, 1.848 ], [ -1.196, -1.384, -0.156 ], [ 1.756, -0.1, -0.904 ], ... ],
    	[ [ -1.94, -1.324, 0.86 ], [ 0.636, -0.568, -1.76 ], [ -0.364, 1.788, 0.716 ], [ 1.364, 0.86, -1.312 ], [ 1.308, -0.656, 0.328 ], [ -0.14, 1.66, -0.4 ], [ -0.684, -1.644, 0.68 ], [ -0.448, -1.288, 0.172 ], ... ],
    	[ [ -1.24, 0.844, -0.804 ], [ 0.932, 0.54, -0.248 ], [ 0.0, 1.844, 1.236 ], [ 1.22, 1.156, -1.076 ], [ -1.108, 1.388, 1.356 ], [ -0.36, 1.196, 0.34 ], [ -0.268, -1.168, 0.8 ], [ 1.144, -1.4, -0.144 ], ... ],
    	[ [ -1.668, -1.072, -1.892 ], [ -1.372, -1.68, 0.768 ], [ -1.076, -1.4, 1.544 ], [ -0.832, -1.84, -0.624 ], [ 1.576, -1.616, -1.828 ], [ 0.38, 1.824, 1.44 ], [ -1.428, -0.828, 1.204 ], [ -0.256, 0.888, 0.78 ], ... ],
    	...
    ]
    [
    	[ [ -0.888, -0.764, 1.888 ], [ -1.664, -1.86, 1.536 ], [ 0.752, -0.544, 0.42 ], [ 1.96, 1.696, -0.608 ], [ -1.644, 1.508, -1.704 ], [ 1.812, -0.28, 0.4 ], [ -1.156, -0.096, -1.572 ], [ 0.596, -0.792, 0.12 ], ... ],
    	[ [ 1.08, -0.304, -1.156 ], [ 1.356, 0.464, -0.48 ], [ -0.784, 0.744, 1.12 ], [ 0.864, -1.564, -1.948 ], [ -0.204, 0.636, -1.256 ], [ -0.452, -1.596, 0.296 ], [ 0.148, -1.632, -0.408 ], [ -0.916, -1.66, -0.152 ], ... ],
    	[ [ 1.712, -0.96, -1.428 ], [ 0.796, -1.508, -1.76 ], [ -1.324, -1.368, 0.624 ], [ 1.028, -0.832, -0.52 ], [ -1.812, 1.308, -1.828 ], [ 1.22, 0.192, 1.076 ], [ -1.984, -1.204, 1.868 ], [ -0.572, -1.476, -0.632 ], ... ],
    	[ [ -1.584, 1.432, 1.848 ], [ -1.324, -0.212, -1.708 ], [ 1.896, -1.492, 0.716 ], [ -1.028, -1.5, -1.736 ], [ -1.248, 0.784, -1.936 ], [ -1.236, 1.048, 1.044 ], [ -0.644, 1.804, -1.08 ], [ 0.552, 1.108, 0.268 ], ... ],
    	[ [ 1.512, -1.852, -1.112 ], [ 1.744, 0.772, -0.288 ], [ 0.788, -1.832, -1.608 ], [ 0.132, 0.12, 1.72 ], [ -1.38, 0.028, -1.704 ], [ 1.472, -0.952, 1.528 ], [ -0.08, 1.1, 1.248 ], [ 0.168, -0.98, 0.688 ], ... ],
    	[ [ 0.86, -0.436, 1.556 ], [ 0.092, -0.236, 0.624 ], [ -1.232, -1.808, 1.364 ], [ -1.844, -1.352, -0.992 ], [ -1.476, -0.364, -0.032 ], [ -1.5, -1.888, -1.028 ], [ -1.272, -1.004, -1.372 ], [ -0.788, 0.352, -1.428 ], ... ],
    	[ [ 0.528, 0.264, -1.54 ], [ -0.312, 1.352, -0.232 ], [ -0.608, 0.172, -0.84 ], [ -0.028, 0.484, 0.104 ], [ 0.164, 1.68, 1.56 ], [ 1.716, 1.144, -0.468 ], [ -0.648, 1.792, 1.544 ], [ -0.104, -1.58, -0.24 ], ... ],
    	[ [ 1.216, 1.34, -1.668 ], [ -0.42, 1.38, -1.948 ], [ -1.816, 0.324, 0.856 ], [ 1.868, 0.232, 0.588 ], [ -0.976, 1.24, -0.56 ], [ -1.336, 0.64, 1.408 ], [ 1.272, -0.312, -1.964 ], [ 0.828, -0.924, 1.236 ], ... ],
    	...
    ]

Gradient Descent

First, we train using basic gradient descent method apply weak line search conditions.

TrainingTester.java:480 executed in 3.52 seconds (0.000 gc):

    IterativeTrainer iterativeTrainer = new IterativeTrainer(trainable.addRef());
    try {
      iterativeTrainer.setLineSearchFactory(label -> new ArmijoWolfeSearch());
      iterativeTrainer.setOrientation(new GradientDescent());
      iterativeTrainer.setMonitor(TrainingTester.getMonitor(history));
      iterativeTrainer.setTimeout(30, TimeUnit.SECONDS);
      iterativeTrainer.setMaxIterations(250);
      iterativeTrainer.setTerminateThreshold(0);
      return iterativeTrainer.run();
    } finally {
      iterativeTrainer.freeRef();
    }
Logging
Reset training subject: 2081298634772
Reset training subject: 2081385167718
Constructing line search parameters: GD
th(0)=2.880000000000005E-5;dx=-7.680000000000015E-6
New Minimum: 2.880000000000005E-5 > 1.6729629868792515E-5
END: th(2.154434690031884)=1.6729629868792515E-5; dx=-4.662916821495194E-6 evalInputDelta=1.2070370131207535E-5
Fitness changed from 2.880000000000005E-5 to 1.6729629868792515E-5
Iteration 1 complete. Error: 1.6729629868792515E-5 Total: 0.2639; Orientation: 0.0102; Line Search: 0.1098
th(0)=1.6729629868792515E-5;dx=-4.461234631678003E-6
New Minimum: 1.6729629868792515E-5 > 4.729595598411049E-6
END: th(4.641588833612779)=4.729595598411049E-6; dx=-1.046355463546023E-6 evalInputDelta=1.2000034270381465E-5
Fitness changed from 1.6729629868792515E-5 to 4.729595598411049E-6
Iteration 2 complete. Error: 4.729595598411049E-6 Total: 0.3511; Orientation: 0.0041; Line Search: 0.3065
th(0)=4.729595598411049E-6;dx=-1.261225492909613E-6
New Minimum: 4.729595598411049E-6 > 1.5301709048934365E-6
WOLF (strong): th(10.000000000000002)=1.5301709048934365E-6; dx=1.1893693660159349E-7 evalInputDelta=3.1994246935176124E-6
END: th(5.000000000000001)=1.5476616308642025E-6; dx=-1.329295173782276E-7 evalInputDelta=3.1819339675468462E-6
Fitness changed from 4.729595598411049E-6 to 1.5301709048934365E-6
Iteration 3 complete. Error: 1.5301709048934365E-6 Total: 0.1266; Orientation: 0.0030; Line Search: 0.1038
th(0)=1.5301709048934365E-6;dx=-4.0804557463824974E-7
New Minimum: 1.5301709048934365E-6 > 6.480480240650796E-7
WOLF (strong): th(10.772173450159421)=6.480480240650796E-7; dx=1.7296990497380856E-8 evalInputDelta=8.821228808283569E-7
END: th(5.386086725079711)=6.565704899341717E-7; dx=-3.483760932157775E-8 evalInputDelta=8.736004149592648E-7
Fitness changed from 1.5301709048934365E-6 to 6.480480240650796E-7
Iteration 4 complete. Error: 6.480480240650796E-7 Total: 0.1146; Orientation: 0.0035; Line Search: 0.0924
th(0)=6.480480240650796E-7;dx=-1.7281280641735456E-7
New Minimum: 6.480480240650796E-7 > 1.940409802486712E-7
WOLF (strong): th(11.60397208403195)=1.940409802486712E-7; dx=9.456252444000188E-8 evalInputDelta=4.5400704381640836E-7
New Minimum: 1.940409802486712E-7 > 3.321751775342498E-8
END: th(5.801986042015975)=3.321751775342498E-8; dx=-3.912514098867094E-8 evalInputDelta=6.148305063116546E-7
Fitness changed from 6.480480240650796E-7 to 3.321751775342498E-8
Iteration 5 complete. Error: 3.321751775342498E-8 Total: 0.1039; Orientation: 0.0046; Line Search: 0.0801
th(0)=3.321751775342498E-8;dx=-8.858004734246663E-9
New Minimum: 3.321751775342498E-8 > 1.4763341223744437E-8
WOLF (strong): th(12.500000000000004)=1.4763341223744437E-8; dx=5.9053364894977745E-9 evalInputDelta=1.8454176529680543E-8
New Minimum: 1.4763341223744437E-8 > 9.227088264819711E-10
END: th(6.250000000000002)=9.227088264819711E-10; dx=-1.476334122372799E-9 evalInputDelta=3.229480892694301E-8
Fitness changed from 3.321751775342498E-8 to 9.227088264819711E-10
Iteration 6 complete. Error: 9.227088264819711E-10 Total: 0.1153; Orientation: 0.0060; Line Search: 0.0893
th(0)=9.227088264819711E-10;dx=-2.4605568706185897E-10
New Minimum: 9.227088264819711E-10 > 5.837066144718451E-10
WOLF (strong): th(13.465216812699278)=5.837066144718451E-10; dx=1.9570340284312653E-10 evalInputDelta=3.39002212010126E-10
New Minimum: 5.837066144718451E-10 > 9.659979907636986E-12
END: th(6.732608406349639)=9.659979907636986E-12; dx=-2.5176142109425054E-11 evalInputDelta=9.130488465743342E-10
Fitness changed from 9.227088264819711E-10 to 9.659979907636986E-12
Iteration 7 complete. Error: 9.659979907636986E-12 Total: 0.0906; Orientation: 0.0035; Line Search: 0.0733
Low gradient: 1.6049905426626441E-6
th(0)=9.659979907636986E-12;dx=-2.575994642036529E-12
New Minimum: 9.659979907636986E-12 > 8.426857476027371E-12
WOLF (strong): th(14.50496510503994)=8.426857476027371E-12; dx=2.405967010438948E-12 evalInputDelta=1.2331224316096146E-12
New Minimum: 8.426857476027371E-12 > 1.0521201348216757E-14
END: th(7.25248255251997)=1.0521201348216757E-14; dx=-8.501381581961664E-14 evalInputDelta=9.64945870628877E-12
Fitness changed from 9.659979907636986E-12 to 1.0521201348216757E-14
Iteration 8 complete. Error: 1.0521201348216757E-14 Total: 0.2773; Orientation: 0.0057; Line Search: 0.2549
Low gradient: 5.296842165722708E-8
th(0)=1.0521201348216757E-14;dx=-2.8056536928578027E-15
Armijo: th(15.625000000000007)=1.2347798813263746E-14; dx=3.039458168340694E-15 evalInputDelta=-1.826597465046989E-15
New Minimum: 1.0521201348216757E-14 > 1.8265974578638E-17
WOLF (strong): th(7.8125000000000036)=1.8265974578638E-17; dx=1.1690223725284576E-16 evalInputDelta=1.0502935373638119E-14
END: th(2.604166666666668)=4.483281976885071E-15; dx=-1.8314683824422E-15 evalInputDelta=6.037919371331686E-15
Fitness changed from 1.0521201348216757E-14 to 1.8265974578638E-17
Iteration 9 complete. Error: 1.8265974578638E-17 Total: 0.5023; Orientation: 0.1885; Line Search: 0.2984
Low gradient: 2.207017570003344E-9
th(0)=1.8265974578638E-17;dx=-4.8709265543034654E-18
New Minimum: 1.8265974578638E-17 > 1.1593402194099893E-18
END: th(5.610507005291367)=1.1593402194099893E-18; dx=-1.2271442251771517E-18 evalInputDelta=1.710663435922801E-17
Fitness changed from 1.8265974578638E-17 to 1.1593402194099893E-18
Iteration 10 complete. Error: 1.1593402194099893E-18 Total: 0.0575; Orientation: 0.0034; Line Search: 0.0397
Low gradient: 5.56019236935795E-10
th(0)=1.1593402194099893E-18;dx=-3.0915739184266375E-19
New Minimum: 1.1593402194099893E-18 > 4.337455472279045E-19
WOLF (strong): th(12.087470920866618)=4.337455472279045E-19; dx=1.8910007375591562E-19 evalInputDelta=7.255946721820848E-19
New Minimum: 4.337455472279045E-19 > 4.3708795898070047E-20
END: th(6.043735460433309)=4.3708795898070047E-20; dx=-6.002865391445114E-20 evalInputDelta=1.1156314235119192E-18
Fitness changed from 1.1593402194099893E-18 to 4.3708795898070047E-20
Iteration 11 complete. Error: 4.3708795898070047E-20 Total: 0.0844; Orientation: 0.0046; Line Search: 0.0676
Low gradient: 1.079614695442407E-10
th(0)=4.3708795898070047E-20;dx=-1.1655678906152012E-20
New Minimum: 4.3708795898070047E-20 > 2.3684035081097085E-20
WOLF (strong): th(13.020833333333341)=2.3684035081097085E-20; dx=8.579875804964307E-21 evalInputDelta=2.002476081697296E-20
New Minimum: 2.3684035081097085E-20 > 7.609421570709868E-22
END: th(6.5104166666666705)=7.609421570709868E-22; dx=-1.5379031134605357E-21 evalInputDelta=4.294785374099906E-20
Fitness changed from 4.3708795898070047E-20 to 7.609421570709868E-22
Iteration 12 complete. Error: 7.609421570709868E-22 Total: 0.3517; Orientation: 0.0024; Line Search: 0.3359
Zero gradient: 1.4244925712416444E-11
th(0)=7.609421570709868E-22;dx=-2.0291790855226313E-22
New Minimum: 7.609421570709868E-22 > 5.761813674888004E-22
WOLF (strong): th(14.026267513228419)=5.761813674888004E-22; dx=1.765729447282948E-22 evalInputDelta=1.8476078958218635E-22
New Minimum: 5.761813674888004E-22 > 3.2067622143684194E-24
END: th(7.013133756614209)=3.2067622143684194E-24; dx=-1.3172794996853253E-23 evalInputDelta=7.577353948566183E-22
Fitness changed from 7.609421570709868E-22 to 3.2067622143684194E-24
Iteration 13 complete. Error: 3.2067622143684194E-24 Total: 0.0860; Orientation: 0.0039; Line Search: 0.0699
Zero gradient: 9.247359571781803E-13
th(0)=3.2067622143684194E-24;dx=-8.551365904982452E-25
Armijo: th(15.109338651083275)=3.300867417052179E-24; dx=8.6759322396337E-25 evalInputDelta=-9.410520268375962E-26
New Minimum: 3.2067622143684194E-24 > 1.711137911037527E-28
WOLF (strong): th(7.554669325541638)=1.711137911037527E-28; dx=6.2465608940200226E-27 evalInputDelta=3.2065911005773156E-24
END: th(2.518223108513879)=1.41483804410334E-24; dx=-5.680093367502293E-25 evalInputDelta=1.7919241702650795E-24
Fitness changed from 3.2067622143684194E-24 to 1.711137911037527E-28
Iteration 14 complete. Error: 1.711137911037527E-28 Total: 0.0875; Orientation: 0.0023; Line Search: 0.0747
Zero gradient: 6.755023633884197E-15
th(0)=1.711137911037527E-28;dx=-4.5630344294334065E-29
New Minimum: 1.711137911037527E-28 > 1.3200272480698262E-29
END: th(5.425347222222226)=1.3200272480698262E-29; dx=-1.2672612186317095E-29 evalInputDelta=1.5791351862305444E-28
Fitness changed from 1.711137911037527E-28 to 1.3200272480698262E-29
Iteration 15 complete. Error: 1.3200272480698262E-29 Total: 0.2564; Orientation: 0.0028; Line Search: 0.2416
Zero gradient: 1.8761856681894615E-15
th(0)=1.3200272480698262E-29;dx=-3.520072661519536E-30
New Minimum: 1.3200272480698262E-29 > 4.249988126878201E-30
WOLF (strong): th(11.688556261023683)=4.249988126878201E-30; dx=1.9966946023260724E-30 evalInputDelta=8.950284353820062E-30
New Minimum: 4.249988126878201E-30 > 6.738186898762809E-31
END: th(5.844278130511841)=6.738186898762809E-31; dx=-7.94119977922485E-31 evalInputDelta=1.2526453790821982E-29
Fitness changed from 1.3200272480698262E-29 to 6.738186898762809E-31
Iteration 16 complete. Error: 6.738186898762809E-31 Total: 0.2587; Orientation: 0.0044; Line Search: 0.2392
Zero gradient: 4.238926561843319E-16
th(0)=6.738186898762809E-31;dx=-1.7968498396700822E-31
New Minimum: 6.738186898762809E-31 > 3.484135664726136E-31
WOLF (strong): th(12.591115542569396)=3.484135664726136E-31; dx=1.2797076906918633E-31 evalInputDelta=3.254051234036673E-31
New Minimum: 3.484135664726136E-31 > 1.314768175368353E-32
END: th(6.295557771284698)=1.314768175368353E-32; dx=-2.4542339273542586E-32 evalInputDelta=6.606710081225973E-31
Fitness changed from 6.738186898762809E-31 to 1.314768175368353E-32
Iteration 17 complete. Error: 1.314768175368353E-32 Total: 0.0761; Orientation: 0.0030; Line Search: 0.0577
Zero gradient: 5.921189464667501E-17
th(0)=1.314768175368353E-32;dx=-3.5060484676489414E-33
Armijo: th(13.563368055555566)=1.314768175368353E-32; dx=3.5060484676489414E-33 evalInputDelta=0.0
New Minimum: 1.314768175368353E-32 > 0.0
END: th(6.781684027777783)=0.0; dx=0.0 evalInputDelta=1.314768175368353E-32
Fitness changed from 1.314768175368353E-32 to 0.0
Iteration 18 complete. Error: 0.0 Total: 0.2536; Orientation: 0.0027; Line Search: 0.2387
Zero gradient: 0.0
th(0)=0.0;dx=0.0 (ERROR: Starting derivative negative)
Fitness changed from 0.0 to 0.0
Static Iteration Total: 0.0452; Orientation: 0.0026; Line Search: 0.0305
Iteration 19 failed. Error: 0.0
Previous Error: 0.0 -> 0.0
Optimization terminated 19
Final threshold in iteration 19: 0.0 (> 0.0) after 3.504s (< 30.000s)

Returns

    0.0

Training Converged

Conjugate Gradient Descent

First, we use a conjugate gradient descent method, which converges the fastest for purely linear functions.

TrainingTester.java:452 executed in 0.79 seconds (0.040 gc):

    IterativeTrainer iterativeTrainer = new IterativeTrainer(trainable.addRef());
    try {
      iterativeTrainer.setLineSearchFactory(label -> new QuadraticSearch());
      iterativeTrainer.setOrientation(new GradientDescent());
      iterativeTrainer.setMonitor(TrainingTester.getMonitor(history));
      iterativeTrainer.setTimeout(30, TimeUnit.SECONDS);
      iterativeTrainer.setMaxIterations(250);
      iterativeTrainer.setTerminateThreshold(0);
      return iterativeTrainer.run();
    } finally {
      iterativeTrainer.freeRef();
    }
Logging
Reset training subject: 2084809692374
Reset training subject: 2084818842761
Constructing line search parameters: GD
F(0.0) = LineSearchPoint{point=PointSample{avg=2.880000000000005E-5}, derivative=-7.680000000000015E-6}
New Minimum: 2.880000000000005E-5 > 2.8799999999345994E-5
F(1.0E-10) = LineSearchPoint{point=PointSample{avg=2.8799999999345994E-5}, derivative=-6.5422222221350265E-6}, evalInputDelta = -6.540551249472476E-16
New Minimum: 2.8799999999345994E-5 > 2.8799999995420603E-5
F(7.000000000000001E-10) = LineSearchPoint{point=PointSample{avg=2.8799999995420603E-5}, derivative=-6.542222221611641E-6}, evalInputDelta = -4.5794463598806956E-15
New Minimum: 2.8799999995420603E-5 > 2.8799999967943444E-5
F(4.900000000000001E-9) = LineSearchPoint{point=PointSample{avg=2.8799999967943444E-5}, derivative=-6.54222221794802E-6}, evalInputDelta = -3.205660563387891E-14
New Minimum: 2.8799999967943444E-5 > 2.8799999775601418E-5
F(3.430000000000001E-8) = LineSearchPoint{point=PointSample{avg=2.8799999775601418E-5}, derivative=-6.542222192302415E-6}, evalInputDelta = -2.2439863145819541E-13
New Minimum: 2.8799999775601418E-5 > 2.879999842921237E-5
F(2.4010000000000004E-7) = LineSearchPoint{point=PointSample{avg=2.879999842921237E-5}, derivative=-6.5422220127838735E-6}, evalInputDelta = -1.5707876792087506E-12
New Minimum: 2.879999842921237E-5 > 2.879998900448816E-5
F(1.6807000000000003E-6) = LineSearchPoint{point=PointSample{avg=2.879998900448816E-5}, derivative=-6.542220756153818E-6}, evalInputDelta = -1.099551189098877E-11
New Minimum: 2.879998900448816E-5 > 2.87999230314701E-5
F(1.1764900000000001E-5) = LineSearchPoint{point=PointSample{avg=2.87999230314701E-5}, derivative=-6.542211959743525E-6}, evalInputDelta = -7.696852994838461E-11
New Minimum: 2.87999230314701E-5 > 2.8799461222826248E-5
F(8.235430000000001E-5) = LineSearchPoint{point=PointSample{avg=2.8799461222826248E-5}, derivative=-6.54215038487132E-6}, evalInputDelta = -5.387771738016192E-10
New Minimum: 2.8799461222826248E-5 > 2.8796228684024225E-5
F(5.764801000000001E-4) = LineSearchPoint{point=PointSample{avg=2.8796228684024225E-5}, derivative=-6.541719360766149E-6}, evalInputDelta = -3.771315975824405E-9
New Minimum: 2.8796228684024225E-5 > 2.8773606875849247E-5
F(0.004035360700000001) = LineSearchPoint{point=PointSample{avg=2.8773606875849247E-5}, derivative=-6.53870219202936E-6}, evalInputDelta = -2.6393124150802692E-8
New Minimum: 2.8773606875849247E-5 > 2.861554642736836E-5
F(0.028247524900000005) = LineSearchPoint{point=PointSample{avg=2.861554642736836E-5}, derivative=-6.517582010872432E-6}, evalInputDelta = -1.844535726316903E-7
New Minimum: 2.861554642736836E-5 > 2.752344151623475E-5
F(0.19773267430000002) = LineSearchPoint{point=PointSample{avg=2.752344151623475E-5}, derivative=-6.369740742773621E-6}, evalInputDelta = -1.2765584837652994E-6
New Minimum: 2.752344151623475E-5 > 2.0580300321811324E-5
F(1.3841287201) = LineSearchPoint{point=PointSample{avg=2.0580300321811324E-5}, derivative=-5.334851866081627E-6}, evalInputDelta = -8.219699678188726E-6
New Minimum: 2.0580300321811324E-5 > 6.877902545002552E-6
F(9.688901040700001) = LineSearchPoint{point=PointSample{avg=6.877902545002552E-6}, derivative=1.4112736783890998E-6}, evalInputDelta = -2.1922097454997497E-5
6.877902545002552E-6 <= 2.880000000000005E-5
New Minimum: 6.877902545002552E-6 > 5.484533692220582E-6
F(8.184855348646925) = LineSearchPoint{point=PointSample{avg=5.484533692220582E-6}, derivative=4.4155414478685436E-7}, evalInputDelta = -2.3315466307779468E-5
Right bracket at 8.184855348646925
New Minimum: 5.484533692220582E-6 > 5.35188015284828E-6
F(7.739859632402674) = LineSearchPoint{point=PointSample{avg=5.35188015284828E-6}, derivative=1.5464727706911531E-7}, evalInputDelta = -2.344811984715177E-5
Right bracket at 7.739859632402674
New Minimum: 5.35188015284828E-6 > 5.3357780326979405E-6
F(7.587083358663903) = LineSearchPoint{point=PointSample{avg=5.3357780326979405E-6}, derivative=5.614618917112092E-8}, evalInputDelta = -2.3464221967302107E-5
Right bracket at 7.587083358663903
Converged to right
Fitness changed from 2.880000000000005E-5 to 5.3357780326979405E-6
Iteration 1 complete. Error: 5.3357780326979405E-6 Total: 0.6374; Orientation: 0.0026; Line Search: 0.5992
F(0.0) = LineSearchPoint{point=PointSample{avg=5.3357780326979405E-6}, derivative=-1.422874142052784E-6}
New Minimum: 5.3357780326979405E-6 > 1.0666669962560979E-6
F(7.587083358663903) = LineSearchPoint{point=PointSample{avg=1.0666669962560979E-6}, derivative=7.569515790162113E-12}, evalInputDelta = -4.269111036441842E-6
1.0666669962560979E-6 <= 5.3357780326979405E-6
Converged to right
Fitness changed from 5.3357780326979405E-6 to 1.0666669962560979E-6
Iteration 2 complete. Error: 1.0666669962560979E-6 Total: 0.0472; Orientation: 0.0029; Line Search: 0.0328
F(0.0) = LineSearchPoint{point=PointSample{avg=1.0666669962560979E-6}, derivative=-2.844445323349594E-7}
New Minimum: 1.0666669962560979E-6 > 1.4380588941055832E-10
F(7.587083358663903) = LineSearchPoint{point=PointSample{avg=1.4380588941055832E-10}, derivative=3.3027180305681218E-9}, evalInputDelta = -1.0665231903666873E-6
1.4380588941055832E-10 <= 1.0666669962560979E-6
New Minimum: 1.4380588941055832E-10 > 0.0
F(7.500000000000175) = LineSearchPoint{point=PointSample{avg=0.0}, derivative=0.0}, evalInputDelta = -1.0666669962560979E-6
Right bracket at 7.500000000000175
Converged to right
Fitness changed from 1.0666669962560979E-6 to 0.0
Iteration 3 complete. Error: 0.0 Total: 0.0772; Orientation: 0.0020; Line Search: 0.0665
Zero gradient: 0.0
F(0.0) = LineSearchPoint{point=PointSample{avg=0.0}, derivative=0.0}
Fitness changed from 0.0 to 0.0
Static Iteration Total: 0.0302; Orientation: 0.0031; Line Search: 0.0163
Iteration 4 failed. Error: 0.0
Previous Error: 0.0 -> 0.0
Optimization terminated 4
Final threshold in iteration 4: 0.0 (> 0.0) after 0.793s (< 30.000s)

Returns

    0.0

Training Converged

Limited-Memory BFGS

Next, we apply the same optimization using L-BFGS, which is nearly ideal for purely second-order or quadratic functions.

TrainingTester.java:509 executed in 30.68 seconds (0.084 gc):

    IterativeTrainer iterativeTrainer = new IterativeTrainer(trainable.addRef());
    try {
      iterativeTrainer.setLineSearchFactory(label -> new ArmijoWolfeSearch());
      iterativeTrainer.setOrientation(new LBFGS());
      iterativeTrainer.setMonitor(TrainingTester.getMonitor(history));
      iterativeTrainer.setTimeout(30, TimeUnit.SECONDS);
      iterativeTrainer.setIterationsPerSample(100);
      iterativeTrainer.setMaxIterations(250);
      iterativeTrainer.setTerminateThreshold(0);
      return iterativeTrainer.run();
    } finally {
      iterativeTrainer.freeRef();
    }
Logging
Reset training subject: 2085608759666
Reset training subject: 2085619380028
Adding measurement 16771f32 to history. Total: 0
LBFGS Accumulation History: 1 points
Constructing line search parameters: GD
Non-optimal measurement 2.880000000000005E-5 < 2.880000000000005E-5. Total: 1
th(0)=2.880000000000005E-5;dx=-7.680000000000015E-6
Adding measurement 677cc847 to history. Total: 1
New Minimum: 2.880000000000005E-5 > 1.6729629868792515E-5
END: th(2.154434690031884)=1.6729629868792515E-5; dx=-4.662916821495194E-6 evalInputDelta=1.2070370131207535E-5
Fitness changed from 2.880000000000005E-5 to 1.6729629868792515E-5
Iteration 1 complete. Error: 1.6729629868792515E-5 Total: 0.1094; Orientation: 0.0442; Line Search: 0.0318
Non-optimal measurement 1.6729629868792515E-5 < 1.6729629868792515E-5. Total: 2
LBFGS Accumulation History: 2 points
Non-optimal measurement 1.6729629868792515E-5 < 1.6729629868792515E-5. Total: 2
th(0)=1.6729629868792515E-5;dx=-4.461234631678003E-6
Adding measurement 21bb9476 to history. Total: 2
New Minimum: 1.6729629868792515E-5 > 4.729595598411049E-6
END: th(4.641588833612779)=4.729595598411049E-6; dx=-1.046355463546023E-6 evalInputDelta=1.2000034270381465E-5
Fitness changed from 1.6729629868792515E-5 to 4.729595598411049E-6
Iteration 2 complete. Error: 4.729595598411049E-6 Total: 0.0461; Orientation: 0.0051; Line Search: 0.0322
Non-optimal measurement 4.729595598411049E-6 < 4.729595598411049E-6. Total: 3
LBFGS Accumulation History: 3 points
Non-optimal measurement 4.729595598411049E-6 < 4.729595598411049E-6. Total: 3
th(0)=4.729595598411049E-6;dx=-1.261225492909613E-6
Adding measurement ef67753 to history. Total: 3
New Minimum: 4.729595598411049E-6 > 1.5301709048934365E-6
WOLF (strong): th(10.000000000000002)=1.5301709048934365E-6; dx=1.189369366015935E-7 evalInputDelta=3.1994246935176124E-6
Non-optimal measurement 1.5476616308642025E-6 < 1.5301709048934365E-6. Total: 4
END: th(5.000000000000001)=1.5476616308642025E-6; dx=-1.329295173782276E-7 evalInputDelta=3.1819339675468462E-6
Fitness changed from 4.729595598411049E-6 to 1.5301709048934365E-6
Iteration 3 complete. Error: 1.5301709048934365E-6 Total: 0.0581; Orientation: 0.0038; Line Search: 0.0412
Non-optimal measurement 1.5301709048934365E-6 < 1.5301709048934365E-6. Total: 4
Rejected: LBFGS Orientation magnitude: 1.541e-03, gradient 6.388e-04, dot -0.919; [8d29479f-b2c0-49d9-b49c-7dbad5ff77f1 = 1.000/1.000e+00, a7b13113-e8c0-414a-87a2-ca78edc5994e = 1.000/1.000e+00, 48560127-77be-422c-aa71-d99f87fa999b = 1.000/1.000e+00, fbe83138-9fba-47d6-b71d-400169bcb6db = 1.000/1.000e+00, 5b43b456-ec01-4329-9c5c-fbf36d2ba054 = 1.000/1.000e+00]
Orientation rejected. Popping history element from 1.5301709048934365E-6, 4.729595598411049E-6, 1.6729629868792515E-5, 2.880000000000005E-5
LBFGS Accumulation History: 3 points
Removed measurement ef67753 to history. Total: 3
Adding measurement 4f52f31 to history. Total: 3
th(0)=1.5301709048934365E-6;dx=-4.080455746382498E-7
Adding measurement 427667d6 to history. Total: 4
New Minimum: 1.5301709048934365E-6 > 6.480480240650796E-7
WOLF (strong): th(10.772173450159421)=6.480480240650796E-7; dx=1.7296990497380856E-8 evalInputDelta=8.821228808283569E-7
Non-optimal measurement 6.565704899341717E-7 < 6.480480240650796E-7. Total: 5
END: th(5.386086725079711)=6.565704899341717E-7; dx=-3.483760932157775E-8 evalInputDelta=8.736004149592648E-7
Fitness changed from 1.5301709048934365E-6 to 6.480480240650796E-7
Iteration 4 complete. Error: 6.480480240650796E-7 Total: 0.7168; Orientation: 0.6519; Line Search: 0.0561
Non-optimal measurement 6.480480240650796E-7 < 6.480480240650796E-7. Total: 5
Rejected: LBFGS Orientation magnitude: 2.502e-03, gradient 4.157e-04, dot -0.724; [8d29479f-b2c0-49d9-b49c-7dbad5ff77f1 = 1.000/1.000e+00, a7b13113-e8c0-414a-87a2-ca78edc5994e = 1.000/1.000e+00, 48560127-77be-422c-aa71-d99f87fa999b = 1.000/1.000e+00, fbe83138-9fba-47d6-b71d-400169bcb6db = 1.000/1.000e+00, 5b43b456-ec01-4329-9c5c-fbf36d2ba054 = 1.000/1.000e+00]
Orientation rejected. Popping history element from 6.480480240650796E-7, 1.5301709048934365E-6, 4.729595598411049E-6, 1.6729629868792515E-5, 2.880000000000005E-5
Rejected: LBFGS Orientation magnitude: 2.960e-03, gradient 4.157e-04, dot -0.759; [8d29479f-b2c0-49d9-b49c-7dbad5ff77f1 = 1.000/1.000e+00, fbe83138-9fba-47d6-b71d-400169bcb6db = 1.000/1.000e+00, 48560127-77be-422c-aa71-d99f87fa999b = 1.000/1.000e+00, a7b13113-e8c0-414a-87a2-ca78edc5994e = 1.000/1.000e+00, 5b43b456-ec01-4329-9c5c-fbf36d2ba054 = 1.000/1.000e+00]
Orientation rejected. Popping history element from 6.480480240650796E-7, 1.5301709048934365E-6, 4.729595598411049E-6, 1.6729629868792515E-5
LBFGS Accumulation History: 3 points
Removed measurement 427667d6 to history. Total: 4
Removed measurement 4f52f31 to history. Total: 3
Adding measurement 2f442972 to history. Total: 3
th(0)=6.480480240650796E-7;dx=-1.7281280641735456E-7
Adding measurement 4c8421ea to history. Total: 4
New Minimum: 6.480480240650796E-7 > 1.940409802486712E-7
WOLF (strong): th(11.60397208403195)=1.940409802486712E-7; dx=9.456252444000188E-8 evalInputDelta=4.5400704381640836E-7
Adding measurement 3c98810e to history. Total: 5
New Minimum: 1.940409802486712E-7 > 3.321751775342498E-8
END: th(5.801986042015975)=3.321751775342498E-8; dx=-3.912514098867094E-8 evalInputDelta=6.148305063116546E-7
Fitness changed from 6.480480240650796E-7 to 3.321751775342498E-8
Iteration 5 complete. Error: 3.321751775342498E-8 Total: 1.7028; Orientation: 1.4965; Line Search: 0.1962
Non-optimal measurement 3.321751775342498E-8 < 3.321751775342498E-8. Total: 6
Rejected: LBFGS Orientation magnitude: 7.948e-04, gradient 9.412e-05, dot -0.777; [5b43b456-ec01-4329-9c5c-fbf36d2ba054 = 1.000/1.000e+00, 48560127-77be-422c-aa71-d99f87fa999b = 1.000/1.000e+00, 8d29479f-b2c0-49d9-b49c-7dbad5ff77f1 = 1.000/1.000e+00, a7b13113-e8c0-414a-87a2-ca78edc5994e = 1.000/1.000e+00, fbe83138-9fba-47d6-b71d-400169bcb6db = 1.000/1.000e+00]
Orientation rejected. Popping history element from 3.321751775342498E-8, 1.940409802486712E-7, 6.480480240650796E-7, 4.729595598411049E-6, 1.6729629868792515E-5, 2.880000000000005E-5
Rejected: LBFGS Orientation magnitude: 7.109e-04, gradient 9.412e-05, dot -0.841; [a7b13113-e8c0-414a-87a2-ca78edc5994e = 1.000/1.000e+00, 8d29479f-b2c0-49d9-b49c-7dbad5ff77f1 = 1.000/1.000e+00, fbe83138-9fba-47d6-b71d-400169bcb6db = 1.000/1.000e+00, 5b43b456-ec01-4329-9c5c-fbf36d2ba054 = 1.000/1.000e+00, 48560127-77be-422c-aa71-d99f87fa999b = 1.000/1.000e+00]
Orientation rejected. Popping history element from 3.321751775342498E-8, 1.940409802486712E-7, 6.480480240650796E-7, 4.729595598411049E-6, 1.6729629868792515E-5
Rejected: LBFGS Orientation magnitude: 8.211e-04, gradient 9.412e-05, dot -0.909; [a7b13113-e8c0-414a-87a2-ca78edc5994e = 1.000/1.000e+00, fbe83138-9fba-47d6-b71d-400169bcb6db = 1.000/1.000e+00, 8d29479f-b2c0-49d9-b49c-7dbad5ff77f1 = 1.000/1.000e+00, 48560127-77be-422c-aa71-d99f87fa999b = 1.000/1.000e+00, 5b43b456-ec01-4329-9c5c-fbf36d2ba054 = 1.000/1.000e+00]
Orientation rejected. Popping history element from 3.321751775342498E-8, 1.940409802486712E-7, 6.480480240650796E-7, 4.729595598411049E-6
LBFGS Accumulation History: 3 points
Removed measurement 3c98810e to history. Total: 5
Removed measurement 4c8421ea to history. Total: 4
Removed measurement 2f442972 to history. Total: 3
Adding measurement 2a91a3fb to history. Total: 3
th(0)=3.321751775342498E-8;dx=-8.858004734246663E-9
Adding measurement 104f5843 to history. Total: 4
New Minimum: 3.321751775342498E-8 > 1.4763341223744437E-8
WOLF (strong): th(12.500000000000004)=1.4763341223744437E-8; dx=5.9053364894977745E-9 evalInputDelta=1.8454176529680543E-8
Adding measurement 487785f0 to history. Total: 5
New Minimum: 1.4763341223744437E-8 > 9.227088264819711E-10
END: th(6.250000000000002)=9.227088264819711E-10; dx=-1.4763341223727988E-9 evalInputDelta=3.229480892694301E-8
Fitness changed from 3.321751775342498E-8 to 9.227088264819711E-10
Iteration 6 complete. Error: 9.227088264819711E-10 Total: 2.4537; Orientation: 2.3704; Line Search: 0.0728
Non-optimal measurement 9.227088264819711E-10 < 9.227088264819711E-10. Total: 6
Rejected: LBFGS Orientation m

...skipping 21470 bytes...

e = 1.000/1.000e+00, 5b43b456-ec01-4329-9c5c-fbf36d2ba054 = 1.000/1.000e+00, fbe83138-9fba-47d6-b71d-400169bcb6db = 1.000/1.000e+00, 8d29479f-b2c0-49d9-b49c-7dbad5ff77f1 = 1.000/1.000e+00]
Orientation rejected. Popping history element from 1.3200272480698262E-29, 1.711137911037527E-28, 4.729595598411049E-6, 1.6729629868792515E-5, 2.880000000000005E-5
Rejected: LBFGS Orientation magnitude: 1.422e-14, gradient 1.876e-15, dot -0.858; [fbe83138-9fba-47d6-b71d-400169bcb6db = 1.000/1.000e+00, 5b43b456-ec01-4329-9c5c-fbf36d2ba054 = 1.000/1.000e+00, a7b13113-e8c0-414a-87a2-ca78edc5994e = 1.000/1.000e+00, 8d29479f-b2c0-49d9-b49c-7dbad5ff77f1 = 1.000/1.000e+00, 48560127-77be-422c-aa71-d99f87fa999b = 1.000/1.000e+00]
Orientation rejected. Popping history element from 1.3200272480698262E-29, 1.711137911037527E-28, 4.729595598411049E-6, 1.6729629868792515E-5
LBFGS Accumulation History: 3 points
Removed measurement 456d2d8f to history. Total: 4
Removed measurement 2b87066 to history. Total: 3
Adding measurement 29affc3f to history. Total: 3
th(0)=1.3200272480698262E-29;dx=-3.520072661519536E-30
Adding measurement 202191fc to history. Total: 4
New Minimum: 1.3200272480698262E-29 > 4.249988126878201E-30
WOLF (strong): th(11.688556261023683)=4.249988126878201E-30; dx=1.996694602326072E-30 evalInputDelta=8.950284353820062E-30
Adding measurement 76139587 to history. Total: 5
New Minimum: 4.249988126878201E-30 > 6.738186898762809E-31
END: th(5.844278130511841)=6.738186898762809E-31; dx=-7.94119977922485E-31 evalInputDelta=1.2526453790821982E-29
Fitness changed from 1.3200272480698262E-29 to 6.738186898762809E-31
Iteration 16 complete. Error: 6.738186898762809E-31 Total: 1.2903; Orientation: 1.2331; Line Search: 0.0464
Non-optimal measurement 6.738186898762809E-31 < 6.738186898762809E-31. Total: 6
Rejected: LBFGS Orientation magnitude: 3.682e-15, gradient 4.239e-16, dot -0.776; [5b43b456-ec01-4329-9c5c-fbf36d2ba054 = 1.000/1.000e+00, 8d29479f-b2c0-49d9-b49c-7dbad5ff77f1 = 1.000/1.000e+00, fbe83138-9fba-47d6-b71d-400169bcb6db = 1.000/1.000e+00, 48560127-77be-422c-aa71-d99f87fa999b = 1.000/1.000e+00, a7b13113-e8c0-414a-87a2-ca78edc5994e = 1.000/1.000e+00]
Orientation rejected. Popping history element from 6.738186898762809E-31, 4.249988126878201E-30, 1.3200272480698262E-29, 4.729595598411049E-6, 1.6729629868792515E-5, 2.880000000000005E-5
Rejected: LBFGS Orientation magnitude: 3.204e-15, gradient 4.239e-16, dot -0.858; [5b43b456-ec01-4329-9c5c-fbf36d2ba054 = 1.000/1.000e+00, a7b13113-e8c0-414a-87a2-ca78edc5994e = 1.000/1.000e+00, 8d29479f-b2c0-49d9-b49c-7dbad5ff77f1 = 1.000/1.000e+00, fbe83138-9fba-47d6-b71d-400169bcb6db = 1.000/1.000e+00, 48560127-77be-422c-aa71-d99f87fa999b = 1.000/1.000e+00]
Orientation rejected. Popping history element from 6.738186898762809E-31, 4.249988126878201E-30, 1.3200272480698262E-29, 4.729595598411049E-6, 1.6729629868792515E-5
Rejected: LBFGS Orientation magnitude: 4.484e-15, gradient 4.239e-16, dot -0.897; [8d29479f-b2c0-49d9-b49c-7dbad5ff77f1 = 1.000/1.000e+00, 5b43b456-ec01-4329-9c5c-fbf36d2ba054 = 1.000/1.000e+00, 48560127-77be-422c-aa71-d99f87fa999b = 1.000/1.000e+00, fbe83138-9fba-47d6-b71d-400169bcb6db = 1.000/1.000e+00, a7b13113-e8c0-414a-87a2-ca78edc5994e = 1.000/1.000e+00]
Orientation rejected. Popping history element from 6.738186898762809E-31, 4.249988126878201E-30, 1.3200272480698262E-29, 4.729595598411049E-6
LBFGS Accumulation History: 3 points
Removed measurement 76139587 to history. Total: 5
Removed measurement 202191fc to history. Total: 4
Removed measurement 29affc3f to history. Total: 3
Adding measurement 5884338c to history. Total: 3
th(0)=6.738186898762809E-31;dx=-1.796849839670082E-31
Adding measurement 48126c12 to history. Total: 4
New Minimum: 6.738186898762809E-31 > 3.484135664726136E-31
WOLF (strong): th(12.591115542569396)=3.484135664726136E-31; dx=1.2797076906918633E-31 evalInputDelta=3.254051234036673E-31
Adding measurement 645586aa to history. Total: 5
New Minimum: 3.484135664726136E-31 > 1.314768175368353E-32
END: th(6.295557771284698)=1.314768175368353E-32; dx=-2.4542339273542586E-32 evalInputDelta=6.606710081225973E-31
Fitness changed from 6.738186898762809E-31 to 1.314768175368353E-32
Iteration 17 complete. Error: 1.314768175368353E-32 Total: 2.4948; Orientation: 2.4423; Line Search: 0.0438
Non-optimal measurement 1.314768175368353E-32 < 1.314768175368353E-32. Total: 6
Rejected: LBFGS Orientation magnitude: 4.324e-16, gradient 5.921e-17, dot -0.735; [a7b13113-e8c0-414a-87a2-ca78edc5994e = 1.000/1.000e+00, fbe83138-9fba-47d6-b71d-400169bcb6db = 0.000e+00, 48560127-77be-422c-aa71-d99f87fa999b = 0.000e+00, 8d29479f-b2c0-49d9-b49c-7dbad5ff77f1 = 0.000e+00, 5b43b456-ec01-4329-9c5c-fbf36d2ba054 = 0.000e+00]
Orientation rejected. Popping history element from 1.314768175368353E-32, 3.484135664726136E-31, 6.738186898762809E-31, 4.729595598411049E-6, 1.6729629868792515E-5, 2.880000000000005E-5
Rejected: LBFGS Orientation magnitude: 4.150e-16, gradient 5.921e-17, dot -0.881; [8d29479f-b2c0-49d9-b49c-7dbad5ff77f1 = 0.000e+00, 5b43b456-ec01-4329-9c5c-fbf36d2ba054 = 0.000e+00, a7b13113-e8c0-414a-87a2-ca78edc5994e = 1.000/1.000e+00, fbe83138-9fba-47d6-b71d-400169bcb6db = 0.000e+00, 48560127-77be-422c-aa71-d99f87fa999b = 0.000e+00]
Orientation rejected. Popping history element from 1.314768175368353E-32, 3.484135664726136E-31, 6.738186898762809E-31, 4.729595598411049E-6, 1.6729629868792515E-5
Rejected: LBFGS Orientation magnitude: 6.114e-16, gradient 5.921e-17, dot -0.898; [fbe83138-9fba-47d6-b71d-400169bcb6db = 0.000e+00, 48560127-77be-422c-aa71-d99f87fa999b = 0.000e+00, 8d29479f-b2c0-49d9-b49c-7dbad5ff77f1 = 0.000e+00, 5b43b456-ec01-4329-9c5c-fbf36d2ba054 = 0.000e+00, a7b13113-e8c0-414a-87a2-ca78edc5994e = 1.000/1.000e+00]
Orientation rejected. Popping history element from 1.314768175368353E-32, 3.484135664726136E-31, 6.738186898762809E-31, 4.729595598411049E-6
LBFGS Accumulation History: 3 points
Removed measurement 645586aa to history. Total: 5
Removed measurement 48126c12 to history. Total: 4
Removed measurement 5884338c to history. Total: 3
Adding measurement 9630fcf to history. Total: 3
th(0)=1.314768175368353E-32;dx=-3.5060484676489414E-33
Non-optimal measurement 1.314768175368353E-32 < 1.314768175368353E-32. Total: 4
Armijo: th(13.563368055555566)=1.314768175368353E-32; dx=3.5060484676489414E-33 evalInputDelta=0.0
Adding measurement 613f8917 to history. Total: 4
New Minimum: 1.314768175368353E-32 > 0.0
END: th(6.781684027777783)=0.0; dx=0.0 evalInputDelta=1.314768175368353E-32
Fitness changed from 1.314768175368353E-32 to 0.0
Iteration 18 complete. Error: 0.0 Total: 1.7175; Orientation: 1.6515; Line Search: 0.0572
Non-optimal measurement 0.0 < 0.0. Total: 5
Rejected: LBFGS Orientation magnitude: 0.000e+00, gradient 0.000e+00, dot NaN; [8d29479f-b2c0-49d9-b49c-7dbad5ff77f1 = 0.000e+00, 48560127-77be-422c-aa71-d99f87fa999b = 0.000e+00, fbe83138-9fba-47d6-b71d-400169bcb6db = 0.000e+00, a7b13113-e8c0-414a-87a2-ca78edc5994e = 0.000e+00, 5b43b456-ec01-4329-9c5c-fbf36d2ba054 = 0.000e+00]
Orientation rejected. Popping history element from 0.0, 1.314768175368353E-32, 4.729595598411049E-6, 1.6729629868792515E-5, 2.880000000000005E-5
Rejected: LBFGS Orientation magnitude: 0.000e+00, gradient 0.000e+00, dot NaN; [fbe83138-9fba-47d6-b71d-400169bcb6db = 0.000e+00, 8d29479f-b2c0-49d9-b49c-7dbad5ff77f1 = 0.000e+00, 5b43b456-ec01-4329-9c5c-fbf36d2ba054 = 0.000e+00, 48560127-77be-422c-aa71-d99f87fa999b = 0.000e+00, a7b13113-e8c0-414a-87a2-ca78edc5994e = 0.000e+00]
Orientation rejected. Popping history element from 0.0, 1.314768175368353E-32, 4.729595598411049E-6, 1.6729629868792515E-5
LBFGS Accumulation History: 3 points
Removed measurement 613f8917 to history. Total: 4
Removed measurement 9630fcf to history. Total: 3
Adding measurement 36814d31 to history. Total: 3
th(0)=0.0;dx=0.0 (ERROR: Starting derivative negative)
Non-optimal measurement 0.0 < 0.0. Total: 4
Fitness changed from 0.0 to 0.0
Static Iteration Total: 1.6536; Orientation: 1.5128; Line Search: 0.1321
Iteration 19 failed. Error: 0.0
Previous Error: 0.0 -> 0.0
Optimization terminated 19
Final threshold in iteration 19: 0.0 (> 0.0) after 30.677s (< 30.000s)

Returns

    0.0

Training Converged

TrainingTester.java:432 executed in 0.15 seconds (0.000 gc):

    return TestUtil.compare(title + " vs Iteration", runs);
Logging
Plotting range=[1.0, -31.881150816781762], [18.0, -4.77651366738902]; valueStats=DoubleSummaryStatistics{count=36, sum=0.000054, min=0.000000, average=0.000001, max=0.000017}
Plotting 18 points for GD
Plotting 3 points for CjGD
Plotting 18 points for LBFGS

Returns

Result

TrainingTester.java:435 executed in 0.02 seconds (0.000 gc):

    return TestUtil.compareTime(title + " vs Time", runs);
Logging
Plotting range=[0.0, -31.881150816781762], [28.913, -4.77651366738902]; valueStats=DoubleSummaryStatistics{count=36, sum=0.000054, min=0.000000, average=0.000001, max=0.000017}
Plotting 18 points for GD
Plotting 3 points for CjGD
Plotting 18 points for LBFGS

Returns

Result

Results

TrainingTester.java:255 executed in 0.00 seconds (0.000 gc):

    return grid(inputLearning, modelLearning, completeLearning);

Returns

Result

TrainingTester.java:258 executed in 0.00 seconds (0.000 gc):

    return new ComponentResult(null == inputLearning ? null : inputLearning.value,
        null == modelLearning ? null : modelLearning.value, null == completeLearning ? null : completeLearning.value);

Returns

    {"input":{ "LBFGS": { "type": "Converged", "value": 0.0 }, "CjGD": { "type": "Converged", "value": 0.0 }, "GD": { "type": "Converged", "value": 0.0 } }, "model":null, "complete":null}

LayerTests.java:425 executed in 0.00 seconds (0.000 gc):

    throwException(exceptions.addRef());

Results

detailsresult
{"input":{ "LBFGS": { "type": "Converged", "value": 0.0 }, "CjGD": { "type": "Converged", "value": 0.0 }, "GD": { "type": "Converged", "value": 0.0 } }, "model":null, "complete":null}OK
  {
    "result": "OK",
    "performance": {
      "execution_time": "35.951",
      "gc_time": "0.395"
    },
    "created_on": 1586736712851,
    "file_name": "trainingTest",
    "report": {
      "simpleName": "Double",
      "canonicalName": "com.simiacryptus.mindseye.layers.cudnn.BandReducerLayerTest.Double",
      "link": "https://github.com/SimiaCryptus/mindseye-cudnn/tree/59d5b3318556370acb2d83ee6ec123ce0fc6974f/src/test/java/com/simiacryptus/mindseye/layers/cudnn/BandReducerLayerTest.java",
      "javaDoc": ""
    },
    "training_analysis": {
      "input": {
        "LBFGS": {
          "type": "Converged",
          "value": 0.0
        },
        "CjGD": {
          "type": "Converged",
          "value": 0.0
        },
        "GD": {
          "type": "Converged",
          "value": 0.0
        }
      }
    },
    "archive": "s3://code.simiacrypt.us/tests/com/simiacryptus/mindseye/layers/cudnn/BandReducerLayer/Double/trainingTest/202004131152",
    "id": "6c2491e4-001e-4a9f-8bd4-87e0b04d0d51",
    "report_type": "Components",
    "display_name": "Comparative Training",
    "target": {
      "simpleName": "BandReducerLayer",
      "canonicalName": "com.simiacryptus.mindseye.layers.cudnn.BandReducerLayer",
      "link": "https://github.com/SimiaCryptus/mindseye-cudnn/tree/59d5b3318556370acb2d83ee6ec123ce0fc6974f/src/main/java/com/simiacryptus/mindseye/layers/cudnn/BandReducerLayer.java",
      "javaDoc": ""
    }
  }