1. Test Modules
  2. Network Diagram
  3. Training Characteristics
    1. Input Learning
      1. Gradient Descent
      2. Conjugate Gradient Descent
      3. Limited-Memory BFGS
    2. Model Learning
      1. Gradient Descent
      2. Conjugate Gradient Descent
      3. Limited-Memory BFGS
    3. Composite Learning
      1. Gradient Descent
      2. Conjugate Gradient Descent
      3. Limited-Memory BFGS
    4. Results
  4. Results

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

Test Modules

Network Diagram

This is a network apply the following layout:

LayerTests.java:203 executed in 0.07 seconds (0.000 gc):

    return Graphviz.fromGraph((Graph) TestUtil.toGraph(((DAGNetwork) layer).addRef())).height(400).width(600)
        .render(Format.PNG).toImage();
Logging
executing command [/bin/sh, -c, dot -Tsvg /tmp/GraphvizJava/DotEngine3393490895848117843/dotfile.dot -ooutfile.svg]

Returns

Result

Using Seed 7889174595168920576

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.01 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

    [
    	[ [ -1.524, 1.452, -0.952, 1.38, 1.168, 1.08, -0.404 ], [ -1.116, -0.184, -0.58, 1.74, -1.14, -0.312, 1.348 ], [ 0.492, 1.436, -1.288, -1.932, 1.564, -1.584, -0.616 ], [ 0.252, -0.988, -0.32, -0.516, -0.096, 1.388, -0.084 ], [ -0.064, 1.728, 1.404, -0.18, 1.992, -0.268, 0.544 ], [ 1.516, 1.488, -0.656, 0.148, 1.188, 0.528, -0.092 ], [ 0.9, -0.364, 1.024, -1.364, 0.404, -1.868, 0.4 ], [ 0.544, 1.9, 1.312, -0.96, 0.276, 1.056, -0.712 ], ... ],
    	[ [ 0.676, 0.388, -0.752, 1.892, -0.892, 1.136, 0.608 ], [ -1.476, -1.94, 0.668, 0.392, 1.024, -1.504, -0.036 ], [ -0.868, 1.532, -1.976, -1.992, -0.784, -0.668, 0.968 ], [ 1.056, 0.668, -1.432, 0.152, -1.324, -1.74, 0.036 ], [ -0.568, -1.24, 1.632, -0.896, 0.62, 1.004, 0.488 ], [ -1.004, 0.924, -0.948, -1.524, -0.384, 0.232, -0.196 ], [ -1.42, 1.1, 0.292, 0.8, 1.628, 1.288, -1.0 ], [ -0.664, -1.332, -1.856, 1.536, -1.604, -0.692, -0.612 ], ... ],
    	[ [ -1.156, -0.964, 0.072, -0.372, -0.876, -1.808, -0.332 ], [ 1.252, -0.088, -0.78, 0.884, -1.992, -1.728, 1.34 ], [ 1.956, 1.864, -0.508, -0.176, 1.768, 0.968, -1.652 ], [ 0.56, 0.936, -1.112, 1.56, -0.044, -1.064, 0.988 ], [ 1.336, -0.612, -1.992, 0.088, 1.16, 0.724, -0.604 ], [ 1.888, -1.648, 1.512, -0.716, -0.86, -1.176, -1.624 ], [ 0.312, -0.956, -1.748, -0.272, -0.924, -0.208, 0.292 ], [ -0.412, 1.64, 0.824, 0.92, -1.664, -1.4, -1.012 ], ... ],
    	[ [ 1.836, -0.984, 1.844, 1.224, 0.616, -1.812, -0.968 ], [ -1.716, -1.324, -0.76, -1.852, 1.348, 0.648, 0.264 ], [ 0.34, 1.632, 0.236, -1.788, -1.892, 0.288, -1.108 ], [ -0.368, -0.484, -0.192, 1.784, 1.068, 0.812, 1.516 ], [ 0.736, 1.072, -0.208, -0.556, 1.624, -1.632, 0.484 ], [ 1.84, -0.456, 0.552, 0.024, -0.688, -0.428, -0.3 ], [ 1.244, 1.024, 0.004, 0.868, -0.456, -0.672, -1.804 ], [ 1.988, 1.74, -1.584, -0.28, 1.7, 0.172, -0.624 ], ... ],
    	[ [ 0.976, -1.352, -1.892, -0.048, 1.452, -0.848, -1.036 ], [ 1.24, 1.524, 1.752, 1.988, 1.032, -0.516, -1.804 ], [ -0.796, -1.812, -1.02, -0.028, 0.564, 0.78, -0.208 ], [ -0.564, 1.228, -0.264, -1.032, -1.724, 0.612, 1.32 ], [ -1.948, 0.788, -1.332, 0.44, -1.392, -1.3, 0.928 ], [ -1.376, -1.856, 0.956, 1.432, 1.508, 1.592, 0.152 ], [ -0.508, -0.784, 1.652, 1.52, -1.524, 1.956, -1.244 ], [ -1.332, 1.996, -1.808, 1.012, -1.48, -0.98, -0.62 ], ... ],
    	[ [ -0.04, -1.128, 1.26, -1.056, 0.436, -0.376, -0.104 ], [ -1.628, 0.916, -0.32, 0.932, 0.392, -1.348, 1.648 ], [ -0.272, -0.384, -0.904, -1.004, 1.72, 0.568, 1.628 ], [ 1.292, 1.5, 0.264, -1.932, -0.132, -1.636, 1.928 ], [ -1.184, -0.996, -0.552, 1.348, -1.636, -0.124, 1.024 ], [ 0.22, -1.692, -1.62, 0.028, -1.708, 0.244, 1.192 ], [ 0.096, -0.964, 0.304, -0.252, 0.536, -1.028, -1.368 ], [ 1.328, -1.124, 1.904, -1.376, 1.944, 0.372, 0.864 ], ... ],
    	[ [ 1.668, 1.268, 1.544, 1.8, 1.16, 1.816, -1.648 ], [ -1.428, 0.28, 1.036, -0.944, 0.072, -0.216, -1.272 ], [ -0.428, 0.2, 0.312, -1.096, -1.536, 1.732, 0.98 ], [ -1.652, -1.032, -1.76, -0.844, -0.864, -1.568, 1.104 ], [ 1.624, -1.908, 0.164, 0.532, -0.984, -0.5, -1.58 ], [ 1.912, 1.344, 1.86, -1.472, -0.6, 1.064, -0.36 ], [ -0.672, -0.896, 0.656, 1.244, -0.46, -1.248, 0.256 ], [ -1.452, -1.124, -0.644, 0.344, -1.984, 1.076, -0.544 ], ... ],
    	[ [ 0.676, 1.732, -1.048, -0.576, -0.596, 0.204, 0.872 ], [ -1.712, 0.872, -0.664, 0.8, 0.092, 1.884, 0.532 ], [ -0.52, -0.556, 1.476, 1.676, -0.928, 0.3, 1.268 ], [ -1.452, -0.064, -1.16, -1.788, -0.12, -1.64, 1.12 ], [ -0.908, -0.736, 1.616, 1.616, -0.552, 1.476, -1.82 ], [ -0.292, -0.104, -1.128, -0.3, 1.116, 1.524, -1.608 ], [ -1.996, 0.228, -1.612, -0.652, 1.624, -1.068, -1.636 ], [ 0.248, -1.856, 1.12, 1.568, 1.144, 1.68, 0.012 ], ... ],
    	...
    ]
    [
    	[ [ 1.364, -0.016, 0.168, 0.4, 1.592, 0.28, -1.66 ], [ -0.024, -0.28, 1.024, 0.508, -1.116, -1.524, 1.0 ], [ 0.352, -0.744, 1.592, 1.792, -0.168, 1.668, 0.836 ], [ -0.996, -0.56, 1.74, -1.96, -0.552, -0.78, 1.308 ], [ 1.32, -1.584, -1.416, 0.92, 1.18, -1.344, 1.388 ], [ -1.5, -0.128, -0.944, -1.22, 0.632, -0.988, 1.548 ], [ 0.36, -1.292, 0.248, 0.508, 1.724, 0.724, 1.084 ], [ 1.296, -0.804, 1.88, 0.804, -0.732, -1.516, -1.732 ], ... ],
    	[ [ -0.86, -1.524, 1.604, 1.576, -0.864, 0.676, 1.932 ], [ 0.204, -0.996, 0.168, -1.356, 1.56, 0.7, -1.364 ], [ 0.52, -0.416, -1.976, -1.32, 0.196, 1.744, -1.192 ], [ -0.232, 1.6, 0.364, 1.656, 1.72, 0.544, 0.36 ], [ -0.452, 1.14, -1.16, 1.06, 0.208, 1.576, 0.916 ], [ 0.34, 1.304, 1.44, 0.932, -0.676, 1.832, -0.436 ], [ -0.82, -0.344, -0.464, 1.836, -0.104, 1.732, 1.104 ], [ -0.768, 1.232, -1.084, 0.488, -0.564, -0.28, 1.148 ], ... ],
    	[ [ -1.86, 0.672, -1.008, 1.552, 0.356, 1.992, -1.58 ], [ 0.78, -0.748, 1.072, 0.64, 1.644, 1.376, -0.024 ], [ 1.46, -0.732, 0.616, 0.956, -0.748, -0.56, 1.188 ], [ 0.864, 1.596, 1.628, 1.012, -0.608, 0.128, 1.468 ], [ -1.688, -0.284, 0.544, -1.42, 1.252, -0.416, -0.612 ], [ 1.212, 0.208, -1.776, 1.34, 1.156, 0.688, 0.18 ], [ 1.28, 1.54, 0.78, -1.328, -1.092, 0.24, 0.916 ], [ 0.56, -0.668, 0.388, 0.196, -0.296, 0.308, -1.788 ], ... ],
    	[ [ -0.824, 1.548, -0.076, 0.98, -0.496, 0.676, 0.944 ], [ 1.808, 0.644, 0.068, 0.472, 0.448, -0.38, 1.708 ], [ -1.82, 1.768, -0.796, 0.452, -0.556, 0.876, -1.108 ], [ 1.724, -1.476, -1.364, -0.924, 1.38, -0.7, -0.528 ], [ -1.452, -0.088, 1.12, -0.86, 0.544, -0.92, -0.804 ], [ -1.32, -0.672, 1.1, 1.268, 1.876, -1.996, -0.6 ], [ 0.216, -0.988, 0.7, -1.416, -0.688, 0.296, -1.376 ], [ 0.864, 1.92, -1.76, 1.84, -0.636, -1.516, -1.604 ], ... ],
    	[ [ 0.808, 0.316, -0.492, 0.592, -1.084, 0.624, -0.268 ], [ 1.988, -0.464, -1.396, -1.7, 0.78, 0.716, 0.816 ], [ -0.032, 1.068, -0.34, -1.44, 1.092, -1.416, -0.892 ], [ -1.2, 1.484, -1.488, -1.168, -0.628, -1.892, -0.172 ], [ -0.04, -1.212, 1.544, 0.588, -0.792, -1.252, 1.592 ], [ -0.372, -1.908, -1.604, 1.028, 1.988, 1.248, 0.436 ], [ 0.944, 0.992, 1.656, 1.676, 1.992, -0.18, 0.332 ], [ 1.972, 0.1, 1.448, -0.472, 0.752, -1.964, -1.88 ], ... ],
    	[ [ 0.184, 1.072, 1.708, 0.94, 0.508, -1.212, 0.14 ], [ -0.872, -1.324, 1.832, 1.484, 1.488, 1.236, 1.132 ], [ -0.46, -1.272, -1.984, 1.936, 1.608, 0.424, -0.684 ], [ -0.412, 0.26, -0.72, -0.156, 0.264, 0.268, -1.48 ], [ -0.98, 1.4, -1.892, -1.756, 0.864, 0.912, 0.524 ], [ -1.892, 0.632, -0.44, 0.096, 0.924, 1.012, 0.464 ], [ -1.16, 0.124, -0.284, -1.536, 0.724, -0.9, -0.512 ], [ -1.28, -1.976, 0.156, -1.968, 0.42, -0.396, -1.384 ], ... ],
    	[ [ -1.592, -1.016, -1.988, -0.012, 1.82, -1.192, -0.912 ], [ 1.18, -0.468, -1.216, 1.08, 1.58, 0.22, 0.612 ], [ -0.4, -0.256, -0.532, 0.356, -0.536, -1.568, 1.676 ], [ 0.748, -0.508, -1.376, -1.108, 0.86, 0.92, 1.344 ], [ -0.932, -0.904, -0.956, 1.712, -0.156, 1.192, -1.248 ], [ 0.384, 0.788, 1.02, -0.48, -0.504, 0.072, 1.272 ], [ -0.192, 1.668, 0.232, -1.528, 1.876, -0.996, 1.032 ], [ -1.756, 0.844, 1.86, -0.148, -0.536, -0.012, -0.616 ], ... ],
    	[ [ -0.652, 1.556, -0.244, -0.748, 0.576, -1.04, 0.788 ], [ 0.88, -0.224, -1.676, -1.14, 1.564, 0.508, -0.344 ], [ 1.624, 0.424, -0.236, 1.908, 1.26, 0.184, 0.78 ], [ 1.8, -0.364, 1.136, 0.612, -1.848, 0.284, 1.072 ], [ 0.72, -0.396, -0.312, -0.28, -0.22, 0.736, -0.24 ], [ 1.104, 1.808, -0.14, 0.356, 0.064, -1.744, -0.328 ], [ 1.94, -0.592, -0.44, 0.308, 1.976, -0.42, 1.016 ], [ -0.268, 1.372, 0.364, -0.408, -1.896, -1.004, -1.048 ], ... ],
    	...
    ]

Gradient Descent

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

TrainingTester.java:480 executed in 31.75 seconds (1.259 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: 12759746543749
Reset training subject: 12760182823208
Constructing line search parameters: GD
th(0)=216.40982553264382;dx=-0.03167844413034469
New Minimum: 216.40982553264382 > 216.3415829579046
WOLFE (weak): th(2.154434690031884)=216.3415829579046; dx=-0.03167235044699336 evalInputDelta=0.06824257473923012
New Minimum: 216.3415829579046 > 216.27335351160815
WOLFE (weak): th(4.308869380063768)=216.27335351160815; dx=-0.03166625676364204 evalInputDelta=0.13647202103567224
New Minimum: 216.27335351160815 > 216.00056701085038
WOLFE (weak): th(12.926608140191302)=216.00056701085038; dx=-0.03164188203023673 evalInputDelta=0.409258521793447
New Minimum: 216.00056701085038 > 214.7756271891152
WOLFE (weak): th(51.70643256076521)=214.7756271891152; dx=-0.03153219572991285 evalInputDelta=1.6341983435286238
New Minimum: 214.7756271891152 > 208.31445364554125
WOLFE (weak): th(258.53216280382605)=208.31445364554125; dx=-0.030947202128185455 evalInputDelta=8.095371887102573
New Minimum: 208.31445364554125 > 170.67333785529684
END: th(1551.1929768229563)=170.67333785529684; dx=-0.02729099211738928 evalInputDelta=45.736487677346986
Fitness changed from 216.40982553264382 to 170.67333785529684
Iteration 1 complete. Error: 170.67333785529684 Total: 4.9260; Orientation: 0.9359; Line Search: 3.2020
th(0)=170.67333785529684;dx=-0.02357417780098915
New Minimum: 170.67333785529684 > 103.24678969607183
END: th(3341.943960201201)=103.24678969607183; dx=-0.01677751508327189 evalInputDelta=67.426548159225
Fitness changed from 170.67333785529684 to 103.24678969607183
Iteration 2 complete. Error: 103.24678969607183 Total: 1.0122; Orientation: 0.1728; Line Search: 0.6708
th(0)=103.24678969607183;dx=-0.012170631936780875
New Minimum: 103.24678969607183 > 40.198868045147876
END: th(7200.000000000001)=40.198868045147876; dx=-0.005342679632920219 evalInputDelta=63.04792165092395
Fitness changed from 103.24678969607183 to 40.198868045147876
Iteration 3 complete. Error: 40.198868045147876 Total: 1.0218; Orientation: 0.1880; Line Search: 0.6518
th(0)=40.198868045147876;dx=-0.0029463045062526126
New Minimum: 40.198868045147876 > 12.771322556668178
END: th(15511.929768229566)=12.771322556668178; dx=-5.900118513233294E-4 evalInputDelta=27.427545488479698
Fitness changed from 40.198868045147876 to 12.771322556668178
Iteration 4 complete. Error: 12.771322556668178 Total: 1.0760; Orientation: 0.1792; Line Search: 0.7215
th(0)=12.771322556668178;dx=-5.718313866473174E-4
New Minimum: 12.771322556668178 > 6.918365806583033
WOLF (strong): th(33419.43960201202)=6.918365806583033; dx=2.2155880160176997E-4 evalInputDelta=5.852956750085145
New Minimum: 6.918365806583033 > 6.530512246998191
END: th(16709.71980100601)=6.530512246998191; dx=-1.7513629252277374E-4 evalInputDelta=6.240810309669987
Fitness changed from 12.771322556668178 to 6.530512246998191
Iteration 5 complete. Error: 6.530512246998191 Total: 1.3796; Orientation: 0.1846; Line Search: 1.0108
th(0)=6.530512246998191;dx=-2.2973253747522477E-4
New Minimum: 6.530512246998191 > 4.575359320435339
WOLF (strong): th(36000.000000000015)=4.575359320435339; dx=1.211129304439553E-4 evalInputDelta=1.9551529265628513
New Minimum: 4.575359320435339 > 3.9741311780804547
END: th(18000.000000000007)=3.9741311780804547; dx=-5.430980351563472E-5 evalInputDelta=2.556381068917736
Fitness changed from 6.530512246998191 to 3.9741311780804547
Iteration 6 complete. Error: 3.9741311780804547 Total: 1.3947; Orientation: 0.1870; Line Search: 1.0145
th(0)=3.9741311780804547;dx=-1.3481698562822504E-4
Armijo: th(38779.824420573925)=4.256577131224587; dx=1.493836298750353E-4 evalInputDelta=-0.2824459531441321
New Minimum: 3.9741311780804547 > 2.7376979084730864
WOLF (strong): th(19389.912210286962)=2.7376979084730864; dx=7.283322123405113E-6 evalInputDelta=1.2364332696073683
END: th(6463.304070095654)=3.2558409223936797; dx=-8.745021637768168E-5 evalInputDelta=0.718290255686775
Fitness changed from 3.9741311780804547 to 2.7376979084730864
Iteration 7 complete. Error: 2.7376979084730864 Total: 1.7415; Orientation: 0.1950; Line Search: 1.3406
th(0)=2.7376979084730864;dx=-1.1870854103029958E-4
New Minimum: 2.7376979084730864 > 1.9807669956964316
WOLF (strong): th(13924.766500838345)=1.9807669956964316; dx=9.99132660073141E-6 evalInputDelta=0.7569309127766548
END: th(6962.383250419172)=2.135218001403395; dx=-5.435860721478408E-5 evalInputDelta=0.6024799070696916
Fitness changed from 2.7376979084730864 to 1.9807669956964316
Iteration 8 complete. Error: 1.9807669956964316 Total: 1.5585; Orientation: 0.1952; Line Search: 1.1583
th(0)=1.9807669956964316;dx=-5.787000680710498E-5
New Minimum: 1.9807669956964316 > 1.5243909908735553
END: th(15000.00000000001)=1.5243909908735553; dx=-2.9801271692784462E-6 evalInputDelta=0.4563760048228762
Fitness changed from 1.9807669956964316 to 1.5243909908735553
Iteration 9 complete. Error: 1.5243909908735553 Total: 1.0312; Orientation: 0.1822; Line Search: 0.6554
th(0)=1.5243909908735553;dx=-3.831970058327691E-5
New Minimum: 1.5243909908735553 > 1.4892466943727598
WOLF (strong): th(32316.520350478277)=1.4892466943727598; dx=3.6144695593899976E-5 evalInputDelta=0.035144296500795535
New Minimum: 1.4892466943727598 > 1.2060150708174309
END: th(16158.260175239138)=1.2060150708174309; dx=-1.0875024946884638E-6 evalInputDelta=0.3183759200561245
Fitness changed from 1.5243909908735553 to 1.2060150708174309
Iteration 10 complete. Error: 1.2060150708174309 Total: 1.3409; Orientation: 0.1858; Line Search: 0.9607
th(0)=1.2060150708174309;dx=-3.094768875671933E-5
Armijo: th(34811.91625209586)=1.3988899044990126; dx=4.202865495719211E-5 evalInputDelta=-0.19287483368158176
New Minimum: 1.2060150708174309 > 0.9848966919391158
WOLF (strong): th(17405.95812604793)=0.9848966919391158; dx=5.540483100236389E-6 evalInputDelta=0.2211183788783151
END: th(5801.986042015978)=1.0617409899204133; dx=-1.8784964804400755E-5 evalInputDelta=0.14427408089701754
Fitness changed from 1.2060150708174309 to 0.9848966919391158
Iteration 11 complete. Error: 0.9848966919391158 Total: 1.9779; Orientation: 0.1864; Line Search: 1.5998
th(0)=0.9848966919391158;dx=-3.158317306517765E-5
New Minimum: 0.9848966919391158 > 0.7988298702371699
WOLF (strong): th(12500.00000000001)=0.7988298702371699; dx=1.8124815928663188E-6 evalInputDelta=0.18606682170194588
END: th(6250.000000000005)=0.8396825706849491; dx=-1.4885345736155666E-5 evalInputDelta=0.14521412125416666
Fitness changed from 0.9848966919391158 to 0.7988298702371699
Iteration 12 complete. Error: 0.7988298702371699 Total: 1.3601; Orientation: 0.1913; Line Search: 0.9656
th(0)=0.7988298702371699;dx=-1.5149569958571918E-5
New Minimum: 0.7988298702371699 > 0.6743574140278356
END: th(13465.216812699284)=0.6743574140278356; dx=-3.338428852103317E-6 evalInputDelta=0.12447245620933434
Fitness changed from 0.7988298702371699 to 0.6743574140278356
Iteration 13 complete. Error: 0.6743574140278356 Total: 1.0115; Orientation: 0.1797; Line Search: 0.6329
th(0)=0.6743574140278356;dx=-1.016563586573218E-5
New Minimum: 0.6743574140278356 > 0.5684260578772116
WOLF (strong): th(29009.930210079892)=0.5684260578772116; dx=2.862525835235339E-6 evalInputDelta=0.10593135615062399
END: th(14504.965105039946)=0.5741484782386856; dx=-3.651555015248421E-6 evalInputDelta=0.10020893578914991
Fitness changed from 0.6743574140278356 to 0.5684260578772116
Iteration 14 complete. Error: 0.5684260578772116 Total: 1.3256; Orientation: 0.1862; Line Search: 0.9501
th(0)=0.5684260578772116;dx=-2.7167398108512518E-5
Armijo: th(31250.00000000003)=1.14682542709244; dx=6.418495773828712E-5 evalInputDelta=-0.5783993692152285
New Minimum: 0.5684260578772116 > 0.5007806024582645
WOLF (strong): th(15625.000000000015)=0.5007806024582645; dx=1.8508779814887302E-5 evalInputDelta=0.06764545541894706
New Minimum: 0.5007806024582645 > 0.46657865273166
END: th(5208.3333333333385)=0.46657865273166; dx=-1.1942005467379247E-5 evalInputDelta=0.10184740514555157
Fitness changed from 0.5684260578772116 to 0.46657865273166
Iteration 15 complete. Error: 0.46657865273166 Total: 1.8975; Orientation: 0.1895; Line Search: 1.5120
th(0)=0.46657865273166;dx=-6.762866642472118E-6
New Minimum: 0.46657865273166 > 0.4128068118603059
END: th(11221.01401058274)=0.4128068118603059; dx=-2.8212655617370443E-6 evalInputDelta=0.053771840871354115
Fitness changed from 0.46657865273166 to 0.4128068118603059
Iteration 16 complete. Error: 0.4128068118603059 Total: 1.0250; Orientation: 0.1865; Line Search: 0.6434
th(0)=0.4128068118603059;dx=-4.108483011732099E-6
New Minimum: 0.4128068118603059 > 0.3372843805353528
END: th(24174.94184173325)=0.3372843805353528; dx=-2.1395097916738283E-6 evalInputDelta=0.07552243132495307
Fitness changed from 0.4128068118603059 to 0.3372843805353528
Iteration 17 complete. Error: 0.3372843805353528 Total: 0.9900; Orientation: 0.1809; Line Search: 0.6149
th(0)=0.3372843805353528;dx=-4.760487178448411E-6
Armijo: th(52083.333333333394)=0.4701541216900784; dx=9.862685238789872E-6 evalInputDelta=-0.1328697411547256
New Minimum: 0.3372843805353528 > 0.30851630568798705
WOLF (strong): th(26041.666666666697)=0.30851630568798705; dx=2.5510990301707298E-6 evalInputDelta=0.028768074847365765
New Minimum: 0.30851630568798705 > 0.3065388121585134
END: th(8680.555555555566)=0.3065388121585134; dx=-2.3232917755753647E-6 evalInputDelta=0.030745568376839394
Fitness changed from 0.3372843805353528 to 0.3065388121585134
Iteration 18 complete. Error: 0.3065388121585134 Total: 1.5871; Orientation: 0.1780; Line Search: 1.2242
th(0)=0.3065388121585134;dx=-2.4805614455881494E-6
New Minimum: 0.3065388121585134 > 0.2631616815383544
END: th(18701.690017637902)=0.2631616815383544; dx=-2.1582846243926204E-6 evalInputDelta=0.04337713062015902
Fitness changed from 0.3065388121585134 to 0.2631616815383544
Iteration 19 complete. Error: 0.2631616815383544 Total: 1.0858; Orientation: 0.1761; Line Search: 0.7247
th(0)=0.2631616815383544;dx=-2.0650323001175643E-6
New Minimum: 0.2631616815383544 > 0.19561427391077446
END: th(40291.56973622209)=0.19561427391077446; dx=-1.2878977579464117E-6 evalInputDelta=0.06754740762757994
Fitness changed from 0.2631616815383544 to 0.19561427391077446
Iteration 20 complete. Error: 0.19561427391077446 Total: 0.9846; Orientation: 0.1781; Line Search: 0.6206
th(0)=0.19561427391077446;dx=-2.6238315386408287E-6
Armijo: th(86805.55555555566)=0.654752771808589; dx=1.3202382530206462E-5 evalInputDelta=-0.4591384978978146
Armijo: th(43402.77777777783)=0.2534581097862517; dx=5.289275495782816E-6 evalInputDelta=-0.057843835875477256
New Minimum: 0.19561427391077446 > 0.17673434963072687
WOLF (strong): th(14467.592592592611)=0.17673434963072687; dx=1.3870806167053042E-8 evalInputDelta=0.01887992428004759
END: th(3616.898148148153)=0.1873166800683994; dx=-1.9644059524388585E-6 evalInputDelta=0.00829759384237505
Fitness changed from 0.19561427391077446 to 0.17673434963072687
Iteration 21 complete. Error: 0.17673434963072687 Total: 2.0161; Orientation: 0.1787; Line Search: 1.6463
Final threshold in iteration 21: 0.17673434963072687 (> 0.0) after 31.744s (< 30.000s)

Returns

    0.17673434963072687

This training apply resulted in the following configuration:

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

    RefList<double[]> state = network.state();
    assert state != null;
    String description = state.stream().map(RefArrays::toString).reduce((a, b) -> a + "\n" + b)
        .orElse("");
    state.freeRef();
    return description;

Returns

    

And regressed input:

TrainingTester.java:622 executed in 0.01 seconds (0.000 gc):

    return RefArrays.stream(RefUtil.addRef(data)).flatMap(x -> {
      return RefArrays.stream(x);
    }).limit(1).map(x -> {
      String temp_18_0015 = x.prettyPrint();
      x.freeRef();
      return temp_18_0015;
    }).reduce((a, b) -> a + "\n" + b).orElse("");

Returns

    [
    	[ [ 3.4456059815226453E-4, 2.4459742499573967, 0.16196924879742608, -0.38368307566085585, 0.24191783162105165, 0.5063587927493667, -0.5827742764416299 ], [ -0.6171321422634516, -0.9386802200999725, -1.281313305811274, 2.332762720474017, -1.230002020845283, 0.39927633836110066, 0.41488581931618834 ], [ -0.07905101066317996, 0.6376720435930048, -0.28072607276883155, -1.6686220759419164, 1.3385888199460745, -1.6904652531877058, -1.192703946798335 ], [ -0.6521731741284852, -1.0550039847949164, -0.9046080693980535, -0.16225213240591405, -0.39170837769048694, 0.4680787875574363, 0.5200862600192611 ], [ -0.11695383245649982, 1.5894185629875555, 1.083686661128157, 1.430061694453335, 2.7157430414835257, -0.6087624457234583, 1.9861179850107686 ], [ 0.6154540024416097, -0.36048874299721645, -0.13583683461718024, -0.8610051841183874, 0.9057646541198984, 0.574563841775812, -0.07846688248762586 ], [ 0.9937695994129909, -0.36931425021158454, 0.9686542405877221, -1.0468074277429404, 0.20647226485261214, -2.6322896653435217, 0.4619009150514547 ], [ -1.2826146454748644, 0.7200187182684523, 2.0129059623589476, -0.553953958023987, 0.04436641089841622, 1.5582842228643556, 0.579905176698035 ], ... ],
    	[ [ 0.6651124564676943, 0.9009693593513532, 0.4178811987562431, 1.1395926305382857, -0.2273455855487831, 0.1749764246861688, -0.24050448516478137 ], [ -1.5033779456463705, -2.141762538659573, 0.6568453927140486, -0.7814558171751026, 0.8094123166182823, 0.36724024174452796, -0.08277530272119132 ], [ 0.17097856361453193, -0.022024596355049376, -2.905951464808091, -1.1460067020303366, -0.34515847397784966, 0.5250916888837779, -0.6323619187179211 ], [ 1.218348745977839, -0.0019656402106539277, -0.5212720221025348, 0.5631426132827216, -1.802251384411832, -2.4496239799180133, 0.9743108951681114 ], [ -1.0076448172270431, -0.8868760906943409, 2.2290456174961517, -1.0550180103892903, 0.24033308777469564, 1.2999059048154382, -0.3977508200239404 ], [ 0.7238501103704628, -0.05591334252276546, 0.7242130806317125, -1.1195661503206935, -1.0726579011282598, -0.9896490016109698, -0.6352164461651142 ], [ -0.5009910076897703, -0.828907095442569, 0.609834521388976, -0.09486563820256849, 1.191054892682112, 1.7676267465732869, -0.8775272340483586 ], [ -0.10387699965951867, -0.6831950033996185, -1.5003087817855758, 1.4151084045478461, -2.2549024297987255, -1.5619328829560133, -1.734897671952761 ], ... ],
    	[ [ -1.449759822969646, 0.3768036437763676, -0.5904345936592533, 0.1120858750380509, -0.9967899952395584, -1.4176564765805892, 1.2092549313958358 ], [ 0.007652301190848363, 0.11108925446860057, -0.5619337448910898, 0.25531288302285315, -1.3262529718128704, -0.5926534845534107, 0.7671772487047457 ], [ 2.8846961106904154, 2.1738288993489934, 0.8724238291407653, -0.8568794837223468, 2.1017454463117327, 2.723661860505911, -0.8078935029686375 ], [ 1.9747233837309581, 1.7858885833626703, -1.4503620845518004, 1.6630091809445327, 0.10433767498693909, -1.5104467747643335, 0.8898051611080816 ], [ 1.1311205915137381, -0.142904934201125, -1.6908161139657838, -0.2724373413118769, 0.23039078622556433, 1.590024180160555, -0.5761027789782259 ], [ 1.3023093665298162, -0.052338136829281436, 0.527908022833935, -0.40100173213451834, 0.9643096394966099, -0.08299510445602601, -0.757677219313766 ], [ -0.011878283858018588, -1.3527017526288128, -1.7953572313578536, -1.4244335746716796, 0.26924219544240335, 1.242787740547384, 0.4067777641011531 ], [ 1.1772612610414315, 1.2172025319165116, 1.6287046266230096, 0.9159817982906305, -0.9066395021517663, -0.9367414094204972, -1.6188439324929855 ], ... ],
    	[ [ 0.3458964287301847, 0.22741300501737488, 1.1613019210202793, 1.7162465360343224, -1.1294151226668774, -0.7413043647664115, -1.1961363578279804 ], [ -1.0379745138098186, -0.0815913942721891, -0.24834322030705566, -1.319247013160941, 0.03256330856567174, 0.13994546867451588, 1.3156380779960615 ], [ -0.6768758967104915, 0.5706043382191822, 0.2045296795737998, -1.9598122615401705, -1.603942552935238, 0.06760164525977064, -0.41271177655144103 ], [ 0.7581611188332252, -0.5233541786949684, 0.546094260112236, 0.733586950546949, 0.9061845775665576, 1.1488276868910032, 0.4813377858740451 ], [ 0.3326009595271829, 1.4285467162672039, 0.17150184151806602, -1.47278446928001, -0.1679775502226267, -2.1319767533272063, 1.3615877169691177 ], [ 0.47362515457761867, 0.06401383576960765, -1.614873789088428, 1.1320252879066774, -1.1054192426313298, -0.7302875390659468, -1.1623155707193968 ], [ 1.8390766315822342, 1.3774208419290273, 0.5643615393476589, 1.6031591058862222, -1.1088587059579056, -2.447848293333077, -1.1253610698640881 ], [ 1.9962444184388253, 1.4199915582519924, -2.2789167251865057, 0.10810105262973516, 1.221142764834344, -0.556551067786115, 0.38604781703817903 ], ... ],
    	[ [ -0.12061299328315106, -0.8657589825454313, -0.7626340388832908, 0.4311206801696192, -0.29194262404889837, -0.8887633936520238, 0.48163018960164883 ], [ 1.7333037302132341, 1.8086843877152772, 1.1292865590559136, 1.7674694147202878, 2.3441332815556994, -1.3222145424161251, -1.3579767764131498 ], [ -0.8314611937045073, -0.21105100091667003, 0.3099532896845644, 0.05965840073042346, 0.5653604542852191, 0.3763179535761498, 1.2698737433014142 ], [ -0.13646052481295592, -0.09970344737002532, -0.05073643776455875, -0.38223879488567225, -0.1444657606958352, 1.5641017739266352, 1.0360488746660268 ], [ -1.0683622021491301, 0.824433647942873, -0.41578324506447595, 0.17976344494157265, -0.33106994490325753, -2.7080449080105127, 0.1989952079715005 ], [ -0.720663405018855, -2.4747426767951097, 1.7553052877039497, 0.6161616182698177, 0.16412577480716772, 2.292953175640014, 0.01486965920392015 ], [ -0.45635748257207776, -0.7662680477491517, 1.496235092602369, 1.163314802688339, -1.9016643464748169, 2.0563173992260575, -1.8842541284940866 ], [ -0.9983407360145389, 1.5411133819038727, -2.324172347952318, 0.4893283189725869, -2.790896466426404, -1.9022137826156682, -1.0268096994553166 ], ... ],
    	[ [ -0.5083895113564699, -1.6739205062392062, 1.5280056580615933, -2.3239640195881477, 0.3102339885050455, -0.409696842205696, -0.6577882661627281 ], [ -1.1210251052049065, -0.4432333621218047, -1.0965366547605495, 1.01264054206995, 0.4194861268692327, -0.6840667410351731, 1.2298440321974888 ], [ -0.09701825343755718, 0.11606784519263069, -0.4535261727135389, 0.2249166720870212, 0.3593303048384222, -0.1638614581140831, 1.3686080356344068 ], [ 0.027487653893418805, 2.1670458075767076, -0.8692559507695801, -1.96306762992829, 0.36512679467640813, -0.7686953001063807, 1.2233617163546928 ], [ -0.08483441645002184, -1.866125565997895, -0.5840533686929184, 0.532852209013675, -1.2080726686615322, 0.09197438304203333, 0.24015267213511993 ], [ 0.06638575714204582, -1.3973557672901047, -0.8423938261969325, 0.6321532890614198, -0.852721873344757, 0.8196845003642041, 1.2760653277337688 ], [ 0.22581558500009521, 0.16878362661451832, -0.5194644124751749, -1.0257384288744886, -0.15786819187303897, -0.6894753420861883, -0.019755592749362227 ], [ 2.338451872932304, -1.2764953906167344, 2.510901725451251, -1.9563662024049098, 2.0540894838356256, 0.46483414184660626, 0.5366886412494619 ], ... ],
    	[ [ 1.1908903112552123, 1.2436828207655968, 1.3529563778851579, 0.3740179213347246, 1.8442596303037355, 1.1160567180142706, -0.2626370569880936 ], [ -0.45685842239201646, 0.12712273943226546, 1.160198421585421, -0.978330132408531, 0.637013738360053, 0.583177652770096, -1.6580402394962714 ], [ -0.37185368176099404, -0.7412261939394641, 0.8762715313003269, -1.0855790876527176, -0.8068317821639507, 0.9792695107194287, 1.5101920026163818 ], [ -1.6905769370085235, -0.5057579781233201, -2.4044123871035734, 0.30336759020199183, -0.49362744924199886, -2.167784971193281, 0.4290241012243053 ], [ 1.741291527117922, -1.3911402204804963, -0.5986705545949842, 0.5867093882509978, -1.7808459600854942, -0.24671030673310368, -0.054939512666784276 ], [ 1.1497303151772353, 2.0804051967209283, 0.4766231966487839, -0.26806991229166877, -1.1669329791896457, 2.265429944548278, -0.48882426753699637 ], [ -1.7297591504842902, 0.10302556479881217, 0.11404451411243675, -0.05910378033664604, -0.5499336132755313, -2.734077162474484, -0.6234399105462851 ], [ 0.13738332646806256, -0.4871335608713796, 0.17975856125407713, -0.5417152787423508, -3.013645471197795, 0.37027702666898604, 1.5655544812710356 ], ... ],
    	[ [ -0.3134432813930736, 0.6269223239912702, -0.9726166088478688, 0.3058754097450039, 0.4534836784922493, -0.9045443680331653, 0.43102070632021483 ], [ -0.5636096613167175, -0.23196356167538104, -1.494045213675487, 0.38643714377543403, -0.33017142581557496, 2.1686305398727304, 0.5170136492963875 ], [ -0.10972453768703762, -2.1679512364499107, 0.1429947284432658, 1.8961366114103995, -1.9545236237262047, 0.37273706644203725, 0.929757894398939 ], [ -2.5152019812565483, -0.6901490778997506, -1.6198642405044368, -1.8478497925160025, -1.4968721255999986, -1.5302768323597782, 0.2102026268579941 ], [ -1.9832778851561519, 0.016555831649333705, 2.840283467839482, 1.6937877696104486, 0.485117234595095, -1.5839669299864731, -0.7035741522722628 ], [ -0.06896324637030256, 0.8524053644969897, -0.33284183950540785, -0.3680746937921586, 2.2426551972215023, 1.10997877628477, -1.0030475436626864 ], [ -0.37667026137368703, 1.3025319385759355, -0.3736940425884255, -1.3644874961955562, -0.06486276951245713, -1.3117102224693395, -0.4776744762060437 ], [ -0.6637689006143662, -0.9602996857109491, -0.49264388997559666, -0.28187320931036197, 0.6098639534321031, 1.061631485201544, -0.0723450936197488 ], ... ],
    	...
    ]

To produce the following output:

TrainingTester.java:633 executed in 0.05 seconds (0.000 gc):

    Result[] array = ConstantResult.batchResultArray(pop(RefUtil.addRef(data)));
    @Nullable
    Result eval = layer.eval(array);
    assert eval != null;
    TensorList tensorList = Result.getData(eval);
    String temp_18_0016 = tensorList.stream().limit(1).map(x -> {
      String temp_18_0017 = x.prettyPrint();
      x.freeRef();
      return temp_18_0017;
    }).reduce((a, b) -> a + "\n" + b).orElse("");
    tensorList.freeRef();
    return temp_18_0016;

Returns

    [
    	[ [ -3.7144591542115877, 12.428066941222145, 5.506673097958486, 2.881153113079608, -10.166726051003344 ], [ 5.780878488603228, -7.328066969687426, 1.9238886329472138, 17.360560619665357, 2.3940336583258057 ], [ -7.379877580196613, 4.749644883969347, 1.6030644695452685, -0.9782619293257913, -7.850445515186346 ], [ -6.1453775644247495, 1.8678139616802085, -8.852483656022745, -14.654453492181748, 10.284057622505218 ], [ 6.029997122917154, -7.2462242797240215, 12.799584690413132, 6.22981688324681, -3.516161923283755 ], [ -16.712049540092206, -8.477318981426205, -5.4005501155991045, 4.022424487145344, 9.335109031114047 ], [ 1.239818509876039, -9.261725018001659, 12.278957887873235, -9.867745137750816, -0.7023502374341891 ], [ 1.8461102344903064, 14.840581262005017, -31.181616924657227, -20.798636742774576, -14.671067584428762 ], ... ],
    	[ [ -1.0040158156462782, 8.937123969173925, 0.29734485160076257, -13.19500144258102, -8.50995962741559 ], [ 11.878822228864797, -4.550118308081432, 9.028736208083853, -4.278035983852463, -3.6637187600148144 ], [ 8.67280150073571, 7.532792798148895, 24.80308113738211, 2.2731112929955666, 5.517561772480751 ], [ -7.689893332275389, 8.62311107802832, -4.804036572018972, -10.071213047429234, 1.6015856825200725 ], [ -0.7948467646113617, 5.069014235481673, 5.834109964443163, -7.96473504241807, -3.7309853205135233 ], [ 2.85080636162384, 4.279733444868989, 4.021182970495433, -4.123958934466467, -6.540978677782672 ], [ -1.5724187343460538, 4.234127569663306, -9.0124338493342, -5.783095296115972, 3.717511550817679 ], [ -14.214381585202856, -8.123103588864097, -3.24726660461971, -5.530506763176158, 16.734919972447692 ], ... ],
    	[ [ -0.4221917317324056, -4.75322020169238, 0.3687802029168813, -3.1124386347505437, -14.994158150384429 ], [ 2.7133545213816452, -10.990173127251516, -16.63556316377659, 14.861877604049294, 13.369051421112069 ], [ 13.105593792002878, 4.027891226125147, -10.169507116924114, 12.735402817138679, 3.1933555973777565 ], [ -2.616049413062069, -5.832858314709486, 6.070418686026134, -0.7235268804646302, -2.495081919095785 ], [ -21.749612160027812, 6.005085348422831, -0.8084603006156531, 11.09102801963506, 20.4380964600193 ], [ 13.319411597000318, 1.774216899941415, 9.380850125491222, -26.857495107450802, 8.027089873233551 ], [ -7.990856927962636, 13.40446888862843, 2.476862945060246, -4.056117152088682, -10.091638501939876 ], [ 11.914745197035963, 7.320431201125859, 10.536557800800333, -14.33614576544052, -1.340914245114778 ], ... ],
    	[ [ 9.813131971992123, 7.494737935033061, -4.789475275429828, -10.964495290815963, 4.039811745052323 ], [ -4.345689578864545, 0.3869756980742673, 6.606244767058388, 17.57013735383152, 17.013266625919343 ], [ 1.5664934089311477, -1.3232320728588978, -3.771303888053978, -10.409863797025979, -8.298737093357504 ], [ 6.531752764081125, -23.218473354538798, -12.570967477041021, 9.666353629735458, 0.2195197077480052 ], [ -7.48599652389025, -2.316630437935367, 6.64676727974056, -2.373934418401243, 2.600098707968407 ], [ 20.647247844277835, -7.271644900468343, -10.509354248340177, 3.1654440876310406, 8.663345871391638 ], [ 23.53869257613083, -6.879704931517976, -15.11417491988453, 13.36084188427885, 0.9954415345518016 ], [ -20.105852286022987, 1.9855937348519659, -14.028936969331813, 14.021925030096115, -10.363931356308187 ], ... ],
    	[ [ 2.753118554823097, -17.016170068559997, -9.67075091473622, 13.725922442358542, 7.180181790315152 ], [ -7.385991064772366, 3.867868360763313, 1.5167621782556564, 8.795487174297065, 4.0783736735570155 ], [ 3.19231568134, 8.851502714808575, 0.4570590867682236, -2.169870547998974, -3.4072546744414454 ], [ -10.048273481322633, -7.239799090376528, 18.94167300379159, 9.799857744624235, 6.514457084116988 ], [ 22.280014174922538, 10.859722482294707, -0.07513831013853269, -18.17912106109767, -11.998711175946243 ], [ 1.8872071831673987, 7.744185928549733, -25.189767261185104, 8.068447448449072, -6.700262312274556 ], [ 5.761476392906724, 3.4384370243063236, 2.506882557996666, 16.052976266312932, 13.989958753588 ], [ -3.775154164803217, -12.776674215393568, 11.575969317150626, 19.881046141527968, 19.013648429088317 ], ... ],
    	[ [ 9.000173546307169, -5.81208484606695, 12.476784645511007, -14.231556953403425, -0.6878331873199595 ], [ -3.9992675743259967, -14.493382511294664, 3.336891169103267, -3.9201569654724593, -4.5254428548256955 ], [ -17.360535882999564, -13.34420687453186, -1.5701901593527896, 22.236780327405153, -4.326616854982524 ], [ -1.4347588497357517, 8.882121468440541, 4.008110976987282, -13.192945357651691, -16.141043202452984 ], [ 19.340032210268202, 0.020458751252004595, -1.3871596177630219, -23.941081794889314, -6.553485150181779 ], [ -25.31384370252117, -3.0053754797736905, 10.741584671000528, 14.927749540102642, 8.136831854352359 ], [ 5.867062709245905, -2.023622782493706, -6.776726868037093, -10.672860434055977, 6.637351243354243 ], [ 15.185967834322103, -3.493046921108786, -2.0398295327479126, -5.214756372251143, -11.043072372195944 ], ... ],
    	[ [ 1.1406971007501923, 7.707622831187083, 1.0093683250170902, 8.292742070262163, 2.2503145891024317 ], [ 4.6432106685056596, -2.827315481865132, 20.636336466206842, -8.971933057672873, 1.0753010950484725 ], [ 7.013526221199626, -2.1063914070817598, -6.969561597305403, 14.201951636362075, -15.087482443496802 ], [ 3.5953219182050176, -15.182668289001432, -15.545743085903453, -10.578387809898343, -6.572377459080434 ], [ 2.019207589957317, -6.2179249667555725, -27.543669467655292, 14.458426378938716, 6.0914216993872765 ], [ -2.2872706721403513, -2.122396937976621, -7.7872117218235415, 16.70382676030069, -4.420199925511536 ], [ 3.992001496806797, -2.9126811166173434, 2.401086038063439, -8.97147100789729, -0.3926421718740846 ], [ -15.769020384529645, -2.5183507854975518, -21.134176370149124, 0.8942866083827113, 1.6912104225699633 ], ... ],
    	[ [ -10.366603582288482, 0.7482884301766053, 1.400835549142827, -9.87604574920749, -12.508995458501165 ], [ -10.392703155249988, 5.731470616927714, -5.403649203345378, -9.203591749763588, -10.168664918909528 ], [ -0.42803707356087, -11.111134876855214, 9.313378913625654, 3.808049719184253, -0.8894991268236835 ], [ 14.676512321470446, 12.463982254888583, -0.7503300129907031, -7.684652451213375, -5.421158740230091 ], [ 25.317665534126107, 5.474154875315151, -22.418797274152087, 0.13781952305741782, 13.97387339686101 ], [ -4.408105800242598, 18.93655045000952, 11.822739548341438, 10.158840211746643, 0.39072853711069233 ], [ -0.3857665089914152, 0.9841352191960774, 14.074831919256432, 0.00869286978095647, -6.296939999352336 ], [ -10.883151397774732, 4.854645322033261, -18.96006165084794, 27.7119443742671, -1.4451980965792044 ], ... ],
    	...
    ]

Conjugate Gradient Descent

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

TrainingTester.java:452 executed in 30.08 seconds (0.510 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: 12791611819792
Reset training subject: 12791804140282
Constructing line search parameters: GD
F(0.0) = LineSearchPoint{point=PointSample{avg=216.40982553264382}, derivative=-0.03167844413034469}
New Minimum: 216.40982553264382 > 216.40982553264067
F(1.0E-10) = LineSearchPoint{point=PointSample{avg=216.40982553264067}, derivative=-0.03167844413034441}, evalInputDelta = -3.154809746774845E-12
New Minimum: 216.40982553264067 > 216.40982553262165
F(7.000000000000001E-10) = LineSearchPoint{point=PointSample{avg=216.40982553262165}, derivative=-0.03167844413034271}, evalInputDelta = -2.2168933355715126E-11
New Minimum: 216.40982553262165 > 216.40982553248858
F(4.900000000000001E-9) = LineSearchPoint{point=PointSample{avg=216.40982553248858}, derivative=-0.03167844413033083}, evalInputDelta = -1.552393769088667E-10
New Minimum: 216.40982553248858 > 216.40982553155726
F(3.430000000000001E-8) = LineSearchPoint{point=PointSample{avg=216.40982553155726}, derivative=-0.031678444130247674}, evalInputDelta = -1.0865619515243452E-9
New Minimum: 216.40982553155726 > 216.40982552503783
F(2.4010000000000004E-7) = LineSearchPoint{point=PointSample{avg=216.40982552503783}, derivative=-0.031678444129665584}, evalInputDelta = -7.605990504089277E-9
New Minimum: 216.40982552503783 > 216.40982547940186
F(1.6807000000000003E-6) = LineSearchPoint{point=PointSample{avg=216.40982547940186}, derivative=-0.03167844412559094}, evalInputDelta = -5.324196195033437E-8
New Minimum: 216.40982547940186 > 216.40982515995012
F(1.1764900000000001E-5) = LineSearchPoint{point=PointSample{avg=216.40982515995012}, derivative=-0.03167844409706841}, evalInputDelta = -3.7269370523063117E-7
New Minimum: 216.40982515995012 > 216.40982292378774
F(8.235430000000001E-5) = LineSearchPoint{point=PointSample{avg=216.40982292378774}, derivative=-0.031678443897410716}, evalInputDelta = -2.6088560787229653E-6
New Minimum: 216.40982292378774 > 216.40980727065164
F(5.764801000000001E-4) = LineSearchPoint{point=PointSample{avg=216.40980727065164}, derivative=-0.0316784424998069}, evalInputDelta = -1.8261992181578535E-5
New Minimum: 216.40980727065164 > 216.40969769871836
F(0.004035360700000001) = LineSearchPoint{point=PointSample{avg=216.40969769871836}, derivative=-0.031678432716580135}, evalInputDelta = -1.2783392546111827E-4
New Minimum: 216.40969769871836 > 216.4089306961329
F(0.028247524900000005) = LineSearchPoint{point=PointSample{avg=216.4089306961329}, derivative=-0.03167836423399276}, evalInputDelta = -8.948365109233691E-4
New Minimum: 216.4089306961329 > 216.40356172446172
F(0.19773267430000002) = LineSearchPoint{point=PointSample{avg=216.40356172446172}, derivative=-0.0316778848558812}, evalInputDelta = -0.006263808182097819
New Minimum: 216.40356172446172 > 216.36598119769238
F(1.3841287201) = LineSearchPoint{point=PointSample{avg=216.36598119769238}, derivative=-0.03167452920910025}, evalInputDelta = -0.04384433495144435
New Minimum: 216.36598119769238 > 216.1030289818374
F(9.688901040700001) = LineSearchPoint{point=PointSample{avg=216.1030289818374}, derivative=-0.0316510396816336}, evalInputDelta = -0.30679655080641055
New Minimum: 216.1030289818374 > 214.26782557582317
F(67.8223072849) = LineSearchPoint{point=PointSample{avg=214.26782557582317}, derivative=-0.03148661298936707}, evalInputDelta = -2.141999956820655
New Minimum: 214.26782557582317 > 201.6890448772932
F(474.7561509943) = LineSearchPoint{point=PointSample{avg=201.6890448772932}, derivative=-0.03033562614350136}, evalInputDelta = -14.720780655350609
New Minimum: 201.6890448772932 > 126.75209402250233
F(3323.2930569601003) = LineSearchPoint{point=PointSample{avg=126.75209402250233}, derivative=-0.02227871822244142}, evalInputDelta = -89.65773151014149
F(23263.0513987207) = LineSearchPoint{point=PointSample{avg=244.80462574997458}, derivative=0.03411963722497821}, evalInputDelta = 28.394800217330754
F(1789.4654922092848) = LineSearchPoint{point=PointSample{avg=164.2509350698557}, derivative=-0.026617053256858314}, evalInputDelta = -52.15889046278812
New Minimum: 126.75209402250233 > 41.49846281755127
F(12526.258445464993) = LineSearchPoint{point=PointSample{avg=41.49846281755127}, derivative=0.0037512919840599463}, evalInputDelta = -174.91136271509254
41.49846281755127 <= 216.40982553264382
New Minimum: 41.49846281755127 > 39.010836213784124
F(11199.981197872637) = LineSearchPoint{point=PointSample{avg=39.010836213784124}, derivative=-2.15485181781494E-18}, evalInputDelta = -177.3989893188597
Left bracket at 11199.981197872637
Converged to left
Fitness changed from 216.40982553264382 to 39.010836213784124
Iteration 1 complete. Error: 39.010836213784124 Total: 8.3208; Orientation: 0.1837; Line Search: 7.5591
F(0.0) = LineSearchPoint{point=PointSample{avg=39.010836213784124}, derivative=-0.0032831228195170305}
New Minimum: 39.010836213784124 > 16.88821245569874
F(11199.981197872637) = LineSearchPoint{point=PointSample{avg=16.88821245569874}, derivative=-6.673523406176014E-4}, evalInputDelta = -22.122623758085386
F(78399.86838510846) = LineSearchPoint{point=PointSample{avg=499.38065372128847}, derivative=0.01502727053277897}, evalInputDelta = 460.36981750750437
F(6030.759106546805) = LineSearchPoint{point=PointSample{avg=23.45825073567837}, derivative=-0.0018746310231865684}, evalInputDelta = -15.552585478105755
F(42215.31374582763) = LineSearchPoint{point=PointSample{avg=108.52250713858822}, derivative=0.0065763197547962}, evalInputDelta = 69.5116709248041
F(3247.3318266021256) = LineSearchPoint{point=PointSample{avg=29.58086551686597}, derivative=-0.0025247041599544737}, evalInputDelta = -9.429970696918154
F(22731.322786214878) = LineSearchPoint{point=PointSample{avg=24.720619408171693}, derivative=0.0020258077974208634}, evalInputDelta = -14.290216805612431
24.720619408171693 <= 39.010836213784124
New Minimum: 16.88821245569874 > 15.93476219933096
F(14057.393087626137) = LineSearchPoint{point=PointSample{avg=15.93476219933096}, derivative=-7.115076756936123E-20}, evalInputDelta = -23.076074014453162
Left bracket at 14057.393087626137
Converged to left
Fitness changed from 39.010836213784124 to 15.93476219933096
Iteration 2 complete. Error: 15.93476219933096 Total: 3.6365; Orientation: 0.1930; Line Search: 3.2358
F(0.0) = LineSearchPoint{point=PointSample{avg=15.93476219933096}, derivative=-0.0011703840958694183}
New Minimum: 15.93476219933096 > 8.96568563079165
F(14057.393087626137) = LineSearchPoint{point=PointSample{avg=8.96568563079165}, derivative=1.788664616824991E-4}, evalInputDelta = -6.969076568539309
8.96568563079165 <= 15.93476219933096
New Minimum: 8.96568563079165 > 8.799022314530955
F(12193.84287599915) = LineSearchPoint{point=PointSample{avg=8.799022314530955}, derivative=1.6771252355635147E-19}, evalInputDelta = -7.135739884800005
Right bracket at 12193.84287599915
Converged to right
Fitness changed from 15.93476219933096 to 8.799022314530955
Iteration 3 complete. Error: 8.799022314530955 Total: 1.5623; Orientation: 0.1792; Line Search: 1.2032
F(0.0) = LineSearchPoint{point=PointSample{avg=8.799022314530955}, derivative=-4.3769743498062234E-4}
New Minimum: 8.799022314530955 > 5.67804863180225
F(12193.84287599915) = LineSearchPoint{point=PointSample{avg=5.67804863180225}, derivative=-7.419593849750295E-5}, evalInputDelta = -3.120973682728705
F(85356.90013199404) = LineSearchPoint{point=PointSample{avg=80.03428933485004}, derivative=0.0021068130404012127}, evalInputDelta = 71.23526702031909
F(6565.915394768773) = LineSearchPoint{point=PointSample{avg=6.567716468804729}, derivative=-2.419658599512504E-4}, evalInputDelta = -2.231305845726226
F(45961.40776338141) = LineSearchPoint{point=PointSample{avg=20.168177590728916}, derivative=9.324235902249815E-4}, evalInputDelta = 11.369155276197962
F(3535.492904875493) = LineSearchPoint{point=PointSample{avg=7.43785587572996}, derivative=-3.323035099648067E-4}, evalInputDelta = -1.3611664388009945
F(24748.45033412845) = LineSearchPoint{point=PointSample{avg=7.095866199242311}, derivative=3.000600401300874E-4}, evalInputDelta = -1.7031561152886443
7.095866199242311 <= 8.799022314530955
New Minimum: 5.67804863180225 > 5.585713991663975
F(14682.783430107329) = LineSearchPoint{point=PointSample{avg=5.585713991663975}, derivative=5.082197683525802E-21}, evalInputDelta = -3.21330832286698
Right bracket at 14682.783430107329
Converged to right
Fitness changed from 8.799022314530955 to 5.585713991663975
Iteration 4 complete. Error: 5.585713991663975 Total: 2.9344; Orientation: 0.1744; Line Search: 2.5800
F(0.0) = LineSearchPoint{point=PointSample{avg=5.585713991663975}, derivative=-2.76693944010699E-4}
New Minimum: 5.585713991663975 > 3.9185032855229736
F(14682.783430107329) = LineSearchPoint{point=PointSample{avg=3.9185032855229736}, derivative=4.959658007051396E-5}, evalInputDelta = -1.6672107061410015
3.9185032855229736 <= 5.585713991663975
New Minimum: 3.9185032855229736 > 3.8631584122390956
F(12450.981430647233) = LineSearchPoint{point=PointSample{avg=3.8631584122390956}, derivative=3.3881317890172014E-21}, evalInputDelta = -1.7225555794248795
Right bracket at 12450.981430647233
Converged to right
Fitness changed from 5.585713991663975 to 3.8631584122390956
Iteration 5 complete. Error: 3.8631584122390956 Total: 1.5584; Orientation: 0.1803; Line Search: 1.1939
F(0.0) = LineSearchPoint{point=PointSample{avg=3.8631584122390956}, derivative=-1.3985007031768363E-4}
New Minimum: 3.8631584122390956 > 2.850814494548981
F(12450.981430647233) = LineSearchPoint{point=PointSample{avg=2.850814494548981}, derivative=-2.2762639905833322E-5}, evalInputDelta = -1.0123439176901146
F(87156.87001453064) = LineSearchPoint{point=PointSample{avg=27.391672846631415}, derivative=6.797619425652686E-4}, evalInputDelta = 23.52851443439232
F(6704.374616502357) = LineSearchPoint{point=PointSample{avg=3.136896765091027}, derivative=-7.680299240361041E-5}, evalInputDelta = -0.7262616471480685
F(46930.6223155165) = LineSearchPoint{point=PointSample{avg=7.655842687249559}, derivative=3.014794750808292E-4}, evalInputDelta = 3.7926842750104637
F(3610.047870424346) = LineSearchPoint{point=PointSample{avg=3.419570686230095}, derivative=-1.0590164374856727E-4}, evalInputDelta = -0.4435877260090004
F(25270.33509297042) = LineSearchPoint{point=PointSample{avg=3.331708676018101}, derivative=9.778891566613092E-5}, evalInputDelta = -0.5314497362209947
3.331708676018101 <= 3.8631584122390956
New Minimum: 2.850814494548981 > 2.8232653212587357
F(14871.541910821168) = LineSearchPoint{point=PointSample{avg=2.8232653212587357}, derivative=2.710505431213761E-20}, evalInputDelta = -1.0398930909803599
Right bracket at 14871.541910821168
Converged to right
Fitness changed from 3.8631584122390956 to 2.8232653212587357
Iteration 6 complete. Error: 2.8232653212587357 Total: 3.1390; Orientation: 0.1732; Line Search: 2.7838
F(0.0) = LineSearchPoint{point=PointSample{avg=2.8232653212587357}, derivative=-1.0792758264313582E-4}
New Minimum: 2.8232653212587357 > 2.1712796750357124
F(14871.541910821168) = LineSearchPoint{point=PointSample{avg=2.1712796750357124}, derivative=2.0245262930394986E-5}, evalInputDelta = -0.6519856462230234
2.1712796750357124 <= 2.8232653212587357
New Minimum: 2.1712796750357124 > 2.147501593039035
F(12522.539867387253) = LineSearchPoint{point=PointSample{avg=2.147501593039035}, derivative=-1.588186776101813E-20}, evalInputDelta = -0.6757637282197009
Left bracket at 12522.539867387253
Converged to left
Fitness changed from 2.8232653212587357 to 2.147501593039035
Iteration 7 complete. Error: 2.147501593039035 Total: 1.5357; Orientation: 0.1784; Line Search: 1.1826
F(0.0) = LineSearchPoint{point=PointSample{avg=2.147501593039035}, derivative=-6.217769111519197E-5}
New Minimum: 2.147501593039035 > 1.6953190855379558
F(12522.539867387253) = LineSearchPoint{point=PointSample{avg=1.6953190855379558}, derivative=-1.0041285592354244E-5}, evalInputDelta = -0.452182507501079
F(87657.77907171077) = LineSearchPoint{point=PointSample{avg=12.692708591273568}, derivative=3.0277714754467207E-4}, evalInputDelta = 10.545206998234534
F(6742.90608243929) = LineSearchPoint{point=PointSample{avg=1.822891576865424}, derivative=-3.410424198751012E-5}, evalInputDelta = -0.32461001617361096
F(47200.34257707503) = LineSearchPoint{point=PointSample{avg=3.85046072826377}, derivative=1.3433645277858094E-4}, evalInputDelta = 1.7029591352247353
F(3630.7955828519257) = LineSearchPoint{point=PointSample{avg=1.9491895177713507}, derivative=-4.706121850797865E-5}, evalInputDelta = -0.19831207526768413
F(25415.56907996348) = LineSearchPoint{point=PointSample{avg=1.9118983275472612}, derivative=4.363761713530115E-5}, evalInputDelta = -0.23560326549177368
1.9118983275472612 <= 2.147501593039035
New Minimum: 1.6953190855379558 > 1.6832103169311456
F(14934.336344131276) = LineSearchPoint{point=PointSample{avg=1.6832103169311456}, derivative=2.6469779601696886E-20}, evalInputDelta = -0.46429127610788923
Right bracket at 14934.336344131276
Converged to right
Fitness changed from 2.147501593039035 to 1.6832103169311456
Iteration 8 complete. Error: 1.6832103169311456 Total: 2.8995; Orientation: 0.1757; Line Search: 2.5504
F(0.0) = LineSearchPoint{point=PointSample{avg=1.6832103169311456}, derivative=-5.291827042905103E-5}
New Minimum: 1.6832103169311456 > 1.362876990728878
F(14934.336344131276) = LineSearchPoint{point=PointSample{avg=1.362876990728878}, derivative=1.0019367013346389E-5}, evalInputDelta = -0.3203333262022676
1.362876990728878 <= 1.6832103169311456
New Minimum: 1.362876990728878 > 1.3509665984203005
F(12556.862339493626) = LineSearchPoint{point=PointSample{avg=1.3509665984203005}, derivative=-9.105604182983729E-21}, evalInputDelta = -0.3322437185108451
Left bracket at 12556.862339493626
Converged to left
Fitness changed from 1.6832103169311456 to 1.3509665984203005
Iteration 9 complete. Error: 1.3509665984203005 Total: 1.5767; Orientation: 0.1851; Line Search: 1.2196
F(0.0) = LineSearchPoint{point=PointSample{avg=1.3509665984203005}, derivative=-3.282380017210141E-5}
New Minimum: 1.3509665984203005 > 1.1115610788836765
F(12556.862339493626) = LineSearchPoint{point=PointSample{avg=1.1115610788836765}, derivative=-5.307623596661239E-6}, evalInputDelta = -0.23940551953662403
F(87898.03637645538) = LineSearchPoint{point=PointSample{avg=6.930981630370962}, derivative=1.597894358559798E-4}, evalInputDelta = 5.580015031950661
F(6761.38741357349) = LineSearchPoint{point=PointSample{avg=1.1791218886774615}, derivative=-1.8007397400710554E-5}, evalInputDelta = -0.17184470974283905
F(47329.711895014436) = LineSearchPoint{point=PointSample{avg=2.2518218536916956}, derivative=7.089101922763463E-5}, evalInputDelta = 0.9008552552713951
F(3640.7470688472645) = LineSearchPoint{point=PointSample{avg=1.245986498952433}, derivative=-2.4845737141352492E-5}, evalInputDelta = -0.10498009946786757
F(25485.22948193085) = LineSearchPoint{point=PointSample{avg=1.2260742036250627}, derivative=2.3022641043141073E-5}, evalInputDelta = -0.12489239479523784
1.2260742036250627 <= 1.3509665984203005
New Minimum: 1.1115610788836765 > 1.1051332651655894
F(14978.96842935677) = LineSearchPoint{point=PointSample{avg=1.1051332651655894}, derivative=-1.5881867761018131E-22}, evalInputDelta = -0.24583333325471113
Left bracket at 14978.96842935677
Converged to left
Fitness changed from 1.3509665984203005 to 1.1051332651655894
Iteration 10 complete. Error: 1.1051332651655894 Total: 2.9147; Orientation: 0.1894; Line Search: 2.5530
Final threshold in iteration 10: 1.1051332651655894 (> 0.0) after 30.079s (< 30.000s)

Returns

    1.1051332651655894

This training apply resulted in the following configuration:

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

    RefList<double[]> state = network.state();
    assert state != null;
    String description = state.stream().map(RefArrays::toString).reduce((a, b) -> a + "\n" + b)
        .orElse("");
    state.freeRef();
    return description;

Returns

    

And regressed input:

TrainingTester.java:622 executed in 0.01 seconds (0.000 gc):

    return RefArrays.stream(RefUtil.addRef(data)).flatMap(x -> {
      return RefArrays.stream(x);
    }).limit(1).map(x -> {
      String temp_18_0015 = x.prettyPrint();
      x.freeRef();
      return temp_18_0015;
    }).reduce((a, b) -> a + "\n" + b).orElse("");

Returns

    [
    	[ [ -0.09889206034124243, 2.0313764606974334, 0.22353882910567893, -0.37134247244556107, 0.1425342348942472, 0.4009832590458092, -0.5426530120658652 ], [ -0.4873635398014547, -0.8559023400934859, -1.1756353585410275, 2.216825498321971, -1.314540152857611, 0.1567601752649634, 0.47175899794396464 ], [ 0.040282451690817664, 0.8406880425233684, -0.28952971131544825, -1.75430243516739, 1.1032472731039848, -1.4195152898576169, -1.0918399047492013 ], [ -0.7458336396313381, -0.8405254435274547, -0.8350996632939496, 0.0997695589734619, -0.5338372222543069, 0.5117588197005273, 0.5055445774560584 ], [ 0.04479755748766591, 1.6392358164363459, 0.9323432735582597, 1.788294438493879, 2.587298899661209, -0.5820267437773731, 1.916652834054785 ], [ 0.5264353793617375, -0.7031244051427037, 0.04128949490102285, -0.8094391024924642, 0.8515814654239511, 0.37792981981777124, 0.3566721513653177 ], [ 0.9472615000898172, -0.04283757465191808, 0.8561026485632448, -1.1515518094522998, 0.18117214017580588, -2.4008133979449737, 0.36002657482617045 ], [ -1.4519600356534974, 0.41912073186479476, 1.9401338597454763, -0.5792164059619012, -0.25261775109174317, 1.3799612187655101, 0.6436978346991312 ], ... ],
    	[ [ 0.7257134730393099, 1.177018323285059, 0.447724330555263, 0.7784223409764668, 0.07033957852716044, 0.3586003071814924, -0.3723405968789333 ], [ -1.3222461431212946, -2.0137652770182437, 0.7076399096256522, -0.9529270214689002, 0.909653811060192, 0.4421820754083676, 0.10345710793494334 ], [ 0.48617706471603195, -0.31621444955738975, -2.7535847812584033, -1.0883706255234626, -0.3849341887086711, 0.6724426338835495, -0.830991516065814 ], [ 1.0202807475885525, -0.03374621032253441, -0.8338222209527163, 0.5888467853204171, -1.9051939652002778, -2.2832319276380613, 0.5965327706478556 ], [ -0.9520460154089095, -0.8608682339876675, 2.1473579655477746, -0.9558138803676209, 0.2682522471623649, 1.3705818787729314, -0.6045576998278576 ], [ 0.5744213217522047, -0.014246384999856247, 0.7355389698254003, -0.9845271560793598, -1.0574703652271686, -1.2433641512815439, -0.5549404859828801 ], [ -0.46153885419514384, -0.9080424959146364, 0.6040675583070299, -0.1860723368352985, 1.040445626464143, 1.8078671841119631, -0.9501697263356708 ], [ -0.15713535318361438, -0.5374307389138683, -1.4168785389865042, 1.4005690972291918, -2.0253226479628026, -1.5588611251201407, -1.782969317293972 ], ... ],
    	[ [ -1.002232536392881, 0.24026844423691307, -0.7500080947197276, 0.456705649795383, -1.0022018255532519, -1.7521021944145663, 1.142640118386117 ], [ 0.08079510088445396, 0.2587972115307485, -0.5106228278396525, 0.39427725216852566, -1.4625744501206535, -0.45042963189470636, 0.9056671190976461 ], [ 2.83037783692284, 2.1223033680535144, 0.9768027171960336, -0.8156378502500572, 1.9295362695137181, 2.4940942889586206, -0.7449833337363623 ], [ 1.805560434971249, 1.6661190210557184, -1.3572960740035809, 1.5815803946966545, 0.023483736688048984, -1.492668515825891, 1.0371751230558675 ], [ 1.0083811255557786, -0.10854931451981928, -1.532689294721924, -0.4063875323727365, 0.28139226045249777, 1.3814856743911368, -0.6922426198256737 ], [ 1.262710294352596, 0.1275680439699986, 0.7051648466389968, -0.293759598785635, 0.9696386211903996, -0.2759530727874914, -0.6153324470306207 ], [ 0.1933933386543237, -1.3892158868783748, -1.8968553188052155, -1.6313400861135954, 0.38398002187076763, 1.1192205861574653, 0.2770581419413748 ], [ 1.0089813929548432, 1.0227774981248463, 1.3353967654711962, 1.0759097848495738, -0.9415958113730316, -0.7780011098337882, -1.4995223142683678 ], ... ],
    	[ [ 0.2534161941497231, 0.42643810450527736, 1.047403627166016, 1.8586854960488306, -1.0090768018388094, -0.6996724225613523, -0.7777164166973397 ], [ -0.9086001906125315, 0.022917210200418415, -0.30804763132803975, -1.353277082071325, 0.023831984797039407, 0.43832641460107574, 1.197068594163885 ], [ -0.8503920603320104, 0.7005983614855397, 0.23321727664398328, -1.7222463374623573, -1.5410546282617699, -0.021063348226325287, -0.3895833257037043 ], [ 0.70149978248765, -0.4525939682017894, 0.5483204862302891, 0.6288444363077043, 1.1752794763875176, 1.0224463179139822, 0.2243227215101945 ], [ 0.21267085132595745, 1.1782994307625314, 0.19891856467102503, -1.5733698207616154, -0.17750872086657893, -1.8422855013922332, 1.4314978672427319 ], [ 0.10783844185316621, 0.15355412439488805, -1.6376598429994835, 1.229597939230389, -1.0725406907199013, -0.7525259512217733, -1.0034907060932445 ], [ 1.795751358629344, 1.4383954512331314, 0.49512499771966334, 1.740301101014812, -1.0563436924310945, -2.446995234812683, -1.1335053789561744 ], [ 1.6206977588824234, 1.283630317916246, -1.8498505395240623, -0.0517869581330626, 1.0038722757978216, -0.5665928524576523, 0.5972695229772251 ], ... ],
    	[ [ 0.04798572787405127, -0.603103792547629, -0.5980735381362758, 0.9219726379851819, -0.29110274725371094, -1.0874176317306163, 0.37588351225561123 ], [ 1.8128549277830737, 1.4216624580305777, 1.287085460572591, 1.577952011043244, 2.237266254011417, -1.2846732591829937, -1.3999408579805537 ], [ -0.7934271600998682, -0.038319123437284636, 0.6498604165344676, 0.4261781686444604, 0.3640438097870524, 0.36256231457558097, 1.2853564737769763 ], [ -0.0738799100786966, -0.26953594286706073, 0.10117213817054241, -0.4957345805778167, -0.3309295873525247, 1.3969496664767211, 0.900684840342091 ], [ -0.9894038366263064, 0.7449903982610935, -0.07834659279982428, -0.01436224581110766, -0.502716038699579, -2.557517755815741, 0.04186040645765189 ], [ -0.6140902728025799, -2.5181707423081017, 1.6104419895360014, 0.47054511707756425, -0.06871776043277282, 2.0991536087741127, 0.04635284151623012 ], [ 0.011984321692361057, -0.5844028729071709, 1.5074687539399987, 0.9766810975882791, -2.0297362707261746, 2.3278243428642242, -2.1919738493361645 ], [ -1.1128418232153476, 1.401311059077032, -2.1760236845924545, 0.5357959770645361, -2.579014723524923, -1.8426756123889618, -1.1186702716114907 ], ... ],
    	[ [ -0.7179706404909827, -1.82868285063191, 1.5483011616856015, -1.9810147183151265, 0.31511326048912824, -0.6399515458756093, -0.44712336877110864 ], [ -0.8867903301145957, -0.5821468812303158, -0.8665378854176369, 0.81167518275135, 0.34819646333783744, -0.6418002927009492, 1.3126131322873749 ], [ -0.4182136872635794, 0.18630100834096383, -0.39895250515715763, 0.25844993174508474, 0.2770114626437777, -0.0414061203567823, 1.390796892424278 ], [ 0.1065252410017887, 2.2497914589757584, -0.9505421432934493, -2.2187919459841736, 0.41727730739576707, -0.7460485648369456, 1.1893805103233188 ], [ -0.15559041007232574, -1.8237992611886082, -0.6051526747561784, 0.6875637539208452, -1.0744822014528133, 0.20111109577769526, 0.3104225092792167 ], [ -0.10145265795884156, -1.310584210988925, -0.9488367493379115, 0.7674459667817501, -0.7661255783662606, 0.6926772793557067, 1.8854492099796227 ], [ 0.17183131251146788, -0.14761830028760617, -0.44360651244460886, -0.9366688985563077, -0.2434273808645176, -0.6673788233247212, -0.04521581493259419 ], [ 2.0520321082466846, -1.3269955587895967, 2.4507417507366203, -1.8818256864327298, 2.006970475879732, 0.3778660508830484, 0.5822159602535778 ], ... ],
    	[ [ 1.0161556546297432, 1.2288039135277122, 1.111690537829551, 0.26568996708755577, 1.5965254971550091, 0.8693990059777018, -0.15294386981248873 ], [ -0.3848301992775749, -0.15156268306955784, 1.2425041399580032, -1.0137682288649073, 0.6540634779509923, 0.7208728285419331, -1.4217386459737562 ], [ -0.5652158532252886, -0.5858731301693431, 0.9099421809018526, -1.1434370479306073, -0.8292074973083661, 0.9518894752838712, 1.4987760393733256 ], [ -1.5832269314528669, -0.5001634331050754, -2.568159345633337, 0.169509920374752, -0.5295973297750295, -1.9391636450822312, 0.2267169435719461 ], [ 1.8681262990528391, -1.458949938047554, -0.5939687420485735, 0.7075056095844945, -1.8889267944736996, -0.3296784455859588, -0.21816162400731098 ], [ 1.1161814422765823, 2.104788415505543, 0.4257288151853043, -0.18621541787505988, -1.1810600278564611, 2.2168488956246084, -0.4685635264672951 ], [ -1.4433046455078882, 0.3535990265000713, 0.24418162820523362, -0.2901331412335801, -0.5292191529811902, -2.7343612975161173, -1.027261066772676 ], [ 0.07898364657206935, -0.49853886421663596, 0.17629762758998352, -0.6584557389541904, -2.916285650236344, 0.4092147862730672, 1.7391456601151654 ], ... ],
    	[ [ -0.36927000985283387, 0.6770788704536822, -1.1332661290230603, 0.2556425405508893, 0.4490201393724936, -0.7894730775123617, 0.6220467971779915 ], [ -0.49256466708356705, -0.08300213817050664, -1.4437150235839655, 0.4391068891786642, -0.25952521201797796, 1.9954941236461752, 0.4285434303687162 ], [ -0.05760438339665898, -2.4083265727114234, 0.19086826162578668, 1.7069028261268575, -2.055262668904481, 0.2283716150295695, 0.8692675767730634 ], [ -2.4161870823944835, -0.6001324362274039, -1.5775211181236606, -1.8224936790524657, -1.4656041596535188, -1.4335319185882174, 0.08490456978132827 ], [ -1.8543648155999093, -0.020584254338927715, 2.841059434573233, 1.6472597500705677, 0.3311461486844048, -1.76477247758998, -0.6488668568256575 ], [ -0.0453114724304501, 0.7625925420207421, -0.3500522893414306, -0.17642580298963778, 2.1913298320605317, 0.9128326701531406, -0.9187714790046231 ], [ -0.4532252483621315, 1.1626819619082402, -0.14522029723419694, -1.4511469191554247, -0.2995981052822777, -1.392457289091307, -0.1224670368334461 ], [ -0.5452801704929134, -0.8041221809539201, -0.4187808763945822, -0.6126339906887913, 0.6008182728779942, 0.8252303270274757, -0.16171083817936238 ], ... ],
    	...
    ]

To produce the following output:

TrainingTester.java:633 executed in 0.04 seconds (0.000 gc):

    Result[] array = ConstantResult.batchResultArray(pop(RefUtil.addRef(data)));
    @Nullable
    Result eval = layer.eval(array);
    assert eval != null;
    TensorList tensorList = Result.getData(eval);
    String temp_18_0016 = tensorList.stream().limit(1).map(x -> {
      String temp_18_0017 = x.prettyPrint();
      x.freeRef();
      return temp_18_0017;
    }).reduce((a, b) -> a + "\n" + b).orElse("");
    tensorList.freeRef();
    return temp_18_0016;

Returns

    [
    	[ [ -4.075044201810026, 10.108563843660546, 6.347571736320061, 2.8247399831069235, -9.18037529437377 ], [ 4.564216049948572, -6.2055533847111874, 2.6934250449635133, 16.892234176667394, 3.630379021250293 ], [ -6.821445969017946, 6.875985946914053, 0.33881045250215375, 0.2668626632122697, -7.307695079398859 ], [ -5.43032938026071, 1.9353317139207917, -9.66168738300225, -14.975776656554551, 9.661861503129368 ], [ 5.8201463168676435, -6.816863844742246, 12.624679988804752, 5.893973614116654, -3.6608980986455935 ], [ -17.161393826082254, -9.683524114550279, -5.550141783795781, 4.382428346611791, 8.583073985185052 ], [ 1.6195240883378326, -7.694745263205956, 12.14637153445463, -9.699675917446209, -1.8435198216437338 ], [ 1.5101056848615417, 13.335779749332138, -30.517702820097323, -20.392008470218208, -14.981762298701716 ], ... ],
    	[ [ -0.898226353394039, 10.573756335660038, -0.1924961903796321, -13.186500991006417, -6.914082628872828 ], [ 11.296693799175884, -4.596886200082882, 9.186005299141959, -4.398442148898229, -3.4224823218368443 ], [ 9.204493740176234, 8.184782287066438, 24.08400572112164, 3.124882245855473, 4.669497163718856 ], [ -8.074816600067079, 9.429022356255993, -5.121006103181832, -10.21991248764852, 1.1497644977738202 ], [ -1.2113311743571655, 4.389371523973461, 5.304555778439929, -7.551161250698506, -4.276875427945928 ], [ 2.256397231769321, 5.108518706207977, 4.451807480946887, -3.5442645894350515, -6.412528033628259 ], [ -1.6851452801542046, 5.466409337497205, -9.538331718986408, -4.927519075618534, 3.299938543083498 ], [ -13.73763427080882, -7.262778512285597, -3.3407744491284284, -5.8262739099618805, 17.495251219363556 ], ... ],
    	[ [ -0.1104152261058778, -4.633792007073144, 1.1165588381310942, -2.9993340272699607, -14.635995325843131 ], [ 3.2795105482644313, -11.204359738048657, -16.419935374321593, 15.33824651558846, 14.217476949140401 ], [ 12.75881454113741, 3.3560698195235514, -9.789758342110728, 11.953078489061456, 2.983782178792161 ], [ -1.911868964846568, -5.833011868078042, 5.473423113589032, -0.45691163632174736, -2.2746784136444504 ], [ -21.198936409002744, 5.348205496899032, -1.3937525487516458, 9.719060330656973, 19.368544326271806 ], [ 13.633026478221337, 0.577346520366898, 8.520240347987967, -26.528965335849456, 8.18352056254134 ], [ -7.099255278689563, 13.610510772225929, 2.4311117899957484, -4.864105214534349, -10.462583640946603 ], [ 11.853498456170604, 5.556078541030772, 10.857725039451328, -13.818194318513848, -2.3347855279855616 ], ... ],
    	[ [ 9.58848493221712, 7.924772661139023, -4.8966454735977845, -10.37709599303878, 3.213010443636233 ], [ -4.550774635398324, 1.7390004747399597, 5.915658357513336, 18.017678195467376, 16.768329755615248 ], [ 1.3591999996795452, -1.750563664876778, -3.2702597895374237, -10.427105021185707, -8.66934655937842 ], [ 6.561463873620833, -22.008294581542454, -11.932707635417687, 10.185726399343404, 0.5461253493794636 ], [ -7.415124855466239, -2.7877727485108945, 7.3535280015240225, -2.117059841174471, 1.9469336827891879 ], [ 20.611778203148333, -8.1917061017755, -10.394958322951085, 2.4894399052348026, 8.604249865239192 ], [ 22.456665518972216, -5.840326761438943, -13.555790505858562, 14.463153923456494, 1.5254850431476 ], [ -20.64548665760257, 1.3563832261959368, -14.213374181912116, 14.042704137059514, -10.199854833998568 ], ... ],
    	[ [ 2.9738716231390954, -16.040305288543784, -9.911187769541721, 12.975164773685941, 7.368623896469494 ], [ -6.903053392352256, 3.777695393462781, 0.36031469608461886, 8.548076265347682, 3.9021534063868013 ], [ 3.8027250184300287, 7.603039163314215, 0.12153211307584164, -3.369121538880053, -3.1194772598879132 ], [ -10.420521150901555, -7.809412384592176, 18.84032940900874, 9.168781721696359, 7.496021831877899 ], [ 22.305860571698428, 10.604026086949347, -0.6779328555418551, -18.287522152497605, -12.008150220153746 ], [ 1.8654002978547115, 7.634513269775257, -25.74852506066797, 7.37821608046305, -7.189028607681696 ], [ 6.1424478799345925, 4.113874743050727, 1.726408195918274, 15.526870097947436, 14.54159507920921 ], [ -3.437771834617531, -14.743870884031203, 11.582914993728439, 19.232275545012765, 19.560577138736864 ], ... ],
    	[ [ 7.2891936377487205, -8.161068399462266, 11.991710100480935, -14.95179905190718, -0.9279669658390292 ], [ -4.2531976958003925, -12.621585533326401, 3.754975859989832, -2.576003375256013, -5.0814505720869905 ], [ -18.022206826057488, -14.484927805402139, -1.178493982742693, 22.471877087952514, -4.747825302656351 ], [ -1.5494629022616384, 9.992397126351628, 5.461971840079259, -12.898925812510395, -15.313745157052857 ], [ 19.447631682656127, -0.05240978865948156, -1.0255834214805082, -23.04056867453619, -6.2677134963163805 ], [ -25.11859596699591, -3.0535082728621528, 10.807464825660206, 15.787612642192125, 8.067124437976327 ], [ 6.225056505695393, -2.1507172754142636, -6.330763184752234, -10.798115681050422, 6.841146959517723 ], [ 13.722625944084424, -3.27842366901799, -1.012078856677789, -5.463260398823668, -10.61797359658909 ], ... ],
    	[ [ 0.1617747850639518, 6.918060370286042, 1.1668097312600103, 7.117067824705608, 1.8021870564050968 ], [ 4.134025030678478, -2.237036376604192, 19.84430442766827, -8.397837576567829, 1.3275885527439448 ], [ 7.39687421607458, -1.8042167129826427, -7.505373528610909, 14.227116102170214, -15.369448424245709 ], [ 3.7150337557718167, -13.973298131277032, -15.744650264433364, -11.139014399558024, -5.83964898417874 ], [ 1.8958097767056594, -6.386337166017213, -28.189376697400963, 13.844394064509764, 4.702595188683068 ], [ -2.930971693638963, -1.8538769065380887, -9.131010470556191, 17.07113407411173, -4.691161150684526 ], [ 4.342158471935267, -2.0874169633496407, 3.0999897232223166, -8.88484482203847, -0.3417514594178633 ], [ -14.184767192025788, -3.068488552873176, -21.138663564247526, 1.5473318059084087, 1.6263321662563035 ], ... ],
    	[ [ -9.83134053872928, 1.0720855723981433, 0.5342723741067024, -8.72820093884968, -12.603227341726633 ], [ -10.823932406713762, 6.101421167664227, -4.694432449132845, -9.292008515979623, -10.843066784718268 ], [ -0.6622390282245223, -10.896595191534523, 9.10387663353215, 3.866697519388506, -0.28930078735040576 ], [ 15.70673728899049, 12.618370347940099, -0.28139495676944365, -7.014600589886326, -4.67708486082005 ], [ 25.458711343162072, 4.8500267659807905, -22.689570083719634, -0.5476860204168841, 13.420335700955656 ], [ -4.254661166262953, 18.255970607764755, 11.505258861845332, 9.867929366678595, 0.7998016277769258 ], [ -1.4924718624587106, -0.5947351204422846, 13.702027229914803, -0.21540061545076222, -5.549916069209085 ], [ -10.045993254811686, 5.297661547206525, -18.30104407644336, 27.382573441373445, -1.2209944348018351 ], ... ],
    	...
    ]

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 34.52 seconds (0.822 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: 12821788840962
Reset training subject: 12821970298666
Adding measurement 1ebdb805 to history. Total: 0
LBFGS Accumulation History: 1 points
Constructing line search parameters: GD
Non-optimal measurement 216.40982553264382 < 216.40982553264382. Total: 1
th(0)=216.40982553264382;dx=-0.03167844413034469
Adding measurement 5ff920ef to history. Total: 1
New Minimum: 216.40982553264382 > 216.3415829579046
WOLFE (weak): th(2.154434690031884)=216.3415829579046; dx=-0.03167235044699336 evalInputDelta=0.06824257473923012
Adding measurement 4553b1e0 to history. Total: 2
New Minimum: 216.3415829579046 > 216.27335351160815
WOLFE (weak): th(4.308869380063768)=216.27335351160815; dx=-0.03166625676364204 evalInputDelta=0.13647202103567224
Adding measurement 57931cdd to history. Total: 3
New Minimum: 216.27335351160815 > 216.00056701085038
WOLFE (weak): th(12.926608140191302)=216.00056701085038; dx=-0.03164188203023673 evalInputDelta=0.409258521793447
Adding measurement 5d72f307 to history. Total: 4
New Minimum: 216.00056701085038 > 214.7756271891152
WOLFE (weak): th(51.70643256076521)=214.7756271891152; dx=-0.03153219572991285 evalInputDelta=1.6341983435286238
Adding measurement 6e9c9b09 to history. Total: 5
New Minimum: 214.7756271891152 > 208.31445364554125
WOLFE (weak): th(258.53216280382605)=208.31445364554125; dx=-0.030947202128185455 evalInputDelta=8.095371887102573
Adding measurement 2a3fe35b to history. Total: 6
New Minimum: 208.31445364554125 > 170.67333785529684
END: th(1551.1929768229563)=170.67333785529684; dx=-0.02729099211738928 evalInputDelta=45.736487677346986
Fitness changed from 216.40982553264382 to 170.67333785529684
Iteration 1 complete. Error: 170.67333785529684 Total: 4.3439; Orientation: 0.2751; Line Search: 3.5022
Non-optimal measurement 170.67333785529684 < 170.67333785529684. Total: 7
Rejected: LBFGS Orientation magnitude: 1.991e+03, gradient 1.535e-01, dot -0.970; [086503e6-a10d-4f8f-8f10-14bc71575648 = 1.000/1.000e+00, e7b86810-421e-47df-a900-dab74657be03 = 1.000/1.000e+00]
Orientation rejected. Popping history element from 170.67333785529684, 208.31445364554125, 214.7756271891152, 216.00056701085038, 216.27335351160815, 216.3415829579046, 216.40982553264382
Rejected: LBFGS Orientation magnitude: 1.991e+03, gradient 1.535e-01, dot -0.970; [086503e6-a10d-4f8f-8f10-14bc71575648 = 1.000/1.000e+00, e7b86810-421e-47df-a900-dab74657be03 = 1.000/1.000e+00]
Orientation rejected. Popping history element from 170.67333785529684, 208.31445364554125, 214.7756271891152, 216.00056701085038, 216.27335351160815, 216.3415829579046
Rejected: LBFGS Orientation magnitude: 1.991e+03, gradient 1.535e-01, dot -0.970; [e7b86810-421e-47df-a900-dab74657be03 = 1.000/1.000e+00, 086503e6-a10d-4f8f-8f10-14bc71575648 = 1.000/1.000e+00]
Orientation rejected. Popping history element from 170.67333785529684, 208.31445364554125, 214.7756271891152, 216.00056701085038, 216.27335351160815
Rejected: LBFGS Orientation magnitude: 1.991e+03, gradient 1.535e-01, dot -0.970; [e7b86810-421e-47df-a900-dab74657be03 = 1.000/1.000e+00, 086503e6-a10d-4f8f-8f10-14bc71575648 = 1.000/1.000e+00]
Orientation rejected. Popping history element from 170.67333785529684, 208.31445364554125, 214.7756271891152, 216.00056701085038
LBFGS Accumulation History: 3 points
Removed measurement 2a3fe35b to history. Total: 6
Removed measurement 6e9c9b09 to history. Total: 5
Removed measurement 5d72f307 to history. Total: 4
Removed measurement 57931cdd to history. Total: 3
Adding measurement 9d5cfca to history. Total: 3
th(0)=170.67333785529684;dx=-0.02357417780098915
Adding measurement 291a0ad7 to history. Total: 4
New Minimum: 170.67333785529684 > 103.24678969607183
END: th(3341.943960201201)=103.24678969607183; dx=-0.01677751508327189 evalInputDelta=67.426548159225
Fitness changed from 170.67333785529684 to 103.24678969607183
Iteration 2 complete. Error: 103.24678969607183 Total: 30.1695; Orientation: 29.1863; Line Search: 0.8108
Final threshold in iteration 2: 103.24678969607183 (> 0.0) after 34.514s (< 30.000s)

Returns

    103.24678969607183

This training apply resulted in the following configuration:

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

    RefList<double[]> state = network.state();
    assert state != null;
    String description = state.stream().map(RefArrays::toString).reduce((a, b) -> a + "\n" + b)
        .orElse("");
    state.freeRef();
    return description;

Returns

    

And regressed input:

TrainingTester.java:622 executed in 0.01 seconds (0.000 gc):

    return RefArrays.stream(RefUtil.addRef(data)).flatMap(x -> {
      return RefArrays.stream(x);
    }).limit(1).map(x -> {
      String temp_18_0015 = x.prettyPrint();
      x.freeRef();
      return temp_18_0015;
    }).reduce((a, b) -> a + "\n" + b).orElse("");

Returns

    [
    	[ [ 0.5840261455971721, -0.04779159413473277, 0.3591604304617101, -1.4347593395822928, -0.5282198524494732, 0.190472101801006, -0.05472778206651469 ], [ 0.36837526353693817, 0.03967087558581666, -1.0040609025573555, -0.7070458452925052, -0.9761497012365357, -1.5619056700134433, 0.10637234032675097 ], [ 0.7406830927909146, 1.2071496469345413, 0.3480932819594008, -0.21799507044878247, 1.5325725939811567, 0.7686405324371631, -1.5959631716872955 ], [ -1.524419432755542, -1.1915779029347537, 0.7049156455374463, 0.7450129911672382, -1.5055790191297442, -0.5171493154703136, 0.3787468034440584 ], [ 1.4442968556062539, 1.0785832246623226, -0.24398854292122876, 2.019882097990355, 0.3131383784704392, -1.3623879381384114, 1.3445837688492313 ], [ 1.6418477585125515, -1.7774112556047652, 0.6454312764805294, -0.7362368493590896, 1.3468433311029486, 0.6697221914179826, 0.9855026101714617 ], [ 0.8982529560939292, -0.11844979215660376, -0.05495976481699247, -0.3015744858461415, -0.5815219462490816, 0.5849371482178014, -0.0732196419047236 ], [ -1.6929467005939003, -0.7286258527605095, 1.012427486692006, 0.4900194532425275, -0.7737493389306446, 1.5765327705849321, 1.657565426157363 ], ... ],
    	[ [ 1.0665266800583855, 1.1223356426371833, 0.6287661187101072, -1.7449266648750943, 1.0948242359103273, 0.9718339200558918, -0.9544703913493213 ], [ -0.9914512884606961, 1.0170949595171934, 1.0378596732789562, -0.5193311053609202, 1.0389503869923584, 0.7766236928573638, -0.026178832468890967 ], [ 0.9275578179128783, -1.2758645395704253, -0.22377355264600565, 0.5597866223189997, -1.1356923008445177, -0.9255152801046902, -1.151264940922017 ], [ 1.1775995338155558, -1.1662861935285598, -1.1685722771769715, -1.2142832767349887, -1.8682314876364632, -1.390729945404531, 0.20550144618529764 ], [ 0.10942215007642384, -0.3804997881244662, 0.7445350332921061, 1.2563128233780565, -0.16024283050958377, -0.19480947319931075, -1.468155017456168 ], [ 1.501778851470864, 0.9305643406604853, 1.673259673250465, 1.293498196287787, -1.5019423096005322, -1.877207749210115, -0.5905873103794714 ], [ 0.8530880329996977, -0.5849185753912644, 0.3405424198112922, 0.11595579818907176, -1.2558434507766132, 1.5951428391983131, -0.43595428730145974 ], [ 1.2040742176923307, 1.159399065626718, -0.6838003402870962, 1.849248965018712, -0.21578996697152034, -1.6240571995426027, -1.3794504499891438 ], ... ],
    	[ [ 1.0047859959682894, -0.7803220672013504, -0.8041115692455444, 0.6189602432558032, -0.08432611753124385, -1.7684580259093534, 1.5190922180571254 ], [ -1.2021889370344834, 1.4747822114381086, -0.36697387768787365, -0.677462935957398, -1.7544613504651476, 0.8608903751792061, 0.4804566343274529 ], [ 2.0414599559421567, 1.669466079237915, 1.2521755834970887, 0.8381553138528806, -0.7768539498888437, 1.6057455011120938, 0.5065036569397158 ], [ 0.05106697687825504, 1.3443921313875815, 0.8091760754529144, -0.7985190980288571, -0.06689555774598797, -2.023238118548716, 1.6523951494426958 ], [ -0.8721347319228141, -0.4548990920131064, -0.23554780611039564, -1.5406636689667605, 0.3386452869028742, 0.3785218916799139, -1.6557864969598153 ], [ 1.1412960612379655, 1.4751971310503664, 1.288561560039065, 0.017269046430037367, 1.5728251983601744, -1.5016907968517725, 0.15079096444329734 ], [ -0.2194697336730741, -0.8421334568647417, -0.984434919963408, -0.4694574126527208, 0.3850806402954385, 0.47955162185668704, -0.5086497630677429 ], [ 1.27679208030661, 0.4783814225167299, -0.6980142623935919, 1.1952151155341224, -1.324039217410577, -0.5053796120292862, -1.9074769587994262 ], ... ],
    	[ [ -0.3101253588908602, 0.9416733822632519, 0.5856569064473098, 2.045551377575516, -0.08907518093731444, 0.5660902877941965, -0.16359803375938342 ], [ -1.3576710814038528, 0.3247574406596825, -1.3690461706440322, -0.5672800210564045, -0.6798360765233091, 1.5549831243196022, 0.5372808248228199 ], [ -0.9406645964667303, 1.2673371955716537, -1.4296458592822905, -0.509683063648719, -0.22556530810679032, 0.3261494416721359, -0.42148246865131206 ], [ -0.7402682720318101, -0.45695452852494745, 0.04703643282921781, -1.3851946244927573, 1.4179555485463777, 1.526952160128792, -1.3776305567847678 ], [ -1.2221190741959116, 0.3471471273311971, 0.5594778527152791, -1.901444883147899, -0.7416436582528636, -0.18790640388515276, 1.834900686145696 ], [ -1.5332784194714102, 0.6804004593503463, -1.7433094306715662, 1.51898884834604, -0.32497766220261093, -0.7584185487629465, -0.26300569829845866 ], [ 0.8284653211126524, 0.6767644748284026, 0.7725509427436965, 1.9129082088034604, -0.36429429729561974, -1.1298837334140346, -0.2504147825384418 ], [ -0.4517677265630037, 1.6384013508996846, -0.13846422466005018, -1.0277855076340334, -0.5131220400234098, -1.2345067361485655, 1.4303978998846958 ], ... ],
    	[ [ -0.6231438326513672, -0.699563416865808, 0.3616826921701496, 0.46499007380148183, -0.4211701826354106, -0.14281819108398564, -0.1789927372414079 ], [ 0.15798124076201853, -1.0088681554465073, 1.3891974123203, 0.9499133768832801, 0.7711318864254268, 0.4624938284388535, -1.2647742715010515 ], [ -0.16111358500439626, 0.8248333403631236, 0.013193849343609565, 1.0910548983796629, 0.8975352323620001, -0.6425013104910504, 0.675228212151605 ], [ -0.7114868885272143, -1.2920186364611617, -0.8495140128059026, -0.636805513827481, 0.15805716326367572, 0.6619200165456675, -0.29361788237643605 ], [ -0.1865789212638327, -0.016748502283256195, 0.8396750158628717, -1.4274993203218025, -0.3706471823906443, -1.2011397289551513, -1.5006777111628393 ], [ 0.5398251501757698, -1.65657756293985, 1.8705634267176623, 0.023536034898403085, -0.7264010503910494, 1.5317186459328165, -1.1920410050287122 ], [ 0.883217518303812, 0.42809346086625083, 0.6931089125478725, -0.43755192284667216, -0.38381356682777956, 1.9151627928244568, -2.363612587664034 ], [ -1.6172685516344376, -0.9063283701686116, -1.070190430510657, -0.8350373465746275, -0.004259829857778508, -1.4308775898955388, -1.5027916601994067 ], ... ],
    	[ [ -0.1503986273092635, -1.3075423517052027, 0.7351048861565241, -0.49240303152357606, 0.9500989079776034, -0.653274391156307, 0.293667064335168 ], [ 1.5815888975336718, 0.1682099785223704, 0.0495284024178316, 0.15628397200951133, 0.029646722209666715, -1.2508412245577079, 0.8718867875897933 ], [ -1.6773782635758943, -0.03630838818693552, -1.233617388980551, 0.9374600577946421, -0.30897823918322115, -0.5443620323041298, 1.307009950984744 ], [ -0.009746598544617874, 1.8179641780227567, -1.2083250670101213, -2.2194574553454505, -0.1548004649485689, -1.4471085974091906, 0.4028831124577411 ], [ 1.2840674586580871, 0.06556407326679031, -1.5937740807758023, 0.756263113976182, -0.8089419382968038, 0.7828822659290322, 0.5112874353166603 ], [ -0.5882136376285985, -1.314198800405419, 0.8403425647179248, 1.7589124401822973, -1.4005331597962098, 0.8706113560880663, 2.288025260429793 ], [ 0.21341951289521224, -0.8491548444922241, 0.8648409554423199, 0.004994944716259664, -0.12383172687400333, -0.5978394050000463, 0.06250252613640468 ], [ 0.16123565122809685, -1.2306259623746805, 0.976926526868201, -1.8237944015498015, 0.7654651481884658, -0.09518247875660443, 0.4976127105783522 ], ... ],
    	[ [ -0.5137977032247698, 0.7732683933862524, 0.6048221335422725, -1.4798372498785435, -0.8808150378337704, -0.6954448649839537, 0.915918412844131 ], [ 1.0896744183302147, -1.3490020785255532, 1.6503326809445757, 0.3857247932719144, 0.7410711342629385, 1.422286673790672, -1.2940209705894459 ], [ 0.35504744424590184, 0.9724212361764365, 1.011237075521459, 0.45378018615160504, -0.8580739348001897, 1.2018524843765208, 0.9030889705602837 ], [ 0.05559672391175663, 1.2121974074865798, -1.32199657247559, 1.4633669245100414, -0.4377974056179381, -0.059112795784280414, -0.4006698179484017 ], [ 1.0961698084200413, -1.2513584708268788, -0.07448691393617107, 1.4886082682211859, -1.6099395851094649, -0.68957162498212, -0.6130095521653695 ], [ 0.19710580945330486, 1.2249806722126333, -0.596891883895015, 0.8008214290981294, -1.6452990655346094, 1.2931414274123803, -0.2393873972137617 ], [ -0.5878805521526702, 1.5148313317934905, 1.0081419256679953, -1.9001993583268153, -1.4816779098151123, -2.025714203951507, -2.043323876066579 ], [ 1.2754611772399957, -1.1509381968137309, 0.23974334675031173, -1.6072029352646384, -0.8146695263620349, 0.38647047228570064, 1.037602296539321 ], ... ],
    	[ [ -0.7223027367301003, 0.8736714998759352, -1.7358027784388341, -0.005088682658491772, 0.14335355060747912, -0.07312856747917573, -0.25825579519566466 ], [ -0.47714428216229904, 0.8891349486992015, -1.2429550627635635, 0.6743525476244829, -0.6069822262118111, -0.18573782317281518, 0.15461955670127098 ], [ 0.0885866454335544, -1.3781736300646856, -1.108429765894348, -0.6885741540923169, -1.2962363133285275, 0.055894320348713125, 1.6499931331628903 ], [ -0.49547336271874937, -1.5822637477284602, -1.0922631799338638, -1.3400121937385132, -0.49063845599865263, -1.6367483176135542, -0.44232594645533896 ], [ -1.5237773757757724, 0.215177716408662, 0.7175722656104611, 0.9388994096661376, 0.13738646157550422, -1.4749148423467215, -0.7243657077453372 ], [ -1.09398417138096, -0.4916245560503515, 0.9496859514010167, -0.4333256286504918, 0.5176368600476168, 0.5866568819062317, 0.5179220497974268 ], [ 0.07685933606933554, 0.6877214142630681, 1.238190551710995, -0.6449691405166875, -1.8452777918277166, -2.104569632507017, 1.4447792776473571 ], [ -0.9706275967026992, 0.9310318270126132, 0.5590788444559922, -0.6279094315312066, 1.3185899722529975, -0.41160784533592193, -1.3307570844499896 ], ... ],
    	...
    ]

To produce the following output:

TrainingTester.java:633 executed in 0.05 seconds (0.000 gc):

    Result[] array = ConstantResult.batchResultArray(pop(RefUtil.addRef(data)));
    @Nullable
    Result eval = layer.eval(array);
    assert eval != null;
    TensorList tensorList = Result.getData(eval);
    String temp_18_0016 = tensorList.stream().limit(1).map(x -> {
      String temp_18_0017 = x.prettyPrint();
      x.freeRef();
      return temp_18_0017;
    }).reduce((a, b) -> a + "\n" + b).orElse("");
    tensorList.freeRef();
    return temp_18_0016;

Returns

    [
    	[ [ -7.671565558976974, -9.285238631380563, 3.032827133711755, 5.9005889058669, 2.4603145775353505 ], [ -1.1087041492241885, -3.3445521346063827, 0.8191253159327694, -8.077322282133371, 5.37953602097174 ], [ 3.9399508152179763, 17.19444924507778, -8.275262297871652, -1.6890273397517797, -8.292730435054178 ], [ 1.635454146683061, -6.9183585032047015, -6.284594720208968E-4, -14.33422844776975, 9.252078929861744 ], [ 7.866642433205438, 3.9172312702654573, -3.9120225329857936, -11.697604031094349, 9.175417165936318 ], [ -1.7207009850949724, -2.5942595494941316, -1.634281160407843, 1.1497798317142218, 1.3903609521498843 ], [ 8.282044150372277, 0.9199312860283615, 13.162655704173611, -11.528451237595714, -1.5497268149778718 ], [ 2.9664286520899696, 5.751178510784029, -3.2982211909519816, -6.9106399917736745, -8.793034649941683 ], ... ],
    	[ [ -0.6281907276433563, 6.836945403142646, -9.038695124496547, 4.2970876029611595, 4.900609213248776 ], [ 18.949780920668534, -6.363081380431992, 12.232214180863236, -12.04837018287234, 10.96796823966831 ], [ -3.7360640218411527, 2.004803310533915, 5.344072732738465, -10.096797030850547, -12.193104134803377 ], [ -0.9109293143537693, 6.439635067044559, -10.67631347307215, 5.248124740882267, -0.9555122777441065 ], [ 16.026990831433555, -9.10990386314317, -13.11162256792624, -5.666193264765412, 4.005028657791987 ], [ -7.165608663155532, 6.262470907552445, -3.5310063925059825, 5.099717250499945, 4.8619355082965034 ], [ 4.279376725436544, 16.530740408184307, -15.358364679667542, -5.991315840570877, 1.570222547983962 ], [ 4.874464396217065, 8.19531371747462, 0.13657042996528462, 1.4407566281303001, -1.7202880051715406 ], ... ],
    	[ [ -0.2604460145165014, -5.448974161593147, 7.1520616451145385, 6.172704791470583, -9.115186078645465 ], [ -1.6717296901533083, -3.225004496061797, -9.804202487357015, -3.5180122978531374, -8.932174507402616 ], [ 0.6592097537567118, -10.701616990690997, -6.77286460966092, 14.349562376821972, 7.309896091016835 ], [ 7.846905228444662, -6.035960176034237, 5.382698177335855, 5.963354147335628, -8.479390603256618 ], [ -7.192661372800128, -4.260544286995898, -13.355178293749475, -1.8971949607588134, 6.009122729083765 ], [ 5.089602719850442, 3.2579477529403786, -0.08277241380185103, -12.156420541941396, -1.8210611728847914 ], [ 11.923570498836435, 12.897826936498227, -3.8028895391554203, -3.3420859438906936, -13.609978232029173 ], [ 8.01738582766655, -1.0489389788809764, 5.667995695772107, -6.794447154226197, -2.7470240488598394 ], ... ],
    	[ [ 4.737535827787862, 1.3200846888097906, 1.9879833393663242, 8.754485831135588, 6.1559249925886785 ], [ -6.999381780185204, 13.586629863536192, -8.655481457744688, 18.69570460053181, -2.6085388421852844 ], [ -17.152966523428837, -2.2228817820883062, -1.4418950759010432, 10.815923608938286, -11.066603351868242 ], [ -10.123168581950587, -7.726870151455365, 2.9853056082524754, -1.4520426404439173, 5.545611441565741 ], [ -4.707376334786674, -10.499850155527513, 7.633820646977487, -8.589898799040943, 1.604814501194032 ], [ 10.432501048603916, -7.13504527594697, -7.798789465869514, -6.253537837879385, -3.119532054984151 ], [ -8.336124172397422, -7.3990540676666114, -4.487092046534407, 23.060917909969035, 3.70582919398535 ], [ -9.395025579891275, 1.6737293790425796, -3.1572040909119576, 6.456308110910155, -1.5082867060627514 ], ... ],
    	[ [ -2.8387711175013175, 1.734206610497641, -3.8835352902448763, -4.42157112118517, -1.454166108583361 ], [ 5.779579811633828, 6.269631595946495, -1.0640922954503622, 1.7265331274496494, 11.150609018842298 ], [ 0.8694626713417333, 11.522494248982252, 9.776673322740633, -7.173382563241973, 0.7745627663756164 ], [ -7.159359226343376, 4.1455918175589215, 11.213604916825036, -2.790986418239923, 9.279496197130921 ], [ 9.718759313299184, 13.059602785290725, -3.4885094968984722, -21.77939645760746, -1.1211196480234085 ], [ 11.34893781455078, 6.728468937193987, -10.227827272434228, -0.7354626211251925, -0.8814873603698162 ], [ -2.368431336512878, 0.6873724261409783, 4.1704309660494605, 17.04893449412025, 4.3229531957189575 ], [ -2.204917906054227, -13.575724087561426, 3.9211083282300763, 8.144786902628198, 4.145364670439298 ], ... ],
    	[ [ -4.801691146184851, -9.92703621575652, 8.870484402022875, -8.596756503737675, 9.250034222231898 ], [ 13.466312048591268, -1.4434236252018549, 13.623520214248265, 0.13014098168462637, -8.117493305763322 ], [ 2.3175328927938446, -15.722372523858006, 9.534559890164019, 11.310932822658234, -6.143050523338749 ], [ 3.9858347020740776, 9.810860551454981, 10.397180402714895, -6.8114079198968405, 0.11984048277738375 ], [ 15.444766156189422, 10.42137606771834, -6.0892697973783, -9.96511691552202, 2.639920261553554 ], [ -10.983175415996465, -12.479374188048343, -4.171168065487485, -0.8121791535108779, 8.287757278691437 ], [ 8.281266716469455, -5.222613184543136, 8.016733740673832, -5.155294634131312, 1.112908887319755 ], [ 2.083403580834218, 0.4664920081540143, 4.59448675153638, -2.7555045213407645, -3.2829999859388077 ], ... ],
    	[ [ 3.8603642107044944, 0.5803691883716773, -10.234929614860588, -11.23726069251195, -4.9669973781626435 ], [ 13.445976466646773, 1.2557984876850468, -7.180746032673499, -6.702472094674231, -6.84912656717689 ], [ -1.206551834319618, 4.034369190571617, 1.0094154850295072, 11.79060008336753, -4.628515598587556 ], [ 9.948585217909672, 8.754540618380242, -12.660502838690725, -2.472190268142947, 9.664678295799686 ], [ -11.800030606819961, -2.1945963315263093, -14.55836506580979, 4.563797344387045, 0.22236250872649976 ], [ -7.57730086146668, 2.3128871159321736, -12.724759399597108, 18.737506436795986, -2.4345278603267126 ], [ 4.089340712208795, -5.917129677691293, -8.273205074769555, -6.137627566121534, 0.08733838814594147 ], [ 6.3599172111995435, -4.7827793685420685, -10.038100733177384, 4.345528915994644, -2.408343298111226 ], ... ],
    	[ [ -3.0253420118883705, 12.733216662296641, 1.888459144842106, -6.971678078395595, -1.1192051468986348 ], [ -4.5275472867984075, 1.6149299208484498, 11.42791179390826, 6.155452127718092, -9.329404722916173 ], [ -12.759995481717462, -5.204561223358025, -1.7235968771657293, 8.946284776303441, -9.402678215595357 ], [ 6.770906594799813, 4.077543710697172, 2.0875943397456287, -7.65724097934075, -19.989985402963057 ], [ 10.497324051820648, 4.741969834305707, -0.33908795276239057, -1.4610014454437115, 7.330496569834638 ], [ -6.078589501392545, 8.233951979435455, 6.769479985169198, -1.8938061031806364, 8.630007083037977 ], [ 12.764351331549399, 1.5853496846811714, -0.06156390813091201, -1.9731045704893124, 4.671622587864103 ], [ 12.940739271582318, 6.22413668808012, 8.426096798525963, 14.287970480753355, -2.6909982514095585 ], ... ],
    	...
    ]

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

    return TestUtil.compare(title + " vs Iteration", runs);
Logging
Plotting range=[1.0, -0.7526790339381237], [21.0, 2.2321656820596005]; valueStats=DoubleSummaryStatistics{count=33, sum=706.252759, min=0.176734, average=21.401599, max=170.673338}
Plotting 21 points for GD
Plotting 10 points for CjGD
Plotting 2 points for LBFGS

Returns

Result

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

    return TestUtil.compareTime(title + " vs Time", runs);
Logging
Plotting range=[0.0, -0.7526790339381237], [30.17, 2.2321656820596005]; valueStats=DoubleSummaryStatistics{count=33, sum=706.252759, min=0.176734, average=21.401599, max=170.673338}
Plotting 21 points for GD
Plotting 10 points for CjGD
Plotting 2 points for LBFGS

Returns

Result

Model Learning

In this apply, attempt to train a network to emulate a randomized network given an example input/output. The target state is:

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

    RefList<double[]> temp_18_0042 = network_target.state();
    assert temp_18_0042 != null;
    String temp_18_0041 = temp_18_0042.stream().map(RefArrays::toString).reduce((a, b) -> a + "\n" + b).orElse("");
    temp_18_0042.freeRef();
    return temp_18_0041;

Returns

    

Gradient Descent

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

TrainingTester.java:480 executed in 28.26 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: 12857032832042
Reset training subject: 12857229368257
Constructing line search parameters: GD
th(0)=212.18520841134242;dx=-226.0780380333386
New Minimum: 212.18520841134242 > 4.656746390465428
WOLF (strong): th(2.154434690031884)=4.656746390465428; dx=33.42567963875139 evalInputDelta=207.528462020877
END: th(1.077217345015942)=38.53550095778007; dx=-96.32617919729364 evalInputDelta=173.64970745356234
Fitness changed from 212.18520841134242 to 4.656746390465428
Iteration 1 complete. Error: 4.656746390465428 Total: 0.9869; Orientation: 0.0007; Line Search: 0.4478
th(0)=4.656746390465428;dx=-4.968417321704911
New Minimum: 4.656746390465428 > 0.2645186862755334
WOLF (strong): th(2.3207944168063896)=0.2645186862755334; dx=1.1833102287345874 evalInputDelta=4.392227704189895
END: th(1.1603972084031948)=0.6760206692737267; dx=-1.892553546485168 evalInputDelta=3.9807257211917015
Fitness changed from 4.656746390465428 to 0.2645186862755334
Iteration 2 complete. Error: 0.2645186862755334 Total: 0.5851; Orientation: 0.0004; Line Search: 0.4388
th(0)=0.2645186862755334;dx=-0.28246923367202054
New Minimum: 0.2645186862755334 > 0.029693230409898002
WOLF (strong): th(2.5000000000000004)=0.029693230409898002; dx=0.09460886897951223 evalInputDelta=0.23482545586563539
New Minimum: 0.029693230409898002 > 0.029269051264111723
END: th(1.2500000000000002)=0.029269051264111723; dx=-0.09393018234625411 evalInputDelta=0.23524963501142165
Fitness changed from 0.2645186862755334 to 0.029269051264111723
Iteration 3 complete. Error: 0.029269051264111723 Total: 0.5832; Orientation: 0.0005; Line Search: 0.4376
th(0)=0.029269051264111723;dx=-0.031245032844519585
New Minimum: 0.029269051264111723 > 0.00560540324601221
WOLF (strong): th(2.6930433625398553)=0.00560540324601221; dx=0.01367112493998296 evalInputDelta=0.023663648018099514
New Minimum: 0.00560540324601221 > 0.0023170821810185325
END: th(1.3465216812699277)=0.0023170821810185325; dx=-0.008786953952268296 evalInputDelta=0.02695196908309319
Fitness changed from 0.029269051264111723 to 0.0023170821810185325
Iteration 4 complete. Error: 0.0023170821810185325 Total: 0.5826; Orientation: 0.0005; Line Search: 0.4368
th(0)=0.0023170821810185325;dx=-0.0024724606314712313
New Minimum: 0.0023170821810185325 > 6.956964708561501E-4
WOLF (strong): th(2.9009930210079875)=6.956964708561501E-4; dx=0.0013546463531045724 evalInputDelta=0.0016213857101623824
New Minimum: 6.956964708561501E-4 > 1.1858799432417274E-4
END: th(1.4504965105039938)=1.1858799432417274E-4; dx=-5.589071391833287E-4 evalInputDelta=0.0021984941866943597
Fitness changed from 0.0023170821810185325 to 1.1858799432417274E-4
Iteration 5 complete. Error: 1.1858799432417274E-4 Total: 0.5835; Orientation: 0.0005; Line Search: 0.4378
th(0)=1.1858799432417274E-4;dx=-1.2646694607617968E-4
New Minimum: 1.1858799432417274E-4 > 5.267802843781339E-5
WOLF (strong): th(3.125000000000001)=5.267802843781339E-5; dx=8.428456790890952E-5 evalInputDelta=6.590996588635935E-5
New Minimum: 5.267802843781339E-5 > 3.3082012305675434E-6
END: th(1.5625000000000004)=3.3082012305675434E-6; dx=-2.1091189083635053E-5 evalInputDelta=1.152797930936052E-4
Fitness changed from 1.1858799432417274E-4 to 3.3082012305675434E-6
Iteration 6 complete. Error: 3.3082012305675434E-6 Total: 0.5847; Orientation: 0.0004; Line Search: 0.4400
th(0)=3.3082012305675434E-6;dx=-3.524954124938927E-6
New Minimum: 3.3082012305675434E-6 > 2.0835610035470223E-6
WOLF (strong): th(3.3663042031748196)=2.0835610035470223E-6; dx=2.7973667453637054E-6 evalInputDelta=1.224640227020521E-6
New Minimum: 2.0835610035470223E-6 > 3.5524202117323565E-8
END: th(1.6831521015874098)=3.5524202117323565E-8; dx=-3.6379368978767366E-7 evalInputDelta=3.2726770284502197E-6
Fitness changed from 3.3082012305675434E-6 to 3.5524202117323565E-8
Iteration 7 complete. Error: 3.5524202117323565E-8 Total: 0.5885; Orientation: 0.0005; Line Search: 0.4424
th(0)=3.5524202117323565E-8;dx=-3.7793957125890103E-8
New Minimum: 3.5524202117323565E-8 > 3.0668401383360414E-8
WOLF (strong): th(3.626241276259985)=3.0668401383360414E-8; dx=3.511581170531245E-8 evalInputDelta=4.855800733963151E-9
New Minimum: 3.0668401383360414E-8 > 4.775010305353245E-11
END: th(1.8131206381299925)=4.775010305353245E-11; dx=-1.3390727102956289E-9 evalInputDelta=3.5476452014270035E-8
Fitness changed from 3.5524202117323565E-8 to 4.775010305353245E-11
Iteration 8 complete. Error: 4.775010305353245E-11 Total: 0.7148; Orientation: 0.0004; Line Search: 0.5685
Low gradient: 7.111302663323948E-6
th(0)=4.775010305353245E-11;dx=-5.057062556939828E-11
Armijo: th(3.9062500000000018)=5.453036638439378E-11; dx=5.40421203948162E-11 evalInputDelta=-6.780263330861328E-12
New Minimum: 4.775010305353245E-11 > 5.979235390320228E-14
WOLF (strong): th(1.9531250000000009)=5.979235390320228E-14; dx=1.7357474130926711E-12 evalInputDelta=4.769031069962925E-11
END: th(0.651041666666667)=2.050212340607454E-11; dx=-3.31351679088777E-11 evalInputDelta=2.724797964745791E-11
Fitness changed from 4.775010305353245E-11 to 5.979235390320228E-14
Iteration 9 complete. Error: 5.979235390320228E-14 Total: 0.7349; Orientation: 0.0005; Line Search: 0.5881
Low gradient: 2.522046560140004E-7
th(0)=5.979235390320228E-14;dx=-6.360718851514025E-14
New Minimum: 5.979235390320228E-14 > 3.858399104802137E-15
END: th(1.4026267513228416)=3.858399104802137E-15; dx=-1.6148818915110622E-14 evalInputDelta=5.593395479840014E-14
Fitness changed from 5.979235390320228E-14 to 3.858399104802137E-15
Iteration 10 complete. Error: 3.858399104802137E-15 Total: 0.4420; Orientation: 0.0005; Line Search: 0.2952
Low gradient: 6.405222096517734E-8
th(0)=3.858399104802137E-15;dx=-4.102687010571904E-15
New Minimum: 3.858399104802137E-15 > 1.4205084692197177E-15
WOLF (strong): th(3.0218677302166546)=1.4205084692197177E-15; dx=2.4891877753098726E-15 evalInputDelta=2.4378906355824193E-15
New Minimum: 1.4205084692197177E-15 > 1.4948207610236915E-16
END: th(1.5109338651083273)=1.4948207610236915E-16; dx=-8.067496200839214E-16 evalInputDelta=3.708917028699768E-15
Fitness changed from 3.858399104802137E-15 to 1.4948207610236915E-16
Iteration 11 complete. Error: 1.4948207610236915E-16 Total: 0.5890; Orientation: 0.0005; Line Search: 0.4410
Low gradient: 1.260338408849431E-8
th(0)=1.4948207610236915E-16;dx=-1.5884529048211155E-16
New Minimum: 1.4948207610236915E-16 > 7.959619938088058E-17
WOLF (strong): th(3.2552083333333353)=7.959619938088058E-17; dx=1.1590740781460568E-16 evalInputDelta=6.988587672148857E-17
New Minimum: 7.959619938088058E-17 > 2.74197865156354E-18
END: th(1.6276041666666676)=2.74197865156354E-18; dx=-2.1468941477608244E-17 evalInputDelta=1.4674009745080562E-16
Fitness changed from 1.4948207610236915E-16 to 2.74197865156354E-18
Iteration 12 complete. Error: 2.74197865156354E-18 Total: 0.5915; Orientation: 0.0005; Line Search: 0.4443
Low gradient: 1.7061261152711045E-9
th(0)=2.74197865156354E-18;dx=-2.91086632121007E-18
New Minimum: 2.74197865156354E-18 > 2.0346989455188E-18
WOLF (strong): th(3.5065668783071047)=2.0346989455188E-18; dx=2.507463381430737E-18 evalInputDelta=7.0727970604474E-19
New Minimum: 2.0346989455188E-18 > 1.3371841255330977E-20
END: th(1.7532834391535523)=1.3371841255330977E-20; dx=-2.0170161149727173E-19 evalInputDelta=2.728606810308209E-18
Fitness changed from 2.74197865156354E-18 to 1.3371841255330977E-20
Iteration 13 complete. Error: 1.3371841255330977E-20 Total: 0.5930; Orientation: 0.0005; Line Search: 0.4464
Low gradient: 1.190271045877312E-10
th(0)=1.3371841255330977E-20;dx=-1.41674516265387E-20
Armijo: th(3.777334662770819)=1.3403387107795671E-20; dx=1.4184154346312404E-20 evalInputDelta=-3.154585246469411E-23
New Minimum: 1.3371841255330977E-20 > 9.25546101185805E-25
WOLF (strong): th(1.8886673313854094)=9.25546101185805E-25; dx=8.350948352142536E-24 evalInputDelta=1.3370915709229791E-20
END: th(0.6295557771284698)=5.9400485843181354E-21; dx=-9.44218314039123E-21 evalInputDelta=7.431792671012842E-21
Fitness changed from 1.3371841255330977E-20 to 9.25546101185805E-25
Iteration 14 complete. Error: 9.25546101185805E-25 Total: 0.8931; Orientation: 0.0005; Line Search: 0.7464
Zero gradient: 

...skipping 9307 bytes...

9.692302335782275E-34
Iteration 31 complete. Error: 9.692302335782275E-34 Total: 0.5858; Orientation: 0.0006; Line Search: 0.4391
Zero gradient: 8.188460510661572E-19
th(0)=9.692302335782275E-34;dx=-6.7050885534663966E-37
Armijo: th(11.385195622259664)=1.905899341556129E-33; dx=4.1820144133621E-37 evalInputDelta=-9.366691079779016E-34
Armijo: th(5.692597811129832)=1.0355403238056648E-33; dx=-1.8233487655592322E-37 evalInputDelta=-6.631009022743729E-35
New Minimum: 9.692302335782275E-34 > 7.557502902411491E-34
END: th(1.897532603709944)=7.557502902411491E-34; dx=-5.030462083739445E-37 evalInputDelta=2.1347994333707843E-34
Fitness changed from 9.692302335782275E-34 to 7.557502902411491E-34
Iteration 32 complete. Error: 7.557502902411491E-34 Total: 0.7344; Orientation: 0.0007; Line Search: 0.5884
Zero gradient: 6.495076913274577E-19
th(0)=7.557502902411491E-34;dx=-4.218602410935241E-37
Armijo: th(4.088110066899227)=7.941120821530529E-34; dx=-3.055913238589502E-37 evalInputDelta=-3.836179191190377E-35
New Minimum: 7.557502902411491E-34 > 7.5230232268815325E-34
END: th(2.0440550334496135)=7.5230232268815325E-34; dx=-3.2389065566072297E-37 evalInputDelta=3.447967552995842E-36
Fitness changed from 7.557502902411491E-34 to 7.5230232268815325E-34
Iteration 33 complete. Error: 7.5230232268815325E-34 Total: 0.5830; Orientation: 0.0005; Line Search: 0.4375
Zero gradient: 6.354908816288693E-19
th(0)=7.5230232268815325E-34;dx=-4.0384866063343755E-37
Armijo: th(4.40378307239813)=7.961547872735765E-34; dx=-2.6866025622867438E-37 evalInputDelta=-4.385246458542324E-35
New Minimum: 7.5230232268815325E-34 > 6.908480518773841E-34
END: th(2.201891536199065)=6.908480518773841E-34; dx=-3.0004678090325934E-37 evalInputDelta=6.145427081076918E-35
Fitness changed from 7.5230232268815325E-34 to 6.908480518773841E-34
Iteration 34 complete. Error: 6.908480518773841E-34 Total: 0.5861; Orientation: 0.0006; Line Search: 0.4397
Zero gradient: 6.128118030687824E-19
th(0)=6.908480518773841E-34;dx=-3.755383059804122E-37
Armijo: th(4.743831509274861)=7.327345235811763E-34; dx=-2.566103815070807E-37 evalInputDelta=-4.1886471703792227E-35
New Minimum: 6.908480518773841E-34 > 6.824688278450993E-34
END: th(2.3719157546374303)=6.824688278450993E-34; dx=-2.75673840108362E-37 evalInputDelta=8.379224032284758E-36
Fitness changed from 6.908480518773841E-34 to 6.824688278450993E-34
Iteration 35 complete. Error: 6.824688278450993E-34 Total: 0.5829; Orientation: 0.0005; Line Search: 0.4361
Zero gradient: 5.990799958428128E-19
th(0)=6.824688278450993E-34;dx=-3.588968414190246E-37
Armijo: th(5.110137583624034)=7.5728061085315124E-34; dx=-2.1829927003762477E-37 evalInputDelta=-7.481178300805194E-35
New Minimum: 6.824688278450993E-34 > 6.469269818890417E-34
END: th(2.555068791812017)=6.469269818890417E-34; dx=-2.480074404500199E-37 evalInputDelta=3.5541845956057574E-35
Fitness changed from 6.824688278450993E-34 to 6.469269818890417E-34
Iteration 36 complete. Error: 6.469269818890417E-34 Total: 0.5836; Orientation: 0.0005; Line Search: 0.4372
Zero gradient: 6.006968999818327E-19
th(0)=6.469269818890417E-34;dx=-3.608367656477839E-37
Armijo: th(5.5047288404976635)=7.413324984396131E-34; dx=-1.8753373262197332E-37 evalInputDelta=-9.44055165505714E-35
Armijo: th(2.7523644202488318)=6.666596151876826E-34; dx=-2.2272769224134727E-37 evalInputDelta=-1.9732633298640834E-35
New Minimum: 6.469269818890417E-34 > 6.056186093209826E-34
WOLFE (weak): th(0.9174548067496106)=6.056186093209826E-34; dx=-3.3423119164226515E-37 evalInputDelta=4.130837256805913E-35
END: th(1.834909613499221)=6.153547615478013E-34; dx=-2.346723317473991E-37 evalInputDelta=3.1572220341240394E-35
Fitness changed from 6.469269818890417E-34 to 6.056186093209826E-34
Iteration 37 complete. Error: 6.056186093209826E-34 Total: 0.8778; Orientation: 0.0005; Line Search: 0.7324
Zero gradient: 5.607036032752999E-19
th(0)=6.056186093209826E-34;dx=-3.1438853072590483E-37
Armijo: th(3.9531929243957182)=6.772967482038667E-34; dx=-2.096589912608864E-37 evalInputDelta=-7.167813888288412E-35
Armijo: th(1.9765964621978591)=6.505932160690053E-34; dx=-2.2477597209593656E-37 evalInputDelta=-4.497460674802268E-35
Armijo: th(0.6588654873992864)=6.139489440730189E-34; dx=-2.3497960854462934E-37 evalInputDelta=-8.330334752036335E-36
New Minimum: 6.056186093209826E-34 > 6.029357978944525E-34
WOLFE (weak): th(0.1647163718498216)=6.029357978944525E-34; dx=-3.1316818338314346E-37 evalInputDelta=2.6828114265300682E-36
Armijo: th(0.411790929624554)=6.134243989970718E-34; dx=-2.360361605933004E-37 evalInputDelta=-7.805789676089183E-36
New Minimum: 6.029357978944525E-34 > 6.002319995574921E-34
WOLFE (weak): th(0.2882536507371878)=6.002319995574921E-34; dx=-3.1187621625178074E-37 evalInputDelta=5.3866097634905045E-36
Armijo: th(0.3500222901808709)=6.138630362291628E-34; dx=-2.3652312474549442E-37 evalInputDelta=-8.244426908180155E-36
Armijo: th(0.31913797045902936)=6.138630362291628E-34; dx=-2.3652312474549442E-37 evalInputDelta=-8.244426908180155E-36
Armijo: th(0.3036958105981086)=6.138630362291628E-34; dx=-2.3652312474549442E-37 evalInputDelta=-8.244426908180155E-36
Armijo: th(0.2959747306676482)=6.14749231493851E-34; dx=-2.3653941871946615E-37 evalInputDelta=-9.130622172868391E-36
WOLFE (weak): th(0.29211419070241795)=6.002319995574921E-34; dx=-3.1187621625178074E-37 evalInputDelta=5.3866097634905045E-36
WOLFE (weak): th(0.2940444606850331)=6.002319995574921E-34; dx=-3.1187621625178074E-37 evalInputDelta=5.3866097634905045E-36
mu ~= nu (0.2940444606850331): th(0.2882536507371878)=6.002319995574921E-34
Fitness changed from 6.056186093209826E-34 to 6.002319995574921E-34
Iteration 38 complete. Error: 6.002319995574921E-34 Total: 2.1925; Orientation: 0.0006; Line Search: 2.0463
Zero gradient: 5.567293113811845E-19
th(0)=6.002319995574921E-34;dx=-3.099475261509679E-37
Armijo: th(0.6355789068173884)=6.121226231166875E-34; dx=-2.3440206935890557E-37 evalInputDelta=-1.189062355919541E-35
Armijo: th(0.3177894534086942)=6.1395080313039585E-34; dx=-2.3506236661542705E-37 evalInputDelta=-1.3718803572903752E-35
Armijo: th(0.10592981780289806)=6.1320560198705304E-34; dx=-2.362623313817615E-37 evalInputDelta=-1.2973602429560944E-35
Armijo: th(0.026482454450724516)=6.138630362291628E-34; dx=-2.365571970303531E-37 evalInputDelta=-1.363103667167066E-35
Armijo: th(0.005296490890144903)=6.002319995574921E-34; dx=-3.099475261509679E-37 evalInputDelta=0.0
Armijo: th(8.827484816908172E-4)=6.002319995574921E-34; dx=-3.099475261509679E-37 evalInputDelta=0.0
Armijo: th(1.2610692595583101E-4)=6.002319995574921E-34; dx=-3.099475261509679E-37 evalInputDelta=0.0
Armijo: th(1.5763365744478877E-5)=6.002319995574921E-34; dx=-3.099475261509679E-37 evalInputDelta=0.0
Armijo: th(1.7514850827198753E-6)=6.002319995574921E-34; dx=-3.099475261509679E-37 evalInputDelta=0.0
WOLFE (weak): th(1.7514850827198754E-7)=6.002319995574921E-34; dx=-3.099475261509679E-37 evalInputDelta=0.0
Armijo: th(9.633167954959314E-7)=6.002319995574921E-34; dx=-3.099475261509679E-37 evalInputDelta=0.0
WOLFE (weak): th(5.692326518839595E-7)=6.002319995574921E-34; dx=-3.099475261509679E-37 evalInputDelta=0.0
Armijo: th(7.662747236899455E-7)=6.002319995574921E-34; dx=-3.099475261509679E-37 evalInputDelta=0.0
WOLFE (weak): th(6.677536877869525E-7)=6.002319995574921E-34; dx=-3.099475261509679E-37 evalInputDelta=0.0
Armijo: th(7.17014205738449E-7)=6.002319995574921E-34; dx=-3.099475261509679E-37 evalInputDelta=0.0
Armijo: th(6.923839467627008E-7)=6.002319995574921E-34; dx=-3.099475261509679E-37 evalInputDelta=0.0
WOLFE (weak): th(6.800688172748266E-7)=6.002319995574921E-34; dx=-3.099475261509679E-37 evalInputDelta=0.0
WOLFE (weak): th(6.862263820187638E-7)=6.002319995574921E-34; dx=-3.099475261509679E-37 evalInputDelta=0.0
mu ~= nu (6.862263820187638E-7): th(0.0)=6.002319995574921E-34
Fitness changed from 6.002319995574921E-34 to 6.002319995574921E-34
Static Iteration Total: 3.5819; Orientation: 0.0006; Line Search: 3.4365
Iteration 39 failed. Error: 6.002319995574921E-34
Previous Error: 0.0 -> 6.002319995574921E-34
Optimization terminated 39
Final threshold in iteration 39: 6.002319995574921E-34 (> 0.0) after 28.261s (< 30.000s)

Returns

    6.002319995574921E-34

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 33.49 seconds (0.000 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: 12885340655579
Reset training subject: 12885487959869
Constructing line search parameters: GD
F(0.0) = LineSearchPoint{point=PointSample{avg=212.18520841134242}, derivative=-226.0780380333386}
New Minimum: 212.18520841134242 > 212.18520838873462
F(1.0E-10) = LineSearchPoint{point=PointSample{avg=212.18520838873462}, derivative=-226.0780380212936}, evalInputDelta = -2.2607792971029994E-8
New Minimum: 212.18520838873462 > 212.1852082530878
F(7.000000000000001E-10) = LineSearchPoint{point=PointSample{avg=212.1852082530878}, derivative=-226.07803794902298}, evalInputDelta = -1.5825460764062882E-7
New Minimum: 212.1852082530878 > 212.18520730356005
F(4.900000000000001E-9) = LineSearchPoint{point=PointSample{avg=212.18520730356005}, derivative=-226.07803744312858}, evalInputDelta = -1.1077823671712395E-6
New Minimum: 212.18520730356005 > 212.18520065686585
F(3.430000000000001E-8) = LineSearchPoint{point=PointSample{avg=212.18520065686585}, derivative=-226.07803390187087}, evalInputDelta = -7.754476570198676E-6
New Minimum: 212.18520065686585 > 212.18515413000898
F(2.4010000000000004E-7) = LineSearchPoint{point=PointSample{avg=212.18515413000898}, derivative=-226.07800911306427}, evalInputDelta = -5.4281333433436885E-5
New Minimum: 212.18515413000898 > 212.18482844215407
F(1.6807000000000003E-6) = LineSearchPoint{point=PointSample{avg=212.18482844215407}, derivative=-226.07783559141717}, evalInputDelta = -3.7996918834437565E-4
New Minimum: 212.18482844215407 > 212.18254863416877
F(1.1764900000000001E-5) = LineSearchPoint{point=PointSample{avg=212.18254863416877}, derivative=-226.0766209398882}, evalInputDelta = -0.002659777173647626
New Minimum: 212.18254863416877 > 212.1665903212379
F(8.235430000000001E-5) = LineSearchPoint{point=PointSample{avg=212.1665903212379}, derivative=-226.06811837918767}, evalInputDelta = -0.018618090104524754
New Minimum: 212.1665903212379 > 212.05489893606045
F(5.764801000000001E-4) = LineSearchPoint{point=PointSample{avg=212.05489893606045}, derivative=-226.00860045428112}, evalInputDelta = -0.1303094752819618
New Minimum: 212.05489893606045 > 211.2738827014013
F(0.004035360700000001) = LineSearchPoint{point=PointSample{avg=211.2738827014013}, derivative=-225.59197497993384}, evalInputDelta = -0.9113257099411101
New Minimum: 211.2738827014013 > 205.84711867636662
F(0.028247524900000005) = LineSearchPoint{point=PointSample{avg=205.84711867636662}, derivative=-222.6755966595061}, evalInputDelta = -6.338089734975796
New Minimum: 205.84711867636662 > 169.83690176250246
F(0.19773267430000002) = LineSearchPoint{point=PointSample{avg=169.83690176250246}, derivative=-202.2609484165097}, evalInputDelta = -42.34830664883995
New Minimum: 169.83690176250246 > 14.644815173007995
F(1.3841287201) = LineSearchPoint{point=PointSample{avg=14.644815173007995}, derivative=-59.35841071553579}, evalInputDelta = -197.54039323833442
F(9.688901040700001) = LineSearchPoint{point=PointSample{avg=3675.3923676167306}, derivative=940.9593531912811}, evalInputDelta = 3463.207159205388
F(0.7453000800538463) = LineSearchPoint{point=PointSample{avg=77.14280783996868}, derivative=-136.30593101606001}, evalInputDelta = -135.04240057137372
F(5.217100560376924) = LineSearchPoint{point=PointSample{avg=671.938733889908}, derivative=402.3267110876109}, evalInputDelta = 459.7535254785656
F(0.40131542772130185) = LineSearchPoint{point=PointSample{avg=131.15616236712236}, derivative=-177.73921117788083}, evalInputDelta = -81.02904604422005
F(2.809207994049113) = LineSearchPoint{point=PointSample{avg=52.36334257772447}, derivative=112.29374995486498}, evalInputDelta = -159.82186583361795
52.36334257772447 <= 212.18520841134242
New Minimum: 14.644815173007995 > 0.018858497918050186
F(1.8769302118778746) = LineSearchPoint{point=PointSample{avg=0.018858497918050186}, derivative=-1.4434980988298207E-13}, evalInputDelta = -212.16634991342437
Left bracket at 1.8769302118778746
Converged to left
Fitness changed from 212.18520841134242 to 0.018858497918050186
Iteration 1 complete. Error: 0.018858497918050186 Total: 3.5218; Orientation: 0.0006; Line Search: 3.0834
F(0.0) = LineSearchPoint{point=PointSample{avg=0.018858497918050186}, derivative=-0.020055571316158392}
New Minimum: 0.018858497918050186 > 3.2444553298311927E-6
F(1.8769302118778746) = LineSearchPoint{point=PointSample{avg=3.2444553298311927E-6}, derivative=-3.601583332398692E-5}, evalInputDelta = -0.018855253462720354
F(13.138511483145122) = LineSearchPoint{point=PointSample{avg=0.6759532024750488}, derivative=0.12008131706368225}, evalInputDelta = 0.6570947045569986
F(1.0106547294727017) = LineSearchPoint{point=PointSample{avg=0.004036547954123597}, derivative=-0.009275810671555234}, evalInputDelta = -0.014821949963926589
F(7.074583106308912) = LineSearchPoint{point=PointSample{avg=0.1438917858096529}, derivative=0.05540275319606352}, evalInputDelta = 0.1250332878916027
F(0.544198700485301) = LineSearchPoint{point=PointSample{avg=0.009523679075704575}, derivative=-0.014251084815218213}, evalInputDelta = -0.009334818842345612
F(3.8093909033971065) = LineSearchPoint{point=PointSample{avg=0.01984944024834897}, derivative=0.020575834190422637}, evalInputDelta = 9.90942330298783E-4
F(0.2930300694920851) = LineSearchPoint{point=PointSample{avg=0.01343954413769416}, derivative=-0.016930078584882907}, evalInputDelta = -0.005418953780356027
F(2.051210486444596) = LineSearchPoint{point=PointSample{avg=1.589518526537621E-4}, derivative=0.001822877802769875}, evalInputDelta = -0.018699546065396425
1.589518526537621E-4 <= 0.018858497918050186
New Minimum: 3.2444553298311927E-6 > 3.1836487418332534E-6
F(1.8803068705519255) = LineSearchPoint{point=PointSample{avg=3.1836487418332534E-6}, derivative=3.415236843329339E-18}, evalInputDelta = -0.01885531426930835
Right bracket at 1.8803068705519255
Converged to right
Fitness changed from 0.018858497918050186 to 3.1836487418332534E-6
Iteration 2 complete. Error: 3.1836487418332534E-6 Total: 1.7573; Orientation: 0.0005; Line Search: 1.6112
F(0.0) = LineSearchPoint{point=PointSample{avg=3.1836487418332534E-6}, derivative=-3.387607620879966E-6}
New Minimum: 3.1836487418332534E-6 > 6.789139314167096E-10
F(1.8803068705519255) = LineSearchPoint{point=PointSample{avg=6.789139314167096E-10}, derivative=2.0221318819656785E-9}, evalInputDelta = -3.1829698279018366E-6
6.789139314167096E-10 <= 3.1836487418332534E-6
Converged to right
Fitness changed from 3.1836487418332534E-6 to 6.789139314167096E-10
Iteration 3 complete. Error: 6.789139314167096E-10 Total: 0.4377; Orientation: 0.0003; Line Search: 0.2926
F(0.0) = LineSearchPoint{point=PointSample{avg=6.789139314167096E-10}, derivative=-7.225179379010447E-10}
New Minimum: 6.789139314167096E-10 > 1.6439222660381853E-13
F(1.8803068705519255) = LineSearchPoint{point=PointSample{avg=1.6439222660381853E-13}, derivative=5.618042289710945E-13}, evalInputDelta = -6.787495391901058E-10
1.6439222660381853E-13 <= 6.789139314167096E-10
Converged to right
Fitness changed from 6.789139314167096E-10 to 1.6439222660381853E-13
Iteration 4 complete. Error: 1.6439222660381853E-13 Total: 0.4372; Orientation: 0.0004; Line Search: 0.2914
Low gradient: 4.1830843994077016E-7
F(0.0) = LineSearchPoint{point=PointSample{avg=1.6439222660381853E-13}, derivative=-1.749819509256809E-13}
New Minimum: 1.6439222660381853E-13 > 4.350561929694833E-17
F(1.8803068705519255) = LineSearchPoint{point=PointSample{avg=4.350561929694833E-17}, derivative=1.7142021544709056E-16}, evalInputDelta = -1.643487209845216E-13
4.350561929694833E-17 <= 1.6439222660381853E-13
Converged to right
Fitness changed from 1.6439222660381853E-13 to 4.350561929694833E-17
Iteration 5 complete. Error: 4.350561929694833E-17 Total: 0.4373; Orientation: 0.0006; Line Search: 0.2916
Low gradient: 6.806580847795214E-9
F(0.0) = LineSearchPoint{point=PointSample{avg=4.350561929694833E-17}, derivative=-4.632954283757262E-17}
New Minimum: 4.350561929694833E-17 > 1.2326324306803337E-20
F(1.8803068705519255) = LineSearchPoint{point=PointSample{avg=1.2326324306803337E-20}, derivative=6.763344453416805E-20}, evalInputDelta = -4.349329297264153E-17
1.2326324306803337E-20 <= 4.350561929694833E-

...skipping 20089 bytes...

(0.3070930420873415) = LineSearchPoint{point=PointSample{avg=3.076818648930176E-34}, derivative=-1.8511500452269513E-37}, evalInputDelta = -4.242000298997568E-36
F(2.1496512946113904) = LineSearchPoint{point=PointSample{avg=3.4200032570902816E-34}, derivative=-1.0018876462704323E-37}, evalInputDelta = 3.0076460517012997E-35
F(0.16535779189318386) = LineSearchPoint{point=PointSample{avg=3.0802921020366046E-34}, derivative=-1.85306619728307E-37}, evalInputDelta = -3.8946549883547084E-36
F(1.157504543252287) = LineSearchPoint{point=PointSample{avg=3.1729867508199125E-34}, derivative=-1.0612504065548044E-37}, evalInputDelta = 5.374809889976083E-36
F(0.0890388110194067) = LineSearchPoint{point=PointSample{avg=3.11594691665687E-34}, derivative=-1.8629680089568645E-37}, evalInputDelta = -3.2917352632818195E-37
New Minimum: 3.0466902835980736E-34 > 3.03409042191746E-34
F(0.6232716771358469) = LineSearchPoint{point=PointSample{avg=3.03409042191746E-34}, derivative=-1.8340605107830987E-37}, evalInputDelta = -8.514823000269146E-36
F(4.362901739950928) = LineSearchPoint{point=PointSample{avg=4.107004396186049E-34}, derivative=-8.990262479112855E-38}, evalInputDelta = 9.877657442658978E-35
F(0.3356078261500714) = LineSearchPoint{point=PointSample{avg=3.076818648930176E-34}, derivative=-1.8511500452269513E-37}, evalInputDelta = -4.242000298997568E-36
F(2.3492547830504997) = LineSearchPoint{point=PointSample{avg=3.633090607883678E-34}, derivative=-9.99244295803799E-38}, evalInputDelta = 5.138519559635262E-35
F(0.1807119063885) = LineSearchPoint{point=PointSample{avg=3.080291976650541E-34}, derivative=-1.8530632329134245E-37}, evalInputDelta = -3.8946675269610855E-36
F(1.2649833447195) = LineSearchPoint{point=PointSample{avg=3.168569550245379E-34}, derivative=-1.0596637868927782E-37}, evalInputDelta = 4.933089832522756E-36
F(0.09730641113226923) = LineSearchPoint{point=PointSample{avg=3.11594691665687E-34}, derivative=-1.8629680089568645E-37}, evalInputDelta = -3.2917352632818195E-37
F(0.6811448779258846) = LineSearchPoint{point=PointSample{avg=3.03409042191746E-34}, derivative=-1.8340605107830987E-37}, evalInputDelta = -8.514823000269146E-36
F(4.768014145481192) = LineSearchPoint{point=PointSample{avg=4.16822649923488E-34}, derivative=-8.809863293575325E-38}, evalInputDelta = 1.0489878473147286E-34
F(0.36677031888316863) = LineSearchPoint{point=PointSample{avg=3.0673687526697165E-34}, derivative=-1.8467609434392637E-37}, evalInputDelta = -5.186989925043519E-36
F(2.5673922321821805) = LineSearchPoint{point=PointSample{avg=3.7348461719203606E-34}, derivative=-9.898709451238975E-38}, evalInputDelta = 6.156075200002089E-35
F(0.19749171016786005) = LineSearchPoint{point=PointSample{avg=3.076868101193852E-34}, derivative=-1.851443504574605E-37}, evalInputDelta = -4.237055072629947E-36
F(1.3824419711750204) = LineSearchPoint{point=PointSample{avg=3.1679211538307684E-34}, derivative=-1.058847665663064E-37}, evalInputDelta = 4.868250191061679E-36
F(0.10634169009038619) = LineSearchPoint{point=PointSample{avg=3.11594691665687E-34}, derivative=-1.8629680089568645E-37}, evalInputDelta = -3.2917352632818195E-37
F(0.7443918306327033) = LineSearchPoint{point=PointSample{avg=3.165018616910415E-34}, derivative=-1.0729677098528868E-37}, evalInputDelta = 4.5779964990263316E-36
F(0.05726091004866948) = LineSearchPoint{point=PointSample{avg=3.11594691665687E-34}, derivative=-1.8629680089568645E-37}, evalInputDelta = -3.2917352632818195E-37
F(0.40082637034068636) = LineSearchPoint{point=PointSample{avg=3.058603631500594E-34}, derivative=-1.8518037089222819E-37}, evalInputDelta = -6.063502041955766E-36
F(2.8057845923848044) = LineSearchPoint{point=PointSample{avg=3.8251155449385874E-34}, derivative=-9.692547047568988E-38}, evalInputDelta = 7.058768930184357E-35
F(0.21582958402960034) = LineSearchPoint{point=PointSample{avg=3.076836002361446E-34}, derivative=-1.8512844629379923E-37}, evalInputDelta = -4.2402649558705704E-36
F(1.5108070882072024) = LineSearchPoint{point=PointSample{avg=3.198598776996143E-34}, derivative=-1.0520128682453918E-37}, evalInputDelta = 7.936012507599154E-36
F(0.11621592986209249) = LineSearchPoint{point=PointSample{avg=3.1153957529554243E-34}, derivative=-1.8627886461964363E-37}, evalInputDelta = -3.8428989647273474E-37
F(0.8135115090346474) = LineSearchPoint{point=PointSample{avg=3.167051542962824E-34}, derivative=-1.0701373057555239E-37}, evalInputDelta = 4.7812891042672554E-36
F(0.06257780838728057) = LineSearchPoint{point=PointSample{avg=3.11594691665687E-34}, derivative=-1.8629680089568645E-37}, evalInputDelta = -3.2917352632818195E-37
F(0.438044658710964) = LineSearchPoint{point=PointSample{avg=3.0585934668703317E-34}, derivative=-1.8515593236234312E-37}, evalInputDelta = -6.064518504981998E-36
F(3.066312610976748) = LineSearchPoint{point=PointSample{avg=3.903787141700389E-34}, derivative=-9.63972392501502E-38}, evalInputDelta = 7.845484897802372E-35
F(0.23587020084436522) = LineSearchPoint{point=PointSample{avg=3.0768357683074595E-34}, derivative=-1.8512878610216461E-37}, evalInputDelta = -4.240288361269212E-36
F(1.6510914059105566) = LineSearchPoint{point=PointSample{avg=3.2050356628547172E-34}, derivative=-1.0488613895778085E-37}, evalInputDelta = 8.57970109345656E-36
F(0.12700703122388896) = LineSearchPoint{point=PointSample{avg=3.1153957529554243E-34}, derivative=-1.8627886461964363E-37}, evalInputDelta = -3.8428989647273474E-37
F(0.8890492185672227) = LineSearchPoint{point=PointSample{avg=3.165918587924011E-34}, derivative=-1.069699626367849E-37}, evalInputDelta = 4.667993600385955E-36
F(0.0683884014282479) = LineSearchPoint{point=PointSample{avg=3.11594691665687E-34}, derivative=-1.8629680089568645E-37}, evalInputDelta = -3.2917352632818195E-37
F(0.4787188099977353) = LineSearchPoint{point=PointSample{avg=3.057360871705924E-34}, derivative=-1.850176809477131E-37}, evalInputDelta = -6.187778021422776E-36
F(3.351031669984147) = LineSearchPoint{point=PointSample{avg=3.9224787264823555E-34}, derivative=-9.59976479387361E-38}, evalInputDelta = 8.032400745622039E-35
F(0.2577716669218575) = LineSearchPoint{point=PointSample{avg=3.0768357683074595E-34}, derivative=-1.8512878610216461E-37}, evalInputDelta = -4.240288361269212E-36
F(1.8044016684530024) = LineSearchPoint{point=PointSample{avg=3.2433734383199057E-34}, derivative=-1.0370052859758479E-37}, evalInputDelta = 1.241347863997541E-35
F(0.13880012834253866) = LineSearchPoint{point=PointSample{avg=3.0803349004798134E-34}, derivative=-1.8532065211308394E-37}, evalInputDelta = -3.89037514403382E-36
F(0.9716008983977706) = LineSearchPoint{point=PointSample{avg=3.1752315291662036E-34}, derivative=-1.0629697909454315E-37}, evalInputDelta = 5.599287724605191E-36
F(0.07473853064598236) = LineSearchPoint{point=PointSample{avg=3.11594691665687E-34}, derivative=-1.8629680089568645E-37}, evalInputDelta = -3.2917352632818195E-37
F(0.5231697145218765) = LineSearchPoint{point=PointSample{avg=3.0466902835980736E-34}, derivative=-1.841408394896371E-37}, evalInputDelta = -7.254836832207806E-36
F(3.662188001653136) = LineSearchPoint{point=PointSample{avg=4.028789305006378E-34}, derivative=-9.397200657056762E-38}, evalInputDelta = 9.095506530862268E-35
F(0.28170676935793354) = LineSearchPoint{point=PointSample{avg=3.0768272086188177E-34}, derivative=-1.851309347334647E-37}, evalInputDelta = -4.24114433013339E-36
F(1.9719473855055347) = LineSearchPoint{point=PointSample{avg=3.3171842771259288E-34}, derivative=-1.0261063836720167E-37}, evalInputDelta = 1.9794562520577711E-35
F(0.15168826042350267) = LineSearchPoint{point=PointSample{avg=3.0803349004798134E-34}, derivative=-1.8532065211308394E-37}, evalInputDelta = -3.89037514403382E-36
Loops = 52
F(20.038533199207624) = LineSearchPoint{point=PointSample{avg=1.4353300378072694E-33}, derivative=1.7068300398078001E-37}, evalInputDelta = 1.1234061726152542E-33
1.4353300378072694E-33 > 3.0803349004798134E-34
Fitness changed from 3.1192386519201516E-34 to 3.03409042191746E-34
Iteration 14 complete. Error: 3.03409042191746E-34 Total: 8.5856; Orientation: 0.0005; Line Search: 8.4395
Final threshold in iteration 14: 3.03409042191746E-34 (> 0.0) after 33.493s (< 30.000s)

Returns

    3.03409042191746E-34

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.09 seconds (0.356 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: 12918879205363
Reset training subject: 12919026125280
Adding measurement 168f637d to history. Total: 0
LBFGS Accumulation History: 1 points
Constructing line search parameters: GD
Non-optimal measurement 212.18520841134242 < 212.18520841134242. Total: 1
th(0)=212.18520841134242;dx=-226.0780380333386
Adding measurement 4dcfaf1d to history. Total: 1
New Minimum: 212.18520841134242 > 4.656746390465428
WOLF (strong): th(2.154434690031884)=4.656746390465428; dx=33.42567963875139 evalInputDelta=207.528462020877
Non-optimal measurement 38.53550095778007 < 4.656746390465428. Total: 2
END: th(1.077217345015942)=38.53550095778007; dx=-96.32617919729364 evalInputDelta=173.64970745356234
Fitness changed from 212.18520841134242 to 4.656746390465428
Iteration 1 complete. Error: 4.656746390465428 Total: 0.8758; Orientation: 0.0013; Line Search: 0.4404
Non-optimal measurement 4.656746390465428 < 4.656746390465428. Total: 2
LBFGS Accumulation History: 2 points
Non-optimal measurement 4.656746390465428 < 4.656746390465428. Total: 2
th(0)=4.656746390465428;dx=-4.968417321704911
Adding measurement 14f5c86b to history. Total: 2
New Minimum: 4.656746390465428 > 0.2645186862755334
WOLF (strong): th(2.3207944168063896)=0.2645186862755334; dx=1.1833102287345874 evalInputDelta=4.392227704189895
Non-optimal measurement 0.6760206692737267 < 0.2645186862755334. Total: 3
END: th(1.1603972084031948)=0.6760206692737267; dx=-1.892553546485168 evalInputDelta=3.9807257211917015
Fitness changed from 4.656746390465428 to 0.2645186862755334
Iteration 2 complete. Error: 0.2645186862755334 Total: 0.5817; Orientation: 0.0011; Line Search: 0.4362
Non-optimal measurement 0.2645186862755334 < 0.2645186862755334. Total: 3
LBFGS Accumulation History: 3 points
Non-optimal measurement 0.2645186862755334 < 0.2645186862755334. Total: 3
th(0)=0.2645186862755334;dx=-0.28246923367202054
Adding measurement 782594e1 to history. Total: 3
New Minimum: 0.2645186862755334 > 0.029693230409898002
WOLF (strong): th(2.5000000000000004)=0.029693230409898002; dx=0.09460886897951223 evalInputDelta=0.23482545586563539
Adding measurement 64f38f35 to history. Total: 4
New Minimum: 0.029693230409898002 > 0.029269051264111723
END: th(1.2500000000000002)=0.029269051264111723; dx=-0.09393018234625411 evalInputDelta=0.23524963501142165
Fitness changed from 0.2645186862755334 to 0.029269051264111723
Iteration 3 complete. Error: 0.029269051264111723 Total: 0.5850; Orientation: 0.0011; Line Search: 0.4386
Non-optimal measurement 0.029269051264111723 < 0.029269051264111723. Total: 5
Rejected: LBFGS Orientation magnitude: 3.312e-01, gradient 1.768e-01, dot -1.000; [352b554b-af9a-4c9b-9c25-d1f4c343857e = 1.000/1.000e+00]
Orientation rejected. Popping history element from 0.029269051264111723, 0.029693230409898002, 0.2645186862755334, 4.656746390465428, 212.18520841134242
Rejected: LBFGS Orientation magnitude: 3.312e-01, gradient 1.768e-01, dot -1.000; [352b554b-af9a-4c9b-9c25-d1f4c343857e = 1.000/1.000e+00]
Orientation rejected. Popping history element from 0.029269051264111723, 0.029693230409898002, 0.2645186862755334, 4.656746390465428
LBFGS Accumulation History: 3 points
Removed measurement 64f38f35 to history. Total: 4
Removed measurement 782594e1 to history. Total: 3
Adding measurement 3131ea1b to history. Total: 3
th(0)=0.029269051264111723;dx=-0.031245032844519585
Adding measurement 61d7c8e4 to history. Total: 4
New Minimum: 0.029269051264111723 > 0.00560540324601221
WOLF (strong): th(2.6930433625398553)=0.00560540324601221; dx=0.01367112493998296 evalInputDelta=0.023663648018099514
Adding measurement 3d8125e5 to history. Total: 5
New Minimum: 0.00560540324601221 > 0.0023170821810185325
END: th(1.3465216812699277)=0.0023170821810185325; dx=-0.008786953952268296 evalInputDelta=0.02695196908309319
Fitness changed from 0.029269051264111723 to 0.0023170821810185325
Iteration 4 complete. Error: 0.0023170821810185325 Total: 0.9279; Orientation: 0.3439; Line Search: 0.4390
Non-optimal measurement 0.0023170821810185325 < 0.0023170821810185325. Total: 6
Rejected: LBFGS Orientation magnitude: 9.320e-02, gradient 4.972e-02, dot -1.000; [352b554b-af9a-4c9b-9c25-d1f4c343857e = 1.000/1.000e+00]
Orientation rejected. Popping history element from 0.0023170821810185325, 0.00560540324601221, 0.029269051264111723, 0.2645186862755334, 4.656746390465428, 212.18520841134242
Rejected: LBFGS Orientation magnitude: 9.320e-02, gradient 4.972e-02, dot -1.000; [352b554b-af9a-4c9b-9c25-d1f4c343857e = 1.000/1.000e+00]
Orientation rejected. Popping history element from 0.0023170821810185325, 0.00560540324601221, 0.029269051264111723, 0.2645186862755334, 4.656746390465428
Rejected: LBFGS Orientation magnitude: 9.320e-02, gradient 4.972e-02, dot -1.000; [352b554b-af9a-4c9b-9c25-d1f4c343857e = 1.000/1.000e+00]
Orientation rejected. Popping history element from 0.0023170821810185325, 0.00560540324601221, 0.029269051264111723, 0.2645186862755334
LBFGS Accumulation History: 3 points
Removed measurement 3d8125e5 to history. Total: 5
Removed measurement 61d7c8e4 to history. Total: 4
Removed measurement 3131ea1b to history. Total: 3
Adding measurement 5fc92962 to history. Total: 3
th(0)=0.0023170821810185325;dx=-0.0024724606314712313
Adding measurement 12f806dd to history. Total: 4
New Minimum: 0.0023170821810185325 > 6.956964708561501E-4
WOLF (strong): th(2.9009930210079875)=6.956964708561501E-4; dx=0.0013546463531045724 evalInputDelta=0.0016213857101623824
Adding measurement 764f574a to history. Total: 5
New Minimum: 6.956964708561501E-4 > 1.1858799432417274E-4
END: th(1.4504965105039938)=1.1858799432417274E-4; dx=-5.589071391833287E-4 evalInputDelta=0.0021984941866943597
Fitness changed from 0.0023170821810185325 to 1.1858799432417274E-4
Iteration 5 complete. Error: 1.1858799432417274E-4 Total: 1.4126; Orientation: 0.8258; Line Search: 0.4422
Non-optimal measurement 1.1858799432417274E-4 < 1.1858799432417274E-4. Total: 6
Rejected: LBFGS Orientation magnitude: 2.109e-02, gradient 1.125e-02, dot -1.000; [352b554b-af9a-4c9b-9c25-d1f4c343857e = 1.000/1.000e+00]
Orientation rejected. Popping history element from 1.1858799432417274E-4, 6.956964708561501E-4, 0.0023170821810185325, 0.2645186862755334, 4.656746390465428, 212.18520841134242
Rejected: LBFGS Orientation magnitude: 2.109e-02, gradient 1.125e-02, dot -1.000; [352b554b-af9a-4c9b-9c25-d1f4c343857e = 1.000/1.000e+00]
Orientation rejected. Popping history element from 1.1858799432417274E-4, 6.956964708561501E-4, 0.0023170821810185325, 0.2645186862755334, 4.656746390465428
Rejected: LBFGS Orientation magnitude: 2.109e-02, gradient 1.125e-02, dot -1.000; [352b554b-af9a-4c9b-9c25-d1f4c343857e = 1.000/1.000e+00]
Orientation rejected. Popping history element from 1.1858799432417274E-4, 6.956964708561501E-4, 0.0023170821810185325, 0.2645186862755334
LBFGS Accumulation History: 3 points
Removed measurement 764f574a to history. Total: 5
Removed measurement 12f806dd to history. Total: 4
Removed measurement 5fc92962 to history. Total: 3
Adding measurement 264070a1 to history. Total: 3
th(0)=1.1858799432417274E-4;dx=-1.2646694607617968E-4
Adding measurement 4ea95535 to history. Total: 4
New Minimum: 1.1858799432417274E-4 > 5.267802843781339E-5
WOLF (strong): th(3.125000000000001)=5.267802843781339E-5; dx=8.428456790890952E-5 evalInputDelta=6.590996588635935E-5
Adding measurement 383fe4af to history. Total: 5
New Minimum: 5.267802843781339E-5 > 3.3082012305675434E-6
END: th(1.5625000000000004)=3.3082012305675434E-6; dx=-2.1091189083635053E-5 evalInputDelta=1.152797930936052E-4
Fitness changed from 1.1858799432417274E-4 to 3.3082012305675434E-6
Iteration 6 complete. Error: 3.3082012305675434E-6 Total: 1.2414; Orientation: 0.6578; Line Search: 0.4397
Non-optimal measurement 3.3082012305675434E-6 < 3.3082012305675434E-6. Total: 6
Rejected: LBFGS Orientation magnitude: 3.524e-03, gradient 1.877e-03, dot -1.000; [352b554b-af9a-4c9b-9c25-d1f4c343857e = 1.000/1.000e+00]
Orientation rejected. Popping history element from 3.3082012305675434E-6, 5.267802843781339E-5, 1.1858799432417274E-4, 0.2645186862755334, 4.656746390465428, 212.18520841134242
Rejected: LBFGS Orientation magnitude: 3.524e-0

...skipping 30812 bytes...

3
th(0)=3.258108043507526E-33;dx=-6.80460823819124E-36
Non-optimal measurement 9.284583130184312E-33 < 3.258108043507526E-33. Total: 4
Armijo: th(15.219474298207926)=9.284583130184312E-33; dx=1.79255811875981E-35 evalInputDelta=-6.026475086676786E-33
Non-optimal measurement 4.943258213081933E-33 < 3.258108043507526E-33. Total: 4
Armijo: th(7.609737149103963)=4.943258213081933E-33; dx=5.4991939921302976E-36 evalInputDelta=-1.6851501695744066E-33
Adding measurement 2c5fc796 to history. Total: 4
New Minimum: 3.258108043507526E-33 > 2.2120638440689144E-33
END: th(2.536579049701321)=2.2120638440689144E-33; dx=-2.819239422236039E-36 evalInputDelta=1.0460441994386117E-33
Fitness changed from 3.258108043507526E-33 to 2.2120638440689144E-33
Iteration 25 complete. Error: 2.2120638440689144E-33 Total: 1.1836; Orientation: 0.4532; Line Search: 0.5862
Non-optimal measurement 2.2120638440689144E-33 < 2.2120638440689144E-33. Total: 5
Rejected: LBFGS Orientation magnitude: 9.408e-18, gradient 1.808e-18, dot -0.871; [352b554b-af9a-4c9b-9c25-d1f4c343857e = 1.000/1.000e+00]
Orientation rejected. Popping history element from 2.2120638440689144E-33, 3.258108043507526E-33, 0.2645186862755334, 4.656746390465428, 212.18520841134242
Rejected: LBFGS Orientation magnitude: 9.398e-18, gradient 1.808e-18, dot -0.871; [352b554b-af9a-4c9b-9c25-d1f4c343857e = 1.000/1.000e+00]
Orientation rejected. Popping history element from 2.2120638440689144E-33, 3.258108043507526E-33, 0.2645186862755334, 4.656746390465428
LBFGS Accumulation History: 3 points
Removed measurement 2c5fc796 to history. Total: 4
Removed measurement 32a8d2d9 to history. Total: 3
Adding measurement 2e05e5f to history. Total: 3
th(0)=2.2120638440689144E-33;dx=-3.270551179830724E-36
Adding measurement 6f09ef79 to history. Total: 4
New Minimum: 2.2120638440689144E-33 > 1.7003341074253846E-33
END: th(5.464893898684636)=1.7003341074253846E-33; dx=-2.1684181275846008E-36 evalInputDelta=5.117297366435298E-34
Fitness changed from 2.2120638440689144E-33 to 1.7003341074253846E-33
Iteration 26 complete. Error: 1.7003341074253846E-33 Total: 0.5912; Orientation: 0.1535; Line Search: 0.2927
Non-optimal measurement 1.7003341074253846E-33 < 1.7003341074253846E-33. Total: 5
Rejected: LBFGS Orientation magnitude: 2.435e-17, gradient 1.466e-18, dot -0.861; [352b554b-af9a-4c9b-9c25-d1f4c343857e = 1.000/1.000e+00]
Orientation rejected. Popping history element from 1.7003341074253846E-33, 2.2120638440689144E-33, 0.2645186862755334, 4.656746390465428, 212.18520841134242
Rejected: LBFGS Orientation magnitude: 2.434e-17, gradient 1.466e-18, dot -0.861; [352b554b-af9a-4c9b-9c25-d1f4c343857e = 1.000/1.000e+00]
Orientation rejected. Popping history element from 1.7003341074253846E-33, 2.2120638440689144E-33, 0.2645186862755334, 4.656746390465428
LBFGS Accumulation History: 3 points
Removed measurement 6f09ef79 to history. Total: 4
Removed measurement 2e05e5f to history. Total: 3
Adding measurement 727657d1 to history. Total: 3
th(0)=1.7003341074253846E-33;dx=-2.1492107642826087E-36
Non-optimal measurement 2.53425549777255E-33 < 1.7003341074253846E-33. Total: 4
Armijo: th(11.773756992669767)=2.53425549777255E-33; dx=5.300148394816576E-38 evalInputDelta=-8.339213903471652E-34
Adding measurement c339257 to history. Total: 4
New Minimum: 1.7003341074253846E-33 > 1.56902992434726E-33
END: th(5.886878496334884)=1.56902992434726E-33; dx=-1.0901986680416028E-36 evalInputDelta=1.3130418307812478E-34
Fitness changed from 1.7003341074253846E-33 to 1.56902992434726E-33
Iteration 27 complete. Error: 1.56902992434726E-33 Total: 1.2066; Orientation: 0.6225; Line Search: 0.4392
Non-optimal measurement 1.56902992434726E-33 < 1.56902992434726E-33. Total: 5
Rejected: LBFGS Orientation magnitude: 1.267e-17, gradient 1.390e-18, dot -0.687; [352b554b-af9a-4c9b-9c25-d1f4c343857e = 1.000/1.000e+00]
Orientation rejected. Popping history element from 1.56902992434726E-33, 1.7003341074253846E-33, 0.2645186862755334, 4.656746390465428, 212.18520841134242
Rejected: LBFGS Orientation magnitude: 1.266e-17, gradient 1.390e-18, dot -0.687; [352b554b-af9a-4c9b-9c25-d1f4c343857e = 1.000/1.000e+00]
Orientation rejected. Popping history element from 1.56902992434726E-33, 1.7003341074253846E-33, 0.2645186862755334, 4.656746390465428
LBFGS Accumulation History: 3 points
Removed measurement c339257 to history. Total: 4
Removed measurement 727657d1 to history. Total: 3
Adding measurement ba784a6 to history. Total: 3
th(0)=1.56902992434726E-33;dx=-1.9332206453543308E-36
Non-optimal measurement 3.653615921848595E-33 < 1.56902992434726E-33. Total: 4
Armijo: th(12.682895248506608)=3.653615921848595E-33; dx=2.4490375400703903E-36 evalInputDelta=-2.0845859975013353E-33
Non-optimal measurement 1.9481599422877138E-33 < 1.56902992434726E-33. Total: 4
Armijo: th(6.341447624253304)=1.9481599422877138E-33; dx=2.5175835658315628E-37 evalInputDelta=-3.791300179404539E-34
Adding measurement 6a675ce6 to history. Total: 4
New Minimum: 1.56902992434726E-33 > 1.0668110514750153E-33
END: th(2.113815874751101)=1.0668110514750153E-33; dx=-1.1779001585283236E-36 evalInputDelta=5.0221887287224456E-34
Fitness changed from 1.56902992434726E-33 to 1.0668110514750153E-33
Iteration 28 complete. Error: 1.0668110514750153E-33 Total: 0.9804; Orientation: 0.2505; Line Search: 0.5852
Non-optimal measurement 1.0668110514750153E-33 < 1.0668110514750153E-33. Total: 5
Rejected: LBFGS Orientation magnitude: 7.491e-18, gradient 9.696e-19, dot -0.900; [352b554b-af9a-4c9b-9c25-d1f4c343857e = 1.000/1.000e+00]
Orientation rejected. Popping history element from 1.0668110514750153E-33, 1.56902992434726E-33, 0.2645186862755334, 4.656746390465428, 212.18520841134242
Rejected: LBFGS Orientation magnitude: 7.487e-18, gradient 9.696e-19, dot -0.900; [352b554b-af9a-4c9b-9c25-d1f4c343857e = 1.000/1.000e+00]
Orientation rejected. Popping history element from 1.0668110514750153E-33, 1.56902992434726E-33, 0.2645186862755334, 4.656746390465428
LBFGS Accumulation History: 3 points
Removed measurement 6a675ce6 to history. Total: 4
Removed measurement ba784a6 to history. Total: 3
Adding measurement 20d509af to history. Total: 3
th(0)=1.0668110514750153E-33;dx=-9.401951616996053E-37
Non-optimal measurement 1.0738791792628185E-33 < 1.0668110514750153E-33. Total: 4
Armijo: th(4.554078248903864)=1.0738791792628185E-33; dx=-7.2241772245550445E-37 evalInputDelta=-7.068127787803248E-36
Adding measurement 7e535b0 to history. Total: 4
New Minimum: 1.0668110514750153E-33 > 1.0117797148154692E-33
END: th(2.277039124451932)=1.0117797148154692E-33; dx=-8.055002727968635E-37 evalInputDelta=5.503133665954609E-35
Fitness changed from 1.0668110514750153E-33 to 1.0117797148154692E-33
Iteration 29 complete. Error: 1.0117797148154692E-33 Total: 1.2203; Orientation: 0.6335; Line Search: 0.4427
Non-optimal measurement 1.0117797148154692E-33 < 1.0117797148154692E-33. Total: 5
Rejected: LBFGS Orientation magnitude: 2.465e-17, gradient 9.210e-19, dot -0.891; [352b554b-af9a-4c9b-9c25-d1f4c343857e = 1.000/1.000e+00]
Orientation rejected. Popping history element from 1.0117797148154692E-33, 1.0668110514750153E-33, 0.2645186862755334, 4.656746390465428, 212.18520841134242
Rejected: LBFGS Orientation magnitude: 2.464e-17, gradient 9.210e-19, dot -0.891; [352b554b-af9a-4c9b-9c25-d1f4c343857e = 1.000/1.000e+00]
Orientation rejected. Popping history element from 1.0117797148154692E-33, 1.0668110514750153E-33, 0.2645186862755334, 4.656746390465428
LBFGS Accumulation History: 3 points
Removed measurement 7e535b0 to history. Total: 4
Removed measurement 20d509af to history. Total: 3
Adding measurement 7f9370ed to history. Total: 3
th(0)=1.0117797148154692E-33;dx=-8.481820040766449E-37
Adding measurement 20c5f3b0 to history. Total: 4
New Minimum: 1.0117797148154692E-33 > 9.980611603428793E-34
END: th(4.905732080279071)=9.980611603428793E-34; dx=-6.091749754325729E-37 evalInputDelta=1.3718554472589852E-35
Fitness changed from 1.0117797148154692E-33 to 9.980611603428793E-34
Iteration 30 complete. Error: 9.980611603428793E-34 Total: 0.6622; Orientation: 0.2208; Line Search: 0.2942
Final threshold in iteration 30: 9.980611603428793E-34 (> 0.0) after 30.089s (< 30.000s)

Returns

    9.980611603428793E-34

Training Converged

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

    return TestUtil.compare(title + " vs Iteration", runs);
Logging
Plotting range=[1.0, -33.51797148051876], [38.0, 0.6680825866077258]; valueStats=DoubleSummaryStatistics{count=82, sum=9.924808, min=0.000000, average=0.121034, max=4.656746}
Plotting 38 points for GD
Plotting 14 points for CjGD
Plotting 30 points for LBFGS

Returns

Result

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

    return TestUtil.compareTime(title + " vs Time", runs);
Logging
Plotting range=[0.0, -33.51797148051876], [29.971, 0.6680825866077258]; valueStats=DoubleSummaryStatistics{count=82, sum=9.924808, min=0.000000, average=0.121034, max=4.656746}
Plotting 38 points for GD
Plotting 14 points for CjGD
Plotting 30 points for LBFGS

Returns

Result

Composite Learning

In this apply, attempt to train a network to emulate a randomized network given an example input/output. The target state is:

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

    RefList<double[]> temp_18_0037 = temp_18_0035.state();
    assert temp_18_0037 != null;
    String temp_18_0036 = temp_18_0037.stream().map(RefArrays::toString).reduce((a, b) -> a + "\n" + b).orElse("");
    temp_18_0037.freeRef();
    return temp_18_0036;

Returns

    

We simultaneously regress this target input:

TrainingTester.java:287 executed in 0.01 seconds (0.000 gc):

    return RefArrays.stream(RefUtil.addRef(input_target)).flatMap(x -> {
      RefStream<Tensor> temp_18_0006 = RefArrays.stream(RefUtil.addRef(x));
      if (null != x)
        RefUtil.freeRef(x);
      return temp_18_0006;
    }).map(x -> {
      String temp_18_0007 = x.prettyPrint();
      x.freeRef();
      return temp_18_0007;
    }).reduce((a, b) -> a + "\n" + b).orElse("");

Returns

    [
    	[ [ -0.464, -1.06, 0.3, -1.304, -0.324, 0.24, 0.764 ], [ 1.872, -0.66, 1.944, 0.132, -1.516, 1.716, 0.132 ], [ 0.956, 1.072, -0.08, 0.188, 1.684, 1.924, -1.68 ], [ 1.56, 1.428, 0.132, 0.364, 1.904, 1.264, -1.816 ], [ 1.88, -1.64, -1.448, -1.98, -1.112, -1.868, 0.204 ], [ -0.56, -0.036, -0.688, 0.376, -1.036, 0.42, -0.104 ], [ -0.596, -1.516, -1.008, -0.692, -0.468, 0.032, 1.008 ], [ -1.684, 1.572, 1.444, 0.124, 0.104, -0.336, -0.236 ], ... ],
    	[ [ 0.928, 0.624, 1.968, 1.6, 0.6, -1.6, 1.132 ], [ -0.372, 1.876, -0.188, -1.124, 1.148, 1.82, 1.7 ], [ 1.2, 1.68, -1.7, 0.74, 0.704, -0.544, 1.876 ], [ -1.476, 1.204, 1.904, 1.024, -0.748, 1.184, -1.596 ], [ -0.088, 1.42, -0.296, -1.94, -1.196, -0.948, 0.02 ], [ -0.616, 1.676, 0.816, -0.588, -0.796, 0.976, -1.788 ], [ -1.08, 0.752, -1.632, 0.708, 1.708, 0.056, -1.736 ], [ 1.892, 0.488, -1.968, 0.328, -0.052, 0.78, -0.184 ], ... ],
    	[ [ 0.788, -0.964, 0.156, 0.188, -0.332, -1.244, -0.908 ], [ 1.108, -1.492, -1.876, -1.152, -1.948, -1.024, -1.208 ], [ 1.14, -0.012, 0.656, -1.128, 0.204, -0.204, -0.08 ], [ -1.148, -1.98, -1.432, 0.344, -1.144, -1.032, -1.6 ], [ 1.824, -0.916, -1.832, -1.068, 0.528, -0.712, -0.108 ], [ -0.212, -0.24, -0.828, 1.964, -0.636, -1.116, 0.572 ], [ 0.308, 1.264, 1.152, -0.512, -0.36, 0.692, 0.316 ], [ 1.56, -0.52, 0.416, -0.272, -1.584, 0.732, 1.548 ], ... ],
    	[ [ 1.816, 1.856, -0.5, -1.792, 1.752, -0.232, 0.264 ], [ -1.98, 1.708, -1.896, 0.392, -1.36, 1.088, 1.372 ], [ 1.964, -1.828, -0.504, 0.68, 0.472, -0.624, -0.452 ], [ -0.504, 1.6, -0.58, -1.288, -1.168, 1.348, 1.912 ], [ 0.444, -0.6, -0.204, 0.796, 1.444, -0.66, -1.224 ], [ 1.94, -1.876, 1.508, -0.108, -0.56, 0.12, -1.804 ], [ -0.396, 0.964, -1.988, 0.884, -1.032, -0.264, 1.704 ], [ -0.584, 1.564, -0.656, -0.548, -1.364, -0.684, 1.904 ], ... ],
    	[ [ 1.052, -1.712, 1.796, 0.688, 1.46, -0.844, 1.628 ], [ 0.38, -1.776, -0.968, -0.676, -1.408, -0.692, -1.536 ], [ 1.328, -1.688, 1.248, -1.74, -1.224, -1.008, 1.112 ], [ -0.856, 1.62, -0.064, 1.36, -1.812, -0.56, 0.588 ], [ -1.128, -0.392, -0.708, -0.872, -0.488, -0.728, -1.036 ], [ -1.044, -1.788, -0.284, -0.056, -1.048, -1.84, 1.672 ], [ -0.128, -1.868, 1.32, 0.888, 0.852, -1.356, 0.616 ], [ 0.244, -0.544, -0.6, 0.408, 0.82, -0.344, 0.64 ], ... ],
    	[ [ -1.636, 0.852, -1.668, -1.764, 0.74, -1.252, 0.0 ], [ 0.436, -1.504, -1.296, -1.232, 0.372, 0.332, 0.376 ], [ -1.736, 0.512, 0.944, -0.164, -1.804, 1.928, 0.128 ], [ 0.704, 1.272, -0.252, 0.4, 0.976, -0.984, -1.416 ], [ 1.616, 0.956, 1.776, -1.916, -1.828, -0.492, -0.444 ], [ -1.86, -0.584, 0.032, -1.596, 1.596, -0.84, 0.26 ], [ 1.196, 0.336, -0.92, 0.112, -1.156, -1.156, 1.824 ], [ 0.076, 1.164, 1.816, -0.416, -1.592, 1.552, -1.304 ], ... ],
    	[ [ 0.388, -0.304, -1.892, 1.724, 0.684, -1.244, -0.248 ], [ 1.884, 0.608, 1.912, -0.004, -1.344, -1.036, 0.4 ], [ 1.872, 0.232, -0.884, 1.708, -1.752, -1.504, -0.58 ], [ -0.56, -1.228, -0.716, 0.992, 0.408, 1.148, 0.58 ], [ 1.196, -0.8, -0.012, 0.18, 1.084, 0.18, 1.276 ], [ 1.744, -1.924, -0.252, 0.492, 0.816, 0.124, 1.628 ], [ -0.304, -0.828, 1.232, 0.824, -0.184, -0.9, 1.632 ], [ -1.02, 1.176, 1.692, -1.572, 1.744, 0.712, 0.324 ], ... ],
    	[ [ 1.808, 0.956, 1.288, 1.456, 0.904, 0.684, 1.576 ], [ 0.376, 1.56, 0.668, 0.596, 0.616, 0.088, 0.532 ], [ -1.96, -2.0, 1.664, -0.684, -1.036, -1.648, -1.62 ], [ 1.608, 0.248, -1.108, -1.816, 0.74, -1.888, -0.352 ], [ -1.032, -0.276, -1.936, -0.604, -1.556, 0.284, 0.64 ], [ -1.508, -0.52, -0.556, -0.868, 1.568, -0.46, 0.116 ], [ -1.312, -1.924, 0.948, -1.66, -1.284, 1.2, 0.808 ], [ -0.6, 0.696, 0.936, -0.372, 1.388, 0.592, -1.492 ], ... ],
    	...
    ]
    [
    	[ [ -0.032, 1.88, -1.192, -0.612, 0.904, 1.576, 1.024 ], [ 1.188, 0.644, 0.088, -0.344, 1.184, -0.072, 0.744 ], [ 1.04, -0.676, 0.78, -0.064, 1.128, 0.412, -0.072 ], [ -1.172, -0.664, -0.268, -0.78, -1.86, -1.192, -1.372 ], [ 0.176, 1.352, -1.708, -0.96, 1.516, -0.856, -1.376 ], [ -0.456, 1.332, -1.104, 1.312, -0.128, -1.16, -0.572 ], [ 0.416, -1.508, -0.92, -1.384, -1.008, 0.64, 0.216 ], [ 1.332, -0.516, 1.08, 0.972, 0.292, -0.168, 1.196 ], ... ],
    	[ [ -0.316, 1.032, 0.784, 1.864, -1.032, -0.856, 1.24 ], [ 1.904, -1.656, -0.28, -1.356, -0.232, 0.228, 1.452 ], [ -0.204, -1.156, -0.784, 0.332, -0.904, -0.66, 0.172 ], [ 1.732, 1.196, -0.716, -0.188, -0.316, 0.616, -1.372 ], [ -0.248, -1.5, -0.38, -0.188, -0.932, 0.988, 0.036 ], [ -1.976, 1.284, -0.572, -0.284, 0.852, 1.888, 0.984 ], [ -1.176, 0.628, -0.992, 1.232, 1.16, 0.916, 0.34 ], [ 1.888, 0.364, 1.516, 1.392, 1.792, -1.588, -0.736 ], ... ],
    	[ [ -0.456, -1.572, -0.424, -1.728, -0.84, -1.688, 1.928 ], [ 0.408, 1.892, 0.564, -0.716, -0.704, 1.952, 0.292 ], [ -1.408, -0.332, -0.54, -1.908, 1.556, 0.744, 0.8 ], [ 0.012, -1.56, -0.544, -1.1, -1.004, 1.484, -0.408 ], [ 0.108, -1.66, -0.332, 0.568, 1.352, -1.516, -1.836 ], [ -0.82, -1.428, -0.924, 0.412, -0.512, -0.152, -0.216 ], [ -0.244, 1.48, -0.088, -0.3, 0.18, 0.812, -1.204 ], [ -0.452, 0.788, -0.924, -1.828, 0.328, -1.008, 0.156 ], ... ],
    	[ [ 0.116, -1.312, 0.96, 0.844, 0.316, 1.32, -0.124 ], [ 0.364, -1.868, 1.488, -1.96, -0.356, 0.612, 0.528 ], [ -1.404, -1.54, -1.776, 0.656, -0.332, 1.648, 0.088 ], [ -1.524, -0.348, -0.708, -1.248, 1.624, -1.904, -1.992 ], [ -0.056, -1.18, -0.86, -0.796, -0.18, 1.76, -1.144 ], [ 0.576, 1.416, 1.46, -0.452, 1.036, 1.516, -1.68 ], [ 0.988, -0.592, 0.716, -1.172, 0.74, -1.348, -1.824 ], [ -0.368, -1.204, -1.676, 0.88, 0.952, 0.096, 0.484 ], ... ],
    	[ [ 0.608, 0.452, 1.696, -1.032, -0.448, -0.54, -0.332 ], [ 0.828, -0.024, 0.332, 1.724, -0.884, -1.612, 1.34 ], [ -0.884, -1.424, 0.468, 0.684, 1.912, -1.668, 1.004 ], [ 0.28, 0.232, -1.768, -1.24, -0.888, 0.78, -0.344 ], [ -0.156, 0.02, 0.26, 0.192, -1.072, -0.556, -0.176 ], [ -1.596, 0.104, -1.792, -0.508, 1.048, -0.128, -0.936 ], [ -1.868, 1.168, -1.48, -0.6, -1.712, 1.26, 0.304 ], [ -1.348, 1.98, -1.088, -1.472, -1.104, -1.308, 0.532 ], ... ],
    	[ [ -1.16, -0.108, 1.812, -0.172, 1.7, 1.252, -1.092 ], [ -1.616, -0.5, 0.376, 1.604, -1.9, 0.488, -0.324 ], [ -1.644, -0.752, 1.44, -0.768, -1.26, 0.812, 1.492 ], [ 1.192, -0.652, -1.356, 0.208, -0.12, 0.92, -1.58 ], [ 1.804, -0.148, 1.832, 1.492, 1.368, 0.66, -0.676 ], [ -0.408, 1.58, 1.088, 1.724, 0.056, -0.164, -0.908 ], [ -0.732, -0.24, 1.76, 1.332, 1.016, 0.168, -1.376 ], [ 0.892, 1.748, -0.096, -1.296, -1.66, 1.468, 0.58 ], ... ],
    	[ [ 0.332, 0.404, 1.496, 0.064, -0.78, -1.74, -0.492 ], [ 0.144, 0.232, -1.196, 1.704, -1.896, -0.584, -1.58 ], [ -0.528, 1.008, 1.168, 1.46, 0.496, 1.952, -0.512 ], [ -1.988, 1.22, 1.628, -0.012, -0.324, -1.172, 1.968 ], [ -0.064, -0.884, -0.348, 0.148, 1.368, -1.112, -0.024 ], [ 1.508, 0.656, 1.1, 1.528, 0.16, 1.204, -1.544 ], [ -1.44, -0.636, 1.316, 1.916, 1.316, 0.84, -1.372 ], [ -0.872, 0.752, -0.712, 1.12, -1.096, -1.74, 0.256 ], ... ],
    	[ [ -1.668, 0.044, -0.416, -1.588, 0.544, -0.988, 1.196 ], [ 1.4, 0.556, -0.74, 0.412, 1.052, 1.028, 0.72 ], [ -1.008, 1.064, -0.116, 1.42, -0.08, 1.308, -1.512 ], [ -1.648, 1.672, 1.084, -0.22, -1.78, 0.132, 0.648 ], [ -1.636, 0.632, -0.24, 1.372, -1.816, 0.628, 1.768 ], [ -1.768, 0.956, -0.056, 1.448, 1.808, -0.492, 1.72 ], [ -1.884, -0.444, -1.436, -0.244, -1.472, 0.72, -0.4 ], [ 0.996, 1.844, 0.312, -0.164, -0.004, 1.216, -1.148 ], ... ],
    	...
    ]

Which produces the following output:

TrainingTester.java:308 executed in 0.01 seconds (0.000 gc):

    return RefStream.of(RefUtil.addRef(output_target)).map(x -> {
      String temp_18_0008 = x.prettyPrint();
      x.freeRef();
      return temp_18_0008;
    }).reduce((a, b) -> a + "\n" + b).orElse("");

Returns

    [
    	[ [ -9.349888, -4.917648, -9.800816000000003, -3.127072, 9.677712000000001 ], [ -6.451744, -0.8245279999999979, -4.523264, -12.981919999999997, 18.369199999999996 ], [ -12.768032000000002, -8.485088, 0.33116800000000074, -3.713071999999999, 28.634895999999998 ], [ 16.560944, -4.7151679999999985, 1.350272, -5.279056, -17.679199999999998 ], [ 3.7601919999999978, -2.9767040000000002, 2.3970080000000005, -9.162352000000002, 7.425616 ], [ -0.3211999999999995, 19.249824, 4.871440000000001, 5.621455999999999, -15.202624 ], [ -0.8342720000000002, 11.498048, -6.289840000000001, 9.567759999999998, 7.811072000000004 ], [ -9.302000000000001, 1.4818560000000007, -0.9521119999999988, -5.4680159999999995, 7.220416000000001 ], ... ],
    	[ [ 11.13704, 0.6777119999999998, 2.5108000000000006, 6.492079999999998, 4.667903999999998 ], [ 3.8262240000000003, 5.138048000000002, 6.3962400000000015, 20.701791999999998, -14.162031999999996 ], [ 10.967760000000002, 7.717103999999994, 7.043615999999999, -12.727872000000001, -6.079728000000002 ], [ 19.856751999999997, 17.278767999999992, 13.585424000000001, -8.981455999999996, -12.337344000000003 ], [ -1.2276479999999996, -11.935743999999996, -2.5994240000000004, -3.2968319999999975, 10.15744 ], [ -4.163775999999996, 0.04963200000000172, 1.7537920000000002, -3.291776000000002, 11.287152000000003 ], [ 7.199712, -17.277104000000005, -13.188160000000002, 6.106336, -8.859103999999999 ], [ -4.685135999999998, 6.605167999999999, -11.183471999999993, -4.3943840000000005, -5.364976000000002 ], ... ],
    	[ [ -11.506063999999995, 1.7663199999999974, 2.1182719999999993, -6.060672, 6.807984000000001 ], [ 5.431856000000002, 2.582720000000002, 6.617967999999998, -13.163136000000002, -2.541904000000002 ], [ -11.388319999999998, 4.461952000000002, 5.672160000000003, 7.8796479999999995, 10.822399999999998 ], [ -2.850607999999996, -0.8282879999999991, -1.4590719999999995, -5.635312000000001, -22.651328 ], [ -10.188191999999999, -11.312624000000003, 13.833903999999997, 13.813728000000005, 6.162047999999999 ], [ -0.10646399999999857, 12.325392000000004, 3.49584, 0.8764479999999996, -4.718608 ], [ -20.682015999999997, -5.965424000000001, -3.436351999999999, -15.519088, 4.11192 ], [ 3.7650400000000004, -4.224016000000004, 1.3563039999999997, -3.332016, 5.837232 ], ... ],
    	[ [ -1.4138240000000035, -11.165728, 0.3409440000000001, 8.407872000000001, 18.300000000000004 ], [ 27.51136000000001, -19.493472, 4.081344000000001, -10.981055999999995, -19.596832 ], [ -15.643536, 11.403968000000003, 0.9585120000000014, 6.848928, 3.736928000000002 ], [ 12.533408000000005, -11.907583999999998, 6.207072000000002, -3.494047999999998, 2.8342240000000025 ], [ 10.188367999999999, -18.938048, -17.486991999999997, -15.802767999999995, 1.4976000000000007 ], [ -10.580864, -11.041616000000001, 10.820752000000004, 9.910656, 8.794911999999995 ], [ 2.600736000000001, -8.773024000000003, 12.035631999999998, 25.519327999999998, -0.8918240000000011 ], [ 3.8989599999999993, 13.158784000000002, 1.4943519999999992, 0.7876000000000019, 12.625248000000001 ], ... ],
    	[ [ -9.841104000000001, -7.152016, -3.8763679999999994, -6.7476639999999986, -7.506543999999995 ], [ -13.477167999999995, -3.974479999999998, -5.454928, -6.266768000000001, 7.532480000000001 ], [ -16.189056000000008, 3.202416000000001, 20.028176000000002, 4.404736, 4.543071999999999 ], [ -0.08876799999999994, 9.55832, 9.192784000000003, -17.117407999999994, -17.005264 ], [ 13.281103999999996, 21.970560000000003, -16.192064, -0.8224639999999985, -6.462687999999998 ], [ 5.935952, -4.982, -10.180991999999998, 1.0256480000000021, -11.448768000000005 ], [ -27.238000000000014, -18.308960000000006, 3.2232800000000026, -4.067488000000002, 13.371808 ], [ 0.2666399999999992, 18.873200000000004, 0.5033120000000011, 6.908512, -1.682463999999998 ], ... ],
    	[ [ 3.755407999999998, -12.045247999999996, -3.4009120000000004, 2.5446239999999998, -0.526432 ], [ 9.716384000000003, -20.78398400000001, 10.071839999999995, 5.172112000000003, 2.2231839999999976 ], [ 0.21566400000000074, 7.038448000000003, 4.350096000000001, 3.942992000000001, 16.163040000000002 ], [ 5.402016000000001, -7.565503999999995, -24.743823999999993, 0.7636960000000023, -17.503248000000003 ], [ 7.840288000000003, 5.714800000000004, 21.420767999999995, -3.0664799999999985, 13.477584000000002 ], [ -5.463679999999999, -10.656784, -7.370304, 13.195616, -7.637072000000001 ], [ 3.9901280000000003, -6.331856, 0.2985760000000003, -12.506816, 3.179967999999997 ], [ -0.3975679999999999, -1.6968160000000003, 3.423663999999999, -3.739312000000002, 6.100255999999999 ], ... ],
    	[ [ -15.491520000000003, -4.82664, -10.528495999999995, -4.870863999999999, 2.247855999999999 ], [ -0.37929600000000085, 4.346288000000006, -4.028432, -10.567440000000001, 11.313088000000004 ], [ 9.640991999999999, 4.886031999999998, -13.717488000000001, 2.342287999999999, -12.473247999999998 ], [ -3.9890559999999997, -3.984015999999996, 4.7456000000000005, 21.19491199999999, 0.8396639999999983 ], [ 1.4349120000000004, 4.764095999999999, -5.960304000000001, -1.3504640000000017, -20.302720000000008 ], [ -12.247615999999999, -9.227887999999993, 14.148751999999996, 13.005839999999996, 1.723152000000003 ], [ -6.265440000000002, -0.7658560000000001, -2.882096000000002, 12.641487999999999, 0.3299040000000015 ], [ -2.5349599999999946, 15.718416, 11.598351999999995, 5.851408, -8.815824000000003 ], ... ],
    	[ [ 10.322015999999998, 3.0570559999999998, 2.186656, 1.3362880000000004, -6.982880000000001 ], [ -5.224367999999999, 3.4759359999999977, 4.8629440000000015, -4.481712000000001, 4.18256 ], [ 14.36384, 7.5939999999999985, 15.025968000000002, -6.455248000000001, 16.663263999999998 ], [ -2.0946079999999982, -1.7404799999999985, 0.14155199999999984, -9.122175999999998, -2.3665439999999958 ], [ 12.419568000000003, 3.7910240000000033, 15.939440000000005, -3.6071199999999988, -12.43904 ], [ 11.305456, 6.376335999999999, -5.139568, 0.04676800000000059, -25.355423999999992 ], [ 4.5683359999999995, 2.181008000000001, 11.408079999999995, 6.4125440000000005, -1.2194239999999994 ], [ -7.192495999999999, -4.5631840000000015, -14.297951999999995, 7.293616000000002, -6.087072000000002 ], ... ],
    	...
    ]
    [
    	[ [ 7.160336000000002, -9.766144, -3.385071999999999, 5.655232000000001, -2.584256000000001 ], [ 10.581071999999999, -8.800656000000002, -8.258576000000001, -5.5093440000000005, 4.4491999999999985 ], [ -1.888927999999998, -0.42321600000000104, 14.151455999999998, 1.1008319999999998, -4.718031999999998 ], [ 7.288784, 0.6708960000000002, 10.686911999999998, 1.1105280000000015, 11.317744000000001 ], [ -3.216767999999999, 9.741424000000002, -12.026639999999997, 7.6688959999999975, 0.6230559999999995 ], [ 1.122623999999998, 7.759984, 2.167408000000001, -10.517407999999998, -18.365376000000005 ], [ -10.2796, 0.3594720000000014, 8.764, 1.5343519999999997, 3.054159999999998 ], [ -10.185104000000003, -11.997024, 11.495247999999998, -2.3032959999999987, 14.134815999999995 ], ... ],
    	[ [ -3.2228319999999986, -1.1692319999999985, -0.9054719999999994, -12.930800000000003, -9.162464000000003 ], [ -4.41304, 22.618624, 5.946976, 7.4009120000000035, -5.947295999999997 ], [ 4.420751999999998, 5.381023999999999, -3.751760000000001, -3.4611679999999994, 0.22083200000000183 ], [ -4.880608000000001, -5.028112000000001, 3.7268960000000018, -3.2430079999999992, -9.691536000000001 ], [ -8.818720000000003, 5.277168000000002, 13.855391999999997, 14.170864000000002, 12.253808000000005 ], [ -14.440224, -18.293567999999997, -14.790640000000002, 8.508223999999998, 6.080048 ], [ 15.933200000000003, -3.177567999999997, -7.7035680000000015, -13.559695999999997, -5.955343999999998 ], [ 1.6639519999999994, 6.829087999999998, -8.210047999999999, -18.329344000000003, 7.551487999999998 ], ... ],
    	[ [ 5.211088000000004, -8.271456000000002, 4.680496, 1.0252480000000004, 0.13780800000000046 ], [ 9.718528000000006, 17.830607999999998, 13.81288, -0.3402879999999991, 3.5195199999999978 ], [ -0.07438400000000077, -1.186112000000002, -15.510991999999998, -1.9425759999999994, -17.589216000000004 ], [ -0.10177599999999752, -15.929744, 8.576144000000003, -5.682432000000001, 14.10184 ], [ -12.876415999999995, -5.884576, -8.216384000000003, 1.0579680000000005, -1.7699039999999995 ], [ -9.128912000000001, 6.688384000000004, 6.000688000000002, -6.5581439999999995, -10.058687999999998 ], [ 15.49944, 24.021535999999998, -5.171679999999996, -2.117727999999999, 5.838736000000003 ], [ 6.831503999999998, 1.1758879999999978, -5.662288000000002, -2.4488799999999995, -0.9987519999999998 ], ... ],
    	[ [ -7.206592000000002, -8.152640000000002, 2.2290559999999995, 6.230368000000002, -9.837456 ], [ -7.798479999999993, 2.902911999999998, -3.144143999999999, 9.019919999999997, 13.514511999999996 ], [ 3.905456000000002, -12.868944000000003, -8.415855999999998, 12.679984, 13.996352 ], [ 11.676016000000002, -15.712095999999999, -22.052736, -9.782736, 5.6430880000000005 ], [ -1.5378880000000001, -5.928448, -0.3905280000000004, -3.1936000000000004, 10.085247999999998 ], [ 3.2631360000000007, -17.116704, -16.903359999999996, -1.4175999999999973, 0.5841760000000003 ], [ -12.768128000000003, -12.363632000000003, -7.297936000000002, -7.632528000000001, -2.034767999999999 ], [ -9.813839999999999, -14.999344000000002, 12.119776000000002, -0.6969760000000006, -8.337072000000003 ], ... ],
    	[ [ 3.381504, 6.93376, 7.233520000000001, 9.49984, 0.23966399999999977 ], [ -0.4917279999999996, 3.1880319999999993, -0.9611680000000001, 6.607424000000002, -9.841536 ], [ 5.660143999999998, -4.674271999999999, -5.648672000000002, 13.889984000000007, -13.247439999999996 ], [ -23.665711999999992, -3.972272, 6.819232000000003, 9.843296, 12.649823999999999 ], [ -9.676400000000003, 9.169664, 7.014768000000001, 11.032368000000002, 9.812992 ], [ -1.6211999999999993, 17.431056, -0.515248000000001, 3.11128, -8.696384000000002 ], [ 13.414496000000003, 7.628464000000002, 11.563984000000001, -0.6502559999999983, 0.8348800000000012 ], [ 9.266351999999998, 0.06611199999999955, -32.444608, -9.886400000000002, 4.067472 ], ... ],
    	[ [ -3.1482239999999995, -4.2375680000000004, 12.777120000000002, 0.72896, 3.194224000000001 ], [ 12.404671999999998, 6.737344000000002, 4.417087999999997, -2.9708479999999975, -8.926079999999999 ], [ -10.373216000000003, -3.777840000000003, 1.2897600000000005, 3.500384000000001, -0.5932639999999989 ], [ -0.15294400000000025, -19.664143999999997, -25.58352000000001, -7.792384, 11.286127999999998 ], [ -3.4821280000000043, -5.436927999999999, 4.043248000000003, 2.9046720000000006, 15.371583999999997 ], [ -12.654256, -2.7434719999999992, -5.611888000000004, 3.9805919999999975, 14.580191999999998 ], [ -11.417936, 5.327520000000001, -16.91616, 2.837184000000001, -10.328256000000001 ], [ -10.215504000000005, -11.829071999999996, 10.022208, -14.661392000000001, 20.415856 ], ... ],
    	[ [ -6.5536639999999995, -3.003599999999998, -6.032448000000001, -0.8293280000000002, 8.576239999999999 ], [ -10.870704, -10.14912, -6.353232000000004, 14.016351999999992, 16.71112 ], [ -5.28784, 14.661568000000004, 3.8350079999999958, 8.708015999999999, -11.265808 ], [ 12.927407999999998, 1.3057279999999991, 1.5971040000000012, -5.255344, 8.980576000000001 ], [ -8.772736, 6.7999839999999985, -8.156431999999997, -5.092351999999999, 5.442591999999999 ], [ 6.066784000000001, -5.943263999999997, 8.894016, -9.852367999999998, 8.667615999999997 ], [ -2.3674720000000025, -20.20032, 8.417776, 16.051983999999994, 0.44558400000000087 ], [ -1.208271999999999, -13.553200000000002, 2.6140800000000004, -3.811215999999998, -2.3124479999999994 ], ... ],
    	[ [ 0.5212799999999983, -4.702112000000004, -0.3700320000000001, 7.296224, -7.760479999999999 ], [ -0.9501759999999978, -11.807296000000003, 7.898608000000001, -3.5676960000000006, 2.4274240000000007 ], [ 7.835184000000003, 15.828368, 14.085551999999996, 2.9159680000000012, -8.270047999999997 ], [ 2.3862719999999973, 8.793695999999997, 1.9615200000000002, -1.7883520000000015, -11.366863999999998 ], [ 7.347248000000003, -0.33697599999999994, -4.266000000000001, 9.55528, 7.659632000000005 ], [ 14.410112000000007, -3.6378079999999984, -15.09584, 6.337584000000001, -18.801616000000003 ], [ 4.826863999999999, -0.22571200000000025, 2.746608, -1.4240160000000002, 10.779056 ], [ -2.1316000000000006, -6.658623999999996, -8.932080000000004, -6.687615999999999, -6.296256000000002 ], ... ],
    	...
    ]

Gradient Descent

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

TrainingTester.java:480 executed in 32.02 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: 12949869536384
Reset training subject: 12950133430920
Constructing line search parameters: GD
th(0)=213.04624978164088;dx=-112.02929697844876
New Minimum: 213.04624978164088 > 110.25716127683216
WOLF (strong): th(2.154434690031884)=110.25716127683216; dx=16.587509685876366 evalInputDelta=102.78908850480872
END: th(1.077217345015942)=127.01464219184055; dx=-47.705255990030224 evalInputDelta=86.03160758980033
Fitness changed from 213.04624978164088 to 110.25716127683216
Iteration 1 complete. Error: 110.25716127683216 Total: 2.1697; Orientation: 0.1782; Line Search: 1.2200
th(0)=110.25716127683216;dx=-2.470422995007742
New Minimum: 110.25716127683216 > 108.07330403822536
WOLF (strong): th(2.3207944168063896)=108.07330403822536; dx=0.5884198382803917 evalInputDelta=2.183857238606805
END: th(1.1603972084031948)=108.2778644864442; dx=-0.9409925486976811 evalInputDelta=1.9792967903879628
Fitness changed from 110.25716127683216 to 108.07330403822536
Iteration 2 complete. Error: 108.07330403822536 Total: 1.7235; Orientation: 0.1789; Line Search: 1.2940
th(0)=108.07330403822536;dx=-0.14050497929319755
New Minimum: 108.07330403822536 > 107.95651731230836
WOLF (strong): th(2.5000000000000004)=107.95651731230836; dx=0.047075553277225415 evalInputDelta=0.11678672591699524
New Minimum: 107.95651731230836 > 107.95629175883897
END: th(1.2500000000000002)=107.95629175883897; dx=-0.046714679046199414 evalInputDelta=0.11701227938638681
Fitness changed from 108.07330403822536 to 107.95629175883897
Iteration 3 complete. Error: 107.95629175883897 Total: 1.5981; Orientation: 0.1833; Line Search: 1.1619
th(0)=107.95629175883897;dx=-0.015537742955456764
New Minimum: 107.95629175883897 > 107.94452339637786
WOLF (strong): th(2.6930433625398553)=107.94452339637786; dx=0.006797918366808616 evalInputDelta=0.011768362461111792
New Minimum: 107.94452339637786 > 107.94288871454945
END: th(1.3465216812699277)=107.94288871454945; dx=-0.004369911827573172 evalInputDelta=0.013403044289518107
Fitness changed from 107.95629175883897 to 107.94288871454945
Iteration 4 complete. Error: 107.94288871454945 Total: 1.7169; Orientation: 0.1870; Line Search: 1.2791
th(0)=107.94288871454945;dx=-0.0012304005334814792
New Minimum: 107.94288871454945 > 107.94207903133562
WOLF (strong): th(2.9009930210079875)=107.94207903133562; dx=6.721894561331367E-4 evalInputDelta=8.096832138306809E-4
New Minimum: 107.94207903133562 > 107.94179394790731
END: th(1.4504965105039938)=107.94179394790731; dx=-2.7910553556828604E-4 evalInputDelta=0.0010947666421401436
Fitness changed from 107.94288871454945 to 107.94179394790731
Iteration 5 complete. Error: 107.94179394790731 Total: 1.5992; Orientation: 0.1774; Line Search: 1.1711
th(0)=107.94179394790731;dx=-6.414155009343106E-5
New Minimum: 107.94179394790731 > 107.94175720017233
WOLF (strong): th(3.125000000000001)=107.94175720017233; dx=4.0622999678941696E-5 evalInputDelta=3.674773498119066E-5
New Minimum: 107.94175720017233 > 107.94173465038757
END: th(1.5625000000000004)=107.94173465038757; dx=-1.175927519466245E-5 evalInputDelta=5.9297519740653115E-5
Fitness changed from 107.94179394790731 to 107.94173465038757
Iteration 6 complete. Error: 107.94173465038757 Total: 1.5939; Orientation: 0.1780; Line Search: 1.1637
th(0)=107.94173465038757;dx=-3.0259800008038764E-6
New Minimum: 107.94173465038757 > 107.94172975576771
WOLF (strong): th(3.3663042031748196)=107.94172975576771; dx=1.1797195117436308E-7 evalInputDelta=4.894619863193839E-6
END: th(1.6831521015874098)=107.94173088014028; dx=-1.454004024436602E-6 evalInputDelta=3.7702472894807215E-6
Fitness changed from 107.94173465038757 to 107.94172975576771
Iteration 7 complete. Error: 107.94172975576771 Total: 1.5677; Orientation: 0.1798; Line Search: 1.1365
th(0)=107.94172975576771;dx=-2.3775726055743395E-6
New Minimum: 107.94172975576771 > 107.94172500281712
END: th(3.626241276259985)=107.94172500281712; dx=-2.4384731792071477E-7 evalInputDelta=4.75295058777192E-6
Fitness changed from 107.94172975576771 to 107.94172500281712
Iteration 8 complete. Error: 107.94172500281712 Total: 1.1987; Orientation: 0.1789; Line Search: 0.7660
th(0)=107.94172500281712;dx=-2.2350353874739873E-6
New Minimum: 107.94172500281712 > 107.94172317490246
WOLF (strong): th(7.8125000000000036)=107.94172317490246; dx=1.7670892290329184E-6 evalInputDelta=1.8279146587474315E-6
New Minimum: 107.94172317490246 > 107.94172018053499
END: th(3.9062500000000018)=107.94172018053499; dx=-2.3397307855608578E-7 evalInputDelta=4.822282136274225E-6
Fitness changed from 107.94172500281712 to 107.94172018053499
Iteration 9 complete. Error: 107.94172018053499 Total: 1.5974; Orientation: 0.1770; Line Search: 1.1704
th(0)=107.94172018053499;dx=-2.401772150339499E-6
Armijo: th(8.41576050793705)=107.94172125034352; dx=2.6560114513961977E-6 evalInputDelta=-1.0698085333160634E-6
New Minimum: 107.94172018053499 > 107.94171539480232
WOLF (strong): th(4.207880253968525)=107.94171539480232; dx=1.2711965169098877E-7 evalInputDelta=4.7857326705980086E-6
END: th(1.4026267513228416)=107.941717402927; dx=-1.558808216065961E-6 evalInputDelta=2.777607988946329E-6
Fitness changed from 107.94172018053499 to 107.94171539480232
Iteration 10 complete. Error: 107.94171539480232 Total: 1.9430; Orientation: 0.1881; Line Search: 1.5057
th(0)=107.94171539480232;dx=-3.0211662647891124E-6
New Minimum: 107.94171539480232 > 107.94171051711868
END: th(3.0218677302166546)=107.94171051711868; dx=-2.0709127294448599E-7 evalInputDelta=4.8776836365505005E-6
Fitness changed from 107.94171539480232 to 107.94171051711868
Iteration 11 complete. Error: 107.94171051711868 Total: 1.2804; Orientation: 0.1771; Line Search: 0.8527
th(0)=107.94171051711868;dx=-1.9310637785545335E-6
New Minimum: 107.94171051711868 > 107.9417053514174
WOLF (strong): th(6.5104166666666705)=107.9417053514174; dx=3.4416034347861624E-7 evalInputDelta=5.165701281839574E-6
END: th(3.2552083333333353)=107.9417060826859; dx=-7.934517173398285E-7 evalInputDelta=4.4344327818635065E-6
Fitness changed from 107.94171051711868 to 107.9417053514174
Iteration 12 complete. Error: 107.9417053514174 Total: 1.5576; Orientation: 0.1759; Line Search: 1.1318
th(0)=107.9417053514174;dx=-5.290546096128494E-6
Armijo: th(7.013133756614209)=107.9417209404061; dx=9.736201706216501E-6 evalInputDelta=-1.558898870257508E-5
New Minimum: 107.9417053514174 > 107.94169997283771
WOLF (strong): th(3.5065668783071047)=107.94169997283771; dx=2.222827804986734E-6 evalInputDelta=5.378579686521334E-6
END: th(1.1688556261023682)=107.94170063120771; dx=-2.7860881290925565E-6 evalInputDelta=4.720209688002797E-6
Fitness changed from 107.9417053514174 to 107.94169997283771
Iteration 13 complete. Error: 107.94169997283771 Total: 1.9307; Orientation: 0.1788; Line Search: 1.5009
th(0)=107.94169997283771;dx=-4.3329246929623224E-6
New Minimum: 107.94169997283771 > 107.94169423496382
END: th(2.518223108513879)=107.94169423496382; dx=-2.2415673974624894E-7 evalInputDelta=5.737873891575873E-6
Fitness changed from 107.94169997283771 to 107.94169423496382
Iteration 14 complete. Error: 107.94169423496382 Total: 1.1963; Orientation: 0.1782; Line Search: 0.7690
th(0)=107.94169423496382;dx=-1.6428774613383247E-6
New Minimum: 107.94169423496382 > 107.9416881860138
END: th(5.425347222222226)=107.9416881860138; dx=-5.870074796236275E-7 evalInputDelta=6.048950012882415E-6
Fitness changed from 107.94169423496382 to 107.9416881860138
Iteration 15 complete. Error: 107.9416881860138 Total: 1.1945; Orientation: 0.1759; Line Search: 0.7676
th(0)=107.9416881860138;dx=-2.5948232212768574E-6
Armijo: th(11.688556261023683)=107.94170588390591; dx=5.623065844172507E-6 evalInputDelta=-1.7697892104706625E-5
New Minimum: 107.9416881860138 > 107.94168502805252
WOLF (strong): th(5.844278130511841)=107.94168502805252; dx=1.5141213101670837E-6 evalInputDelta=3.157961288025035E-6
New Minimum: 107.94168502805252 > 107.9416844651584
END: th(1.9480927101706138)=107.9416844651584; dx=-1.2251750443981671E-6 evalInputDelta=3.7208554033441033E-6
Fitness changed from 107.9416881860138 to 107.9416844651584
Iteration 16 complete. Error: 107.9416844651584 Total: 1.9649; Orientation: 0.1786; Line Search: 1.5359
th(0)=107.9416844651584;dx=-1.282395261242638E-6
New Minimum: 107.9416844651584 > 107.94167909335789
WOLFE (weak): th(4.197038514189799)=107.94167909335789; dx=-1.2774099439024984E-6 evalInputDelta=5.371800511966285E-6
New Minimum: 107.94167909335789 > 107.94167374248096
WOLFE (weak): th(8.394077028379598)=107.94167374248096; dx=-1.2724246264274557E-6 evalInputDelta=1.0722677444618967E-5
New Minimum: 107.94167374248096 > 107.94165254820885
WOLFE (weak): th(25.182231085138795)=107.94165254820885; dx=-1.25248335517325E-6 evalInputDelta=3.191694955262392E-5
New Minimum: 107.94165254820885 > 107.94156131685223
WOLFE (weak): th(100.72892434055518)=107.94156131685223; dx=-1.1627476073305037E-6 evalInputDelta=1.2314830617299322E-4
New Minimum: 107.94156131685223 > 107.94118924354812
END: th(503.6446217027759)=107.94118924354812; dx=-6.841561454070401E-7 evalInputDelta=4.952216102793727E-4
Fitness changed from 107.9416844651584 to 107.94118924354812
Iteration 17 complete. Error: 107.94118924354812 Total: 2.8375; Orientation: 0.1795; Line Search: 2.4069
th(0)=107.94118924354812;dx=-1.7484408327713915E-4
Armijo: th(1085.0694444444455)=162.56537669666054; dx=0.10085815792354826 evalInputDelta=-54.62418745311241
Armijo: th(542.5347222222227)=121.54980573748581; dx=0.050341648275114725 evalInputDelta=-13.608616493937689
Armijo: th(180.8449074074076)=109.43217798809803; dx=0.016663986658099157 evalInputDelta=-1.4909887445499095
Armijo: th(45.2112268518519)=108.02844735500845; dx=0.004034863694621099 evalInputDelta=-0.08725811146032925
Armijo: th(9.04224537037038)=107.94341478154519; dx=6.670974790212764E-4 evalInputDelta=-0.002225537997063043
New Minimum: 107.94118924354812 > 107.94103148306169
END: th(1.5070408950617298)=107.94103148306169; dx=-3.4520489311699694E-5 evalInputDelta=1.5776048643090235E-4
Fitness changed from 107.94118924354812 to 107.94103148306169
Iteration 18 complete. Error: 107.94103148306169 Total: 3.3445; Orientation: 0.1945; Line Search: 2.8808
Final threshold in iteration 18: 107.94103148306169 (> 0.0) after 32.015s (< 30.000s)

Returns

    107.94103148306169

This training apply resulted in the following configuration:

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

    RefList<double[]> state = network.state();
    assert state != null;
    String description = state.stream().map(RefArrays::toString).reduce((a, b) -> a + "\n" + b)
        .orElse("");
    state.freeRef();
    return description;

Returns

    [2.494720500063207E-4, 0.005329075920999701, 0.007700200056659757, -0.012462950104042771, 0.011316906963800109, -0.01528990424596335, -0.0062059976597052405, -0.002076017845836654, 0.011650268492837927, -0.00258051726566414, -0.01095685762490907, -0.014908600972673694, 0.0092753167700679, -0.004647432026436162, 0.00566349075480423, -0.025714940122380753, 0.017076987158713457, -0.02426115604628557, 0.005854865892083811, -0.005280649469865299, 7.63353696770574E-4, 0.014038253062574493, -0.004692447562362711, 0.0027246365554994783, 0.01097908118548872, 0.0060533849811976945, -0.00702029031142426, -0.00694220661321655, -0.006427300827232991, 0.006527775824126927, -3.9354885693705416E-4, 0.015076093345313835, -8.082995795458221E-4, 0.00993569441388949, 0.015600649841424868, 0.005423847447837096, 0.01414107712104057, 0.007423843143302586, 0.0019088488830502162, -0.003103702745324216, 8.996556113889088E-4, -0.006378025630234306, 0.006686042996134563, -0.014483863899936542, -6.16824480232328E-4, 0.016105606309501197, -0.002715925736102241, 0.009094342622945756, 0.01683133587552313, 0.0013708607854909095, 0.008173521368844397, -0.0012088385570041234, -0.01758615801748128, 0.02640811882270507, -0.011801061322064824, -0.034063643368433344, 0.009033458249471894, -0.016257824602613245, 2.780122614643872E-4, -0.011366252416208618, -6.274765111081682E-4, -3.816580394090172E-4, -0.007020227172934212, 0.006443515086549744, -0.023645194227946163, 0.011013604360606782, 1.029581672545681E-4, -0.006881770661520619, -0.013992565530675592, -0.0026453086222480346, 0.00923257073043593, -0.0010044971590077298, -0.0079612967008714, -0.00422298147214914, -0.00789231465071611, 0.005383527153019959, 0.00447958439428042, 0.006492046998942745, 0.0236316230115401, 0.00778190047160665, -0.005493606856389715, 0.021705171687130688, -0.009989367036489737, -2.3351103556562065E-4, 0.014418841494696008, 0.008239279085394957, -0.00787338322548242, -0.007644137925935859, 0.01159329249803106, 0.013209491082274902, 0.001914184340480424, 0.014938564001447082, 0.00816736995531457, -0.0012785625055738914, -0.0042816054618670255, 0.00689600273368437, -0.010771889051099775, 0.025006787436696765, 0.01362085352096682, 0.009278223030700555, 0.00518845439079317, -0.012438014005440229, 0.012442972496504758, 0.002231481299464603, -0.016503470078422927, -0.0018547087522571655, -0.019940514635216445, -0.006157189408426081, -0.01448623118785696, 0.0015918781118827517, 0.0017652620057071597, -0.007244869318861965, 0.0012525191630061775, -0.0034549814573367893, -0.0053844455118416575, 0.008511771899822261, 8.669248234357141E-4, -0.0015001887908318908, -0.00541966134245052, 0.0025449825272431683, 0.0017964172980181967, -0.009428276818937854, -0.0033968929837569052, 5.514402373079251E-4, 0.012662887802953542, 0.005986266261029244, -0.009960922532467583, 0.010567034531523823, 0.010469806461220813, 5.49604436170442E-4, -0.013987558123587816, 0.004753917957978134, -0.009087002052954629, -0.006492266454354888, 0.009207518722329201, -0.005185864502005656, 0.0211856370685262, -0.015946401562702273, -0.006000745476561097, 0.007609112458830667, 0.0027830403059181746, 0.00463680868307618, 0.010499456474730573, -0.01800373749105865, 2.4334405721511464E-4, -0.001788367759885976, -0.005348159356096207, -0.008284733499140185, 0.0023154934331551013, 0.004955047506792912, -0.006015038315865055, 0.010144721137675327, -0.007306129107319733, -0.005822966856942478, 0.021653268302772075, 0.005467845928829985, 0.0013650676403703852, 0.006678477717987967, 0.005969720747988653, -0.006073524413591982, 0.0021883568862225847, 0.013080877847080433, 0.0063250477212127365, 0.0033359380034427063, -0.014044518744460964, -0.015406369588441795, 0.018150097450361738, -0.0038657586509305876, 0.016742776866150277, -0.006201641335403609, -0.009483228641077916, -0.0017173625745225294, -0.001779298918671207, 0.01862942144182064, -0.010729459543209429, 0.00647446498834931, 0.007864912606057808, 0.00869413634369268, 0.019663929225878896, 0.0016473424377981413, -0.020072922460345373, -0.010127037675460401, -7.94886639469104E-4, 0.015094797982895305, 0.0036245996665545477, -0.013182935325270845, 0.009215448252644512, 0.01784903412406081, -0.004235427642987411, -0.01118528806635133, 0.007079463666212441, -0.010102745770387965, 0.0022678582751527827, -0.015443488678963141, 0.009367763645930957, -0.0014368512379189851, -0.004492535892992879, -0.007963120846446665, -0.004215693246655349, -0.004498319494685138, 0.005965627308046178, -0.015540808881883863, 0.0017909602590215176, 0.014786280170465852, 0.007514570914928968, 0.004740527228993479, -0.006088091524591422, -0.004828563387369153, -0.013074504989487565, 0.0073225696771486385, -0.014588929865106171, -0.014999799563050132, -0.010990151026069952, -0.018188099431036702, 0.011952551022102893, -0.0014692007536829983, 0.008574863691606207, -0.0026302052315521213, 0.0050618617263855385, -0.0060826119540586835, -0.008127703032747517, -0.039659920594351146, -0.018611695031712616, 0.005187205413185765, 0.024724989632341276, 0.008645311049221104, -0.007474847292552057, 5.82260672038181E-4, 0.022682984226467622, 0.0015499296439741245, 0.005353585064933577, 0.010806409036486646, 0.013601573009127635, -0.0017753986502325682, -0.01495899898351054, -0.0020093375497482334, -0.010037558883989803, -0.018312795818744714, -0.002842973732395899, 0.00396593417834825, -1.8800789796907216E-4, 0.011206262272852607, -0.010575621770035359, 0.009349999557218833, 0.02970857755461614, 0.0024133332701904145, 0.007316503402191133, -0.011849660881262481, 0.006636657395740073, -0.00882386236584295, -0.009101603560827422, -0.0047216719692599485, -0.011733944735217534, 0.00253373669006989, -0.013518908782600822, -0.004230573605522756, 0.023041126779086256, 0.004969308629410313, 0.012331598151095064, -0.022237506717183136, -0.023939925205055185, 0.002730796577435594, 0.004859611925836529, 0.017042182976306667, -0.016551082894278743, 0.003483341290257843, 8.830802362023576E-4, 0.005253501645993331, -9.372819883057434E-4, 0.009094430222580066, -0.015622176251324588, -0.019922729484639006, -0.01882640279178663, 0.013290143458218953, -0.010712605636969857, 0.013596458548656444, -0.016622281122243628, -0.002340800169493302, -0.011635948170534783, -0.0015287334233598639, 0.009769611075989067, -0.009130023757657542, -0.013375375853628512, 0.010777833372013402, -0.013158816234902964, 0.00933595101492013, -0.017247616262900646, -0.01432717797551585, 0.004407629288904395, -0.028776777251678945, 0.012245054950338423, 0.005598096554450317, 0.0035567181304661535, 0.008634170105432255, -0.03885287190318865, -0.010324615851732031, 0.005651329275153796, 0.01361196873845263, -0.00789340081857585, -0.004780584907745576, 0.01896621376640315, -0.003810435805880937, 0.013098625159966333, -0.015441350740260871, 0.007125211574845041, -0.013739043264415352, -7.635781234837707E-4, 0.009169927965369178, 0.005339029187892804, -0.01015956018974069, -0.006725884594195947, 0.0036534040263259426, 0.009136600930945303, 0.0032302645916498112, -0.021050295750492515, 0.184, 1.7, -1.696, 0.92, -1.476, -1.688, 1.36, -0.816, 1.288, -0.712, 1.916, 1.98, 1.288, 0.392, -0.032, -0.676, 1.168, 0.788, 0.464, -0.852, 0.028, 0.08, 1.084, 0.332, 1.704, 1.048, 1.652, -1.384, 1.972, -1.42, -0.472, 0.764, -1.176, -0.832, 0.56, 0.048, 1.22, -1.176, -0.86, -1.248, -1.096, 1.652, -1.812, 0.996, 1.876, -0.684, 1.912, -1.552, -1.16, 0.0, 1.052, 0.0, 1.012, -0.344, -0.768, -0.384, 1.052, -1.808, -1.312, -1.564, -1.248, -1.476, 1.052, -1.724, 1.628, 0.496, 0.948, -1.116, 1.96, -1.176, -0.636, -0.516, -1.732, 1.352, -1.808, 1.196, 0.784, 1.244, -0.768, 0.184, -0.212, 1.552, 1.108, -1.028, -1.54, 0.464, -1.104, 0.66, 1.208, -0.584, 0.392, 1.616, -0.468, -0.556, 0.344, -1.516, 0.448, -0.504, -0.748, -1.1, 0.7, -0.472, -1.484, -0.652, 0.124, 1.664, 0.52, -1.58, 0.996, -0.488, -0.632, -1.656, -1.16, 0.028, -1.656, 1.64, 1.66, -0.628, 1.956, -0.408, -1.976, 0.016, 0.3, 0.012, -0.376, 1.448]

And regressed input:

TrainingTester.java:622 executed in 0.01 seconds (0.000 gc):

    return RefArrays.stream(RefUtil.addRef(data)).flatMap(x -> {
      return RefArrays.stream(x);
    }).limit(1).map(x -> {
      String temp_18_0015 = x.prettyPrint();
      x.freeRef();
      return temp_18_0015;
    }).reduce((a, b) -> a + "\n" + b).orElse("");

Returns

    [
    	[ [ -1.1519026261664018, 1.2638854393065466, -1.0879610552824597, -1.271948716238218, -1.6800793125635909, -1.391967266477889, 0.23208039266015973 ], [ 0.652207399332788, 1.6996826747862261, 1.6596355471427766, 1.1875381835490817, -0.028226766866574847, -1.9877831485958022, 0.34441734831601784 ], [ 1.8842889815181438, 1.3555990007816108, -1.7078259555104551, 1.1685156283435438, 0.2873017971974171, -1.35996369462187, -1.7360800831665164 ], [ 0.13578917681105923, 0.8680761564881676, 0.9357133963139039, 1.3122346351060825, 1.6793523278150095, -0.5878548262560641, -1.7919724777066064 ], [ -1.7914337502660904, -0.536175034728019, -0.4355429649151505, 0.068116964159981, 1.9000196220063532, -1.9914321236221573, -1.1601427865592326 ], [ 0.2878823158767603, -1.8957679654867914, 1.1600847346537462, 0.3318365147984885, 0.08421739199589984, -1.155826492620944, 1.0956778701625207 ], [ 1.851851103848791, -1.0278724245077289, -1.516015850837834, 1.0477587330297915, -0.3317836059583207, 0.18010868852423562, 1.0279651055902868 ], [ -1.9280032758770165, 1.9598768200675782, -0.384100053726267, 1.18410324157834, 0.4920645934009619, -0.14821718943426102, -1.023865225741029 ], ... ],
    	[ [ -1.019660975021979, 1.6639191750624471, -1.8437801508946976, -1.579611239550982, 0.8956571122419419, -0.8558129368165039, 0.14810775974540172 ], [ -1.3001898588403844, -0.7517911046323227, -0.3680989084409311, -0.8436441017976797, 1.9791498990892396, -0.46808426527230423, -0.6200132005395329 ], [ 0.5482351356797955, 0.7518229470546932, 0.9444133466334481, 0.156223846137167, -1.7557359496429745, 0.9246019760936729, 0.6764171541125023 ], [ -1.2285289276985083, 0.04796280639883704, -0.9721895248914784, 1.9964098102603947, -1.6117985569305857, 0.1877043816137452, 1.5197184172152178 ], [ -0.5277169693720342, -1.7278456447325652, 1.968045468792943, -0.38020757468971195, -0.05167208250240009, -0.25950981933909806, 1.039592849197641 ], [ -0.6038701856383334, -1.2114472203836426, 1.2356716061007225, -1.9682652231537257, 0.41198069028368073, -0.7204331208307108, -1.7360299690641672 ], [ -1.9394472118390338, -1.0161817225789649, 1.856031933058525, -0.7315260542313654, -1.3280063655341008, 0.4476906743767866, 0.18009336355743585 ], [ -0.08377282150668934, -0.4521848427348868, 1.664192843743624, 0.3999291456796863, 0.7440426490293958, 0.7879628594594623, 0.9118175515236772 ], ... ],
    	[ [ -1.7516908802530844, 0.3278543416845005, -0.3960368548841464, -0.9403172759991095, 1.8201185743540755, -1.8713463628459461, -0.3758969444446246 ], [ 1.883475545704106, -0.6798657128082889, -0.9958395438204458, 1.0081994589068257, -0.6356521874765494, -1.5280755905748806, -0.74375064422865 ], [ 0.5359174195709177, 0.8117843957479345, -0.3196501249570733, 1.492008968733176, 1.5083063863390878, 1.1721997548763585, 0.47558841035917704 ], [ 0.22380788932294787, 1.7162910260424062, -0.8077181147299094, 0.9274264215752008, 1.8557273036468078, -1.6638042059171516, 0.4558059574983714 ], [ 1.787876666863885, -1.419967846871653, 0.900257263844902, -1.5279244992375667, -1.479807848075083, -0.4958477572703579, -1.3000817166324008 ], [ 0.8959321873602051, 0.3275966462956348, -0.3120691041438408, -0.6439147883967906, -1.787417101128308, 1.7878479575998285, -0.26371373419918276 ], [ -1.8121021900964929, -1.2316933812150397, 0.643749655090448, 0.25559582637830847, -0.640065046687301, 1.0479718934375275, -1.7679890854577887 ], [ -1.3959052027829082, -0.447444449268941, -0.5316692710142186, 1.624198622662234, 1.007650623668557, 0.14807742572303156, -1.155765287019649 ], ... ],
    	[ [ -0.8079689031823524, -1.2318877056852204, 1.8518669037556508, 0.9401638301465132, -0.9158875189132838, 0.10751792821510867, 0.4399991071457627 ], [ 0.05199478682394869, 0.9998911048056798, -0.08807457859093133, 0.4001157156873024, 0.6794317460282459, 1.2318027490588488, -0.7915845443132741 ], [ 1.632122573754167, 0.7759105613955143, -0.8075801676229547, 0.295312765051565, 1.2884530930004368, 1.8358970735813223, -0.8483298349583899 ], [ -2.000048841357973, -0.7479038581258908, -0.18850722735843395, -0.3114823723286626, 1.439707591088394, -1.004249941129082, -0.4677935076343111 ], [ 0.5483468522505492, -0.5362325798182804, -1.3438269150333622, -0.52418731675321, -1.9961104145438666, 0.09205272231880869, -0.6199178559457258 ], [ 0.8076288281084908, 0.9561750725503586, 0.6558383539100213, -1.7363455625311086, 0.07176267030140551, -1.3961949721828777, 0.6597478208276619 ], [ -0.8317846416106613, -0.4039729728615335, 0.2760768942773531, 1.696426900627467, 0.007856579671641887, -1.75180434645205, -1.3595139088989474 ], [ 0.7639415422713746, 1.74809427430398, -1.8597856874500533, 1.187931908864514, -1.0000244575931008, -1.6558860546235676, -1.4798822424567266 ], ... ],
    	[ [ 1.1437943582228798, -1.2245634521228195, -1.8996295910064238, 1.2158438435930132, 1.2802352005211783, -1.4957881307607965, 1.0439139327806208 ], [ -0.3722517256032867, -1.5594448995364825, 1.6279497449165676, 0.7996553429910082, -1.2159135615399252, 1.5921162316211417, 0.7198831003524677 ], [ -1.823680963186951, 1.1720112989549538, 0.9681880856361302, 1.931609971240467, -1.9836388524006119, 1.4961884884085375, 1.2001019918618878 ], [ -0.3040366299427179, -1.2960520729312939, -1.4957266090857633, 1.0886181396085055, 0.8475467396071338, -1.2002642678551865, 0.30798287470218094 ], [ 0.6999389774027985, -0.28357576269283463, 1.468215582231455, 1.464023217108105, -1.687674503194606, -1.5394808555893917, 0.23528959857878554 ], [ -0.047862746856159495, -1.2722708045637405, 0.6910586846044153, 0.8272098652068883, -1.1236807427998985, -0.9311161090028375, 0.7079880769075091 ], [ -0.448081116875214, -1.144320400237738, -1.419758195678745, 1.6839087550397276, -1.6678104955818807, 1.5595645883871847, 1.984066325441861 ], [ -0.4441334434801066, -0.6156202313779311, 0.4159477439783486, -0.5477622049019019, 0.46407363774470495, 1.139932804439435, 1.3683104888447999 ], ... ],
    	[ [ -0.9358951122431908, 0.07223918865014833, -0.18401461995784932, 1.5237100609946386, 0.3597750666233012, -0.8320663870952237, -0.472107632644585 ], [ -1.2879490866469425, 1.4121633061186571, 0.20806677769354887, -0.40414442484155483, -1.728170629699702, -0.7038474283248477, -0.41572711249537186 ], [ 0.8362733189407711, -0.908047191445432, -0.4642180791286641, -0.38386479787224154, 0.7201244525488993, 0.3395257212578634, -1.67183267197773 ], [ 0.5160714112054429, 1.9322489572439525, -0.24783505804071726, 0.6479685624635734, -0.4002680438231545, -0.9282756152237783, -0.8515676524413037 ], [ -0.583925679349949, -1.3440832126912763, 1.7521469510844334, 0.09991314990080946, 1.0883518499257765, 0.19592344016856653, 1.6274074357043298 ], [ -1.2796682345377632, -1.207566100988589, -1.975632626716479, -1.023840957111356, 1.2435258733287187, 0.24763609473592804, 1.77181641192161 ], [ -1.035556067273703, 0.004144131027094652, -1.5479927662086066, 0.939614588760029, -1.2082144094433505, 1.4837607922791216, 0.2566469485040648 ], [ -0.14799020110944439, 1.368063280937707, 1.8515737894980753, 1.335603834892798, 1.0320636705357022, 1.9634627258602235, -1.2680731220765005 ], ... ],
    	[ [ -1.5919519928137886, 0.047716597552137585, -0.048190995618754694, -0.21183736776982773, -0.3081384167322689, -1.7477973516262573, -0.5718193766355325 ], [ -1.5476152806439991, 0.2997513250932893, -1.780022424284538, -0.691523106034297, 0.011543522947300213, 0.8401552253412814, -0.7879741037000633 ], [ -1.7242823294080445, 1.6438291221598502, 1.0520071003700087, -1.951886036047675, 1.1562149840371032, -0.3195106622251402, 0.5313838756083471 ], [ -0.3358820582722243, 0.36374830890682003, 0.7877563931890962, 1.1642668381915133, 0.21207934137126275, 0.2243803150336237, -1.3076939189811077 ], [ 0.5241957285412968, -0.8441456818410996, -0.439879475828057, -0.035901871945996484, 1.983799293662776, 0.36831001396783675, 1.1962039436274148 ], [ -1.024127330410841, -1.0762494014683046, 1.5040659540781876, 0.31608511216366686, 0.24006739448842912, -1.1155254415568003, -1.0641790138551541 ], [ -0.691743581436916, 1.1481934352736765, 0.09637475230952679, 0.9725287689759676, 1.1234347991327338, -1.1157051743248059, -0.2796404924760572 ], [ -0.6197700085542521, 1.8557130136614923, -1.6360357630754245, 1.8797574389965714, 0.21592664391152105, -1.9237058044319109, -0.1319330339646702 ], ... ],
    	[ [ 1.512173557792392, 1.0157807165916142, 1.7517844078711013, -0.519668914236376, -1.224251274661695, -1.7876685956573188, -0.05169113354897757 ], [ 1.7675888982387227, -0.8279664938471033, 0.5999500683980095, 0.5122380255635149, -1.3961232850686711, -0.11594670986614442, -1.9001217166081747 ], [ 1.6562735526444032, -0.06825971791714994, -1.1079001452967987, -0.5715175996013032, -0.5359096907075745, 1.984274641387303, 0.7878577865616356 ], [ -1.1036564602888528, -0.5756540562878907, -0.7159159539089215, -0.6602628830204392, 0.748309460856479, -0.5359350505518533, 0.18805435572494097 ], [ -1.5320645686386003, 0.3084257090276015, -0.15203036625485322, -1.431590833198442, -1.8796651546712062, 0.6076766751422026, 1.6677665948502114 ], [ -1.8875411624221219, 1.9360790762699944, -0.46378991716381707, -1.239904226838095, 0.972162175170432, -1.931949882114648, -0.0756013484097404 ], [ -0.8962850715684623, 0.8678817437459269, -1.212457247497008, -1.1880103241449005, 1.7126001144810445, 0.2716450570761301, 0.9479799978468415 ], [ 1.951920864057459, 0.42818148617139523, -0.9800240946434869, -0.19973385804896332, 0.536098922500587, -1.972339290315841, -0.08400006532100768 ], ... ],
    	...
    ]

To produce the following output:

TrainingTester.java:633 executed in 0.04 seconds (0.000 gc):

    Result[] array = ConstantResult.batchResultArray(pop(RefUtil.addRef(data)));
    @Nullable
    Result eval = layer.eval(array);
    assert eval != null;
    TensorList tensorList = Result.getData(eval);
    String temp_18_0016 = tensorList.stream().limit(1).map(x -> {
      String temp_18_0017 = x.prettyPrint();
      x.freeRef();
      return temp_18_0017;
    }).reduce((a, b) -> a + "\n" + b).orElse("");
    tensorList.freeRef();
    return temp_18_0016;

Returns

    [
    	[ [ -0.05805300547004067, -0.008250160869593477, 0.08928573518508973, 0.10787874835045898, -0.034570061678169194 ], [ 0.034583273309100555, 0.06055551287508032, 0.07665645351738762, 0.004852846985486929, 0.13120042926486178 ], [ 0.17781864881268117, 0.007137787179142032, 0.06321140339744152, -0.0621724922287668, -0.09725898226640159 ], [ 0.07986393909623969, 0.11100388598476266, -0.01438308863191925, -0.11820868353876327, -0.1272311410076402 ], [ 0.031210215577606407, 0.05785314615693433, 0.03271680360815897, 0.08722396210833455, 0.03745231239463189 ], [ 0.09426248760558081, -0.1351092651176479, -0.09467639659645907, 0.009550129107611166, 0.07633944290723278 ], [ 0.1524041131410683, 0.05771442215330323, -0.002225790821864994, -0.12125318301711972, 0.012372134083495813 ], [ 0.13194116612153853, 0.08111297229684644, 0.07036550260356922, -0.09315447002420549, -0.0057274724480964306 ], ... ],
    	[ [ -0.0425669803026229, 0.1479383460276536, -0.11461147754565774, 0.2109271198650158, -0.16697894501683336 ], [ -0.2307209561199474, -0.10952467300862274, 0.03284487571911507, 0.07516923515967527, 0.03660992730621361 ], [ -0.2743018901091264, -0.021402650168850002, -0.18550659079657972, 0.12492696425867549, 0.10896199714235363 ], [ -0.05422071566719439, 0.0138396186311491, 0.01986137619019867, 0.01024749492622231, -0.13916071398966678 ], [ 0.10625326553742075, 0.08648696992138183, -0.024620286535953422, -0.1520601836252225, -0.10504862527475926 ], [ -0.0432519454785738, -0.013419133012906306, -0.0496335799077614, -0.1104375713166924, 0.12608217373276032 ], [ -0.14867430896752967, -0.0959625855491823, -0.10394025644492257, 0.04216327963638739, 0.028405612852127202 ], [ 0.15201138223480443, -0.029773233899409, 0.06382794547371008, -0.07553017520529631, 0.007525400428808449 ], ... ],
    	[ [ 0.05723525033788631, -0.036376722137457296, 0.027882451320052817, 0.11684704722520584, 0.10899310121592146 ], [ 0.10595020944904086, -0.232788260298894, -0.15392915443189076, -0.16019029493038092, 0.17828233354470255 ], [ 0.06793573263332757, 0.05721182022016962, 0.07573190617293045, 0.014370621823993287, 0.049767951910242934 ], [ 0.05866746463349594, 0.027716238008933743, 0.03212020447774355, 0.011779165705900941, -0.18460159731394565 ], [ 0.012864358180880242, -0.08493601296916257, -0.06521988228314592, 0.02814660638047553, -0.1322864122888396 ], [ -0.008576393049113867, 0.1184922745925984, -0.08609267999845652, 0.01864880212766515, -0.025600144468164294 ], [ -0.010889521126578783, 0.1680171509412392, 0.05629479188207204, -0.03307049301060401, -0.006847330311745056 ], [ -0.0042474851763982975, -0.00973285043328727, 0.010823836849264783, 0.043584763021735966, 0.06998067415696953 ], ... ],
    	[ [ -0.05930745082318528, 0.05994681256425223, 0.04758636002365197, 0.03877295356241955, -0.17734088917580604 ], [ -0.009584434613554942, -0.05874727004972019, 0.04491146564241836, -0.09014915355377351, 0.1708810241673342 ], [ 0.11900199622725194, -0.06568856653871073, -0.0026523079931912406, -0.09615280906159629, 0.04076543008480458 ], [ -0.15045741663122694, 0.0735234787950395, 0.04012058971655407, 0.10434639565788956, -0.19411952698069712 ], [ -0.12605274792272844, -0.15254706795514172, -0.0315429928562807, 0.06422207135992287, -0.004816086968112486 ], [ 0.02629448336240309, -0.026229653328953585, 0.0057912918053758, -0.15834205660068115, 0.09974502629845673 ], [ 0.20070488662115832, -0.09472273226762558, 0.1313505006967174, -0.19017804007643915, 0.12054648607543852 ], [ 0.17068638724435395, -0.005695014124579507, -0.059404291740668365, -0.07866439609114424, 0.19452585118861243 ], ... ],
    	[ [ -0.015571082518880086, -0.05920476575516939, -0.028160709140272525, -0.08534996607721625, 0.04043922136242028 ], [ 0.03741962164879557, 0.06717217558837396, 0.07992719371331182, -0.15780882376470837, -0.0885678266061933 ], [ -0.06577311918813794, 0.06940940045843949, -0.004633775735884197, 0.08442569014883555, 0.14944024599478553 ], [ 0.1687445964185901, 0.12114072586945197, 0.1401762322541875, -5.427410715407559E-4, -0.05838716127261828 ], [ -0.11681882709681299, 0.008326731717101363, -0.19208859096687234, 0.08810844485940277, 0.23648643796788854 ], [ 0.006869545900390434, -0.06321795971805484, -0.018116298312004297, 0.18226417324529917, 0.040996542396481955 ], [ 0.006737229002463041, -0.01789933740465042, -0.007484269852632471, -0.17665671474373287, -0.08540556050996757 ], [ 0.12830823478818726, 0.15365615179777403, 0.07205467283013911, -0.14876369153235586, 0.10995431202204486 ], ... ],
    	[ [ -0.006229448965460331, -0.030247808933428353, 0.10762419613847134, -0.015730705621322665, -0.029407593036492295 ], [ 0.16703369610716587, 0.028803784905686303, 0.049593901602222004, 0.016465906615356497, -0.07076148805839602 ], [ 0.23198845611172944, 0.22051857259736662, 0.14053800034442993, -0.037631816980453814, 0.02877622652498434 ], [ -0.08614449988770291, 0.13824055399724214, -0.11675100870945476, 0.0794626251649474, -0.26096830309335395 ], [ 0.027589507475202713, 0.16358405763708328, 0.023189646902455695, 0.07374468171466281, -0.18299064529856565 ], [ -0.01878528962127007, 0.16281313190072105, 0.20832244677900272, 0.10302316783733936, -0.09329275626940511 ], [ -0.017795198792065935, -0.02384761826000696, 0.06604968066690119, -0.07772438542550585, -0.17876623596186408 ], [ 0.06799866859594855, 0.16660577326867518, 0.1806920971789177, 0.010665467083012525, -0.22120192934326996 ], ... ],
    	[ [ -0.04145796356338412, 0.12994992253122675, -0.008624247170734265, -0.09170859091944628, -0.1048897561017042 ], [ 0.007629826450161758, -0.0025877628685326013, -0.10339531098987494, -0.04505615650138488, 0.03665630611320554 ], [ -0.16648179189549736, -0.0958892656559265, 0.00412551234901493, -0.02143060026119781, 0.13180432799189817 ], [ 0.010891462367744678, -0.08910757081113385, 0.05356297407487289, 0.12261172311539219, 0.03974037923045877 ], [ 0.029651426605902483, -0.06733579870162974, 0.06579116969762368, -0.029107939630318075, 0.06642973505519575 ], [ -0.07876037708563723, 0.09522530971996457, 0.04737953496463323, 0.0840776994910883, -0.05191372228978553 ], [ -0.04842664508722084, 0.15071864546224237, 0.09394964759805721, 0.11744442073655856, -0.017308276972976985 ], [ 0.04588469678838812, 0.054549815179642865, 0.2490107371344112, 0.1608693048857592, -0.06113872882118556 ], ... ],
    	[ [ 0.18898019241844694, 0.01603823127030162, -0.029499646061865826, -0.1978695206622288, 0.09246548166429729 ], [ 0.0780450433892629, -0.06818708566287972, -0.28521805096894864, 0.07771067128251857, 0.17353172354695592 ], [ 0.09809445995491325, 0.016382383590453922, -0.11694540694923482, 0.06758083032708999, -0.06524380485388258 ], [ -0.25610764971465705, 0.0023176907899608357, -0.042555658198760705, 0.024754836610581258, 0.13177967094008264 ], [ -0.10206829479894769, -0.07145372730949129, -0.08912862989867533, 0.14661491172083893, -0.08772673527414013 ], [ -0.09489830015998887, 0.08418397405048876, 0.0377085677826218, 0.05542826217367051, -0.03233731410585764 ], [ -0.06296977792881027, -0.05122521764648843, 0.03926541715878121, 0.15145136853051527, 0.13897174913929441 ], [ 0.06494201205129829, 0.08583617538108476, 0.09116952340716442, -0.006907710178011432, -0.16725807009494692 ], ... ],
    	...
    ]

Conjugate Gradient Descent

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

TrainingTester.java:452 executed in 30.72 seconds (0.328 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: 12981985977772
Reset training subject: 12982266891273
Constructing line search parameters: GD
F(0.0) = LineSearchPoint{point=PointSample{avg=213.04624978164088}, derivative=-112.02929697844876}
New Minimum: 213.04624978164088 > 213.04624977043795
F(1.0E-10) = LineSearchPoint{point=PointSample{avg=213.04624977043795}, derivative=-112.02929697247593}, evalInputDelta = -1.1202928362763487E-8
New Minimum: 213.04624977043795 > 213.04624970322038
F(7.000000000000001E-10) = LineSearchPoint{point=PointSample{avg=213.04624970322038}, derivative=-112.0292969366394}, evalInputDelta = -7.842049853934441E-8
New Minimum: 213.04624970322038 > 213.04624923269733
F(4.900000000000001E-9) = LineSearchPoint{point=PointSample{avg=213.04624923269733}, derivative=-112.02929668578317}, evalInputDelta = -5.489435466188297E-7
New Minimum: 213.04624923269733 > 213.04624593903606
F(3.430000000000001E-8) = LineSearchPoint{point=PointSample{avg=213.04624593903606}, derivative=-112.02929492978971}, evalInputDelta = -3.842604826331808E-6
New Minimum: 213.04624593903606 > 213.0462228834084
F(2.4010000000000004E-7) = LineSearchPoint{point=PointSample{avg=213.0462228834084}, derivative=-112.02928263783538}, evalInputDelta = -2.6898232476924022E-5
New Minimum: 213.0462228834084 > 213.0460614940858
F(1.6807000000000003E-6) = LineSearchPoint{point=PointSample{avg=213.0460614940858}, derivative=-112.0291965941546}, evalInputDelta = -1.8828755509048278E-4
New Minimum: 213.0460614940858 > 213.0449317722984
F(1.1764900000000001E-5) = LineSearchPoint{point=PointSample{avg=213.0449317722984}, derivative=-112.02859428839012}, evalInputDelta = -0.001318009342469395
New Minimum: 213.0449317722984 > 213.03702388985215
F(8.235430000000001E-5) = LineSearchPoint{point=PointSample{avg=213.03702388985215}, derivative=-112.02437814811672}, evalInputDelta = -0.009225891788730678
New Minimum: 213.03702388985215 > 212.98167704594246
F(5.764801000000001E-4) = LineSearchPoint{point=PointSample{avg=212.98167704594246}, derivative=-111.99486516996475}, evalInputDelta = -0.06457273569841959
New Minimum: 212.98167704594246 > 212.5946574658172
F(0.004035360700000001) = LineSearchPoint{point=PointSample{avg=212.5946574658172}, derivative=-111.78827450721424}, evalInputDelta = -0.45159231582368875
New Minimum: 212.5946574658172 > 209.90552835503954
F(0.028247524900000005) = LineSearchPoint{point=PointSample{avg=209.90552835503954}, derivative=-110.34214889926362}, evalInputDelta = -3.1407214266013455
New Minimum: 209.90552835503954 > 192.0619850520656
F(0.19773267430000002) = LineSearchPoint{point=PointSample{avg=192.0619850520656}, derivative=-100.21971216955578}, evalInputDelta = -20.984264729575273
New Minimum: 192.0619850520656 > 115.18487076172096
F(1.3841287201) = LineSearchPoint{point=PointSample{avg=115.18487076172096}, derivative=-29.384336112912045}, evalInputDelta = -97.86137901991992
F(9.688901040700001) = LineSearchPoint{point=PointSample{avg=1926.9828904088736}, derivative=465.4018577420959}, evalInputDelta = 1713.9366406272327
F(0.7453000800538463) = LineSearchPoint{point=PointSample{avg=146.13747595252119}, derivative=-67.52174732270849}, evalInputDelta = -66.9087738291197
F(5.217100560376924) = LineSearchPoint{point=PointSample{avg=440.7782973901436}, derivative=199.20923295683355}, evalInputDelta = 227.73204760850274
F(0.40131542772130185) = LineSearchPoint{point=PointSample{avg=172.89656635238435}, derivative=-88.06183263535493}, evalInputDelta = -40.14968342925653
F(2.809207994049113) = LineSearchPoint{point=PointSample{avg=133.90797632796813}, derivative=55.65179709512364}, evalInputDelta = -79.13827345367275
133.90797632796813 <= 213.04624978164088
New Minimum: 115.18487076172096 > 107.95168749377933
F(1.8768579628987598) = LineSearchPoint{point=PointSample{avg=107.95168749377933}, derivative=0.023578596600261972}, evalInputDelta = -105.09456228786155
Right bracket at 1.8768579628987598
Converged to right
Fitness changed from 213.04624978164088 to 107.95168749377933
Iteration 1 complete. Error: 107.95168749377933 Total: 9.6606; Orientation: 0.1808; Line Search: 8.6692
F(0.0) = LineSearchPoint{point=PointSample{avg=107.95168749377933}, derivative=-0.010597188158348854}
New Minimum: 107.95168749377933 > 107.94174291607351
F(1.8768579628987598) = LineSearchPoint{point=PointSample{avg=107.94174291607351}, derivative=1.3920657755189767E-7}, evalInputDelta = -0.009944577705823576
107.94174291607351 <= 107.95168749377933
Converged to right
Fitness changed from 107.95168749377933 to 107.94174291607351
Iteration 2 complete. Error: 107.94174291607351 Total: 1.3051; Orientation: 0.1811; Line Search: 0.8735
F(0.0) = LineSearchPoint{point=PointSample{avg=107.94174291607351}, derivative=-3.244439836397651E-6}
New Minimum: 107.94174291607351 > 107.94173867622189
F(1.8768579628987598) = LineSearchPoint{point=PointSample{avg=107.94173867622189}, derivative=-1.273591581071081E-6}, evalInputDelta = -4.239851620013724E-6
F(13.13800574029132) = LineSearchPoint{point=PointSample{avg=107.94179091615929}, derivative=1.0551497962887407E-5}, evalInputDelta = 4.80000857834284E-5
F(1.0106158261762554) = LineSearchPoint{point=PointSample{avg=107.94174017343717}, derivative=-2.183213852827058E-6}, evalInputDelta = -2.7426363402582865E-6
F(7.074310783233788) = LineSearchPoint{point=PointSample{avg=107.94174623994627}, derivative=4.184142051955575E-6}, evalInputDelta = 3.3238727610296337E-6
F(0.5441777525564452) = LineSearchPoint{point=PointSample{avg=107.94174130600112}, derivative=-2.673010460647996E-6}, evalInputDelta = -1.6100723883027968E-6
New Minimum: 107.94173867622189 > 107.94173817570893
F(3.8092442678951164) = LineSearchPoint{point=PointSample{avg=107.94173817570893}, derivative=7.555657948044552E-7}, evalInputDelta = -4.740364573763145E-6
107.94173817570893 <= 107.94174291607351
New Minimum: 107.94173817570893 > 107.9417379038818
F(3.089711612634445) = LineSearchPoint{point=PointSample{avg=107.9417379038818}, derivative=-1.7300838530082217E-16}, evalInputDelta = -5.012191707010061E-6
Left bracket at 3.089711612634445
Converged to left
Fitness changed from 107.94174291607351 to 107.9417379038818
Iteration 3 complete. Error: 107.9417379038818 Total: 3.8079; Orientation: 0.1754; Line Search: 3.3837
F(0.0) = LineSearchPoint{point=PointSample{avg=107.9417379038818}, derivative=-2.0931919833760326E-6}
New Minimum: 107.9417379038818 > 107.94173352468174
F(3.089711612634445) = LineSearchPoint{point=PointSample{avg=107.94173352468174}, derivative=-7.41506269718801E-7}, evalInputDelta = -4.379200063908684E-6
F(21.627981288441113) = LineSearchPoint{point=PointSample{avg=107.94179495218141}, derivative=7.368608018120034E-6}, evalInputDelta = 5.704829960961888E-5
F(1.663690868341624) = LineSearchPoint{point=PointSample{avg=107.94173502690012}, derivative=-1.3653612145108526E-6}, evalInputDelta = -2.876981682220503E-6
F(11.645836078391369) = LineSearchPoint{point=PointSample{avg=107.94174319360349}, derivative=3.0016234001727705E-6}, evalInputDelta = 5.2897216846758965E-6
F(0.8958335444916438) = LineSearchPoint{point=PointSample{avg=107.94173620427276}, derivative=-1.7012831078407661E-6}, evalInputDelta = -1.6996090437260136E-6
New Minimum: 107.94173352468174 > 107.941733379406
F(6.270834811441507) = LineSearchPoint{point=PointSample{avg=107.941733379406}, derivative=6.501701457688909E-7}, evalInputDelta = -4.5244757984619355E-6
107.941733379406 <= 107.9417379038818
New Minimum: 107.941733379406 > 107.94173289627349
F(4.78466222775918) = LineSearchPoint{point=PointSample{avg=107.94173289627349}, derivative=-8.861891628234985E-17}, evalInputDelta = -5.007608308460476E-6
Left bracket at 4.78466222775918
Converged to left
Fitness changed from 107.9417379038818 to 107.94173289627349
Iteration 4 complete. Error: 107.94173289627349 Total: 3.9276; Orientation: 0.1831; Line Search: 3.4943
F(0.0) = LineSearchPoint{point=PointSample{avg=107.94173289627349}, derivative=-3.2465184091099516E-6}
New Minimum: 107.94173289627349 > 107.94172940931017
F(4.78466222775918) = LineSearchPoint{point=PointSample{avg=107.94172940931017}, derivative=1.78895959033261E-6}, evalInputDelta = -3.4869633225298458E-6
107.94172940931017 <= 107.94173289627349
New Minimum: 107.94172940931017 > 107.94172788882689
F(3.0848102216935125) = LineSearchPoint{point=PointSample{avg=107.94172788882689}, derivative=-5.4110794011209655E-16}, evalInputDelta = -5.007446603144672E-6
Left bracket at 3.0848102216935125
Converged to left
Fitness changed from 107.94173289627349 to 107.94172788882689
Iteration 5 complete. Error: 107.94172788882689 Total: 2.0858; Orientation: 0.1791; Line Search: 1.6572
F(0.0) = LineSearchPoint{point=PointSample{avg=107.94172788882689}, derivative=-2.0963607014008876E-6}
New Minimum: 107.94172788882689 > 107.94172351171451
F(3.0848102216935125) = LineSearchPoint{point=PointSample{avg=107.94172351171451}, derivative=-7.414880308791977E-7}, evalInputDelta = -4.377112375664183E-6
F(21.593671551854587) = LineSearchPoint{point=PointSample{avg=107.94178501906657}, derivative=7.387748001712215E-6}, evalInputDelta = 5.713023968212383E-5
F(1.6610516578349683) = LineSearchPoint{point=PointSample{avg=107.94172501257097}, derivative=-1.3668138788607832E-6}, evalInputDelta = -2.876255919659343E-6
F(11.62736160484478) = LineSearchPoint{point=PointSample{avg=107.94173320314948}, derivative=3.0104670589150683E-6}, evalInputDelta = 5.314322592653298E-6
F(0.894412431141906) = LineSearchPoint{point=PointSample{avg=107.94172618949315}, derivative=-1.703527796970113E-6}, evalInputDelta = -1.699333736837616E-6
New Minimum: 107.94172351171451 > 107.94172337193791
F(6.260887017993342) = LineSearchPoint{point=PointSample{avg=107.94172337193791}, derivative=6.534696303175291E-7}, evalInputDelta = -4.516888978400857E-6
107.94172337193791 <= 107.94172788882689
New Minimum: 107.94172337193791 > 107.94172288580975
F(4.773049940223093) = LineSearchPoint{point=PointSample{avg=107.94172288580975}, derivative=-1.5283820148609233E-16}, evalInputDelta = -5.003017136573362E-6
Left bracket at 4.773049940223093
Converged to left
Fitness changed from 107.94172788882689 to 107.94172288580975
Iteration 6 complete. Error: 107.94172288580975 Total: 4.0019; Orientation: 0.1835; Line Search: 3.5679
F(0.0) = LineSearchPoint{point=PointSample{avg=107.94172288580975}, derivative=-3.2486007488739503E-6}
New Minimum: 107.94172288580975 > 107.94171939434031
F(4.773049940223093) = LineSearchPoint{point=PointSample{avg=107.94171939434031}, derivative=1.7856077074774022E-6}, evalInputDelta = -3.491469442451489E-6
107.94171939434031 <= 107.94172288580975
New Minimum: 107.94171939434031 > 107.9417178828447
F(3.080073807960588) = LineSearchPoint{point=PointSample{avg=107.9417178828447}, derivative=-6.594386546017591E-16}, evalInputDelta = -5.002965053790831E-6
Left bracket at 3.080073807960588
Converged to left
Fitness changed from 107.94172288580975 to 107.9417178828447
Iteration 7 complete. Error: 107.9417178828447 Total: 2.0565; Orientation: 0.1812; Line Search: 1.6231
F(0.0) = LineSearchPoint{point=PointSample{avg=107.9417178828447}, derivative=-2.099490044428567E-6}
New Minimum: 107.9417178828447 > 107.94171350755514
F(3.080073807960588) = LineSearchPoint{point=PointSample{avg=107.94171350755514}, derivative=-7.415390086617436E-7}, evalInputDelta = -4.3752895635407185E-6
F(21.560516655724115) = LineSearchPoint{point=PointSample{avg=107.94177509019543}, derivative=7.4061672185779744E-6}, evalInputDelta = 5.7207350735666296E-5
F(1.6585012812095472) = LineSearchPoint{point=PointSample{avg=107.94171500718949}, derivative=-1.3682856406214985E-6}, evalInputDelta = -2.8756552126196766E-6
F(11.60950896846683) = LineSearchPoint{point=PointSample{avg=107.9417232200305}, derivative=3.018940785684527E-6}, evalInputDelta = 5.337185797316124E-6
F(0.8930391514205254) = LineSearchPoint{point=PointSample{avg=107.94171618372403}, derivative=-1.7057645962442946E-6}, evalInputDelta = -1.699120673492871E-6
New Minimum: 107.94171350755514 > 107.94171337285694
F(6.251274059943677) = LineSearchPoint{point=PointSample{avg=107.94171337285694}, derivative=6.565880938351808E-7}, evalInputDelta = -4.5099877610255135E-6
107.94171337285694 <= 107.9417178828447
New Minimum: 107.94171337285694 > 107.9417128839423
F(4.762015804861889) = LineSearchPoint{point=PointSample{avg=107.9417128839423}, derivative=-2.1040785453741492E-16}, evalInputDelta = -4.99890239780143E-6
Left bracket at 4.762015804861889
Converged to left
Fitness changed from 107.9417178828447 to 107.9417128839423
Iteration 8 complete. Error: 107.9417128839423 Total: 3.8700; Orientation: 0.1806; Line Search: 3.4348
Final threshold in iteration 8: 107.9417128839423 (> 0.0) after 30.716s (< 30.000s)

Returns

    107.9417128839423

This training apply resulted in the following configuration:

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

    RefList<double[]> state = network.state();
    assert state != null;
    String description = state.stream().map(RefArrays::toString).reduce((a, b) -> a + "\n" + b)
        .orElse("");
    state.freeRef();
    return description;

Returns

    [2.8050245713670487E-4, 0.00548269888340533, 0.007687038363685759, -0.012250999460705814, 0.011392624618276568, -0.014529145740139074, -0.00567110928614564, -0.002200040634680709, 0.011409857480957205, -0.0018360736794644783, -0.010389250737387369, -0.01391641382575401, 0.008529083417135193, -0.004078432784623166, 0.005735937159536468, -0.02465526736531608, 0.01623212758181981, -0.022905164875140525, 0.005323897082287292, -0.004539682070304535, 1.6183361479918954E-4, 0.013682369236284537, -0.0045682399337421895, 0.0027989096813080434, 0.010340349462854549, 0.006524191678406785, -0.006627434366618343, -0.006908715412696198, -0.006617516463816215, 0.0060332639955872035, -6.49740976003971E-5, 0.01489141705858001, -0.0017775534716200074, 0.010152680002234996, 0.014140598232629906, 0.0053094176589378785, 0.013481773567004803, 0.007060523552784956, 0.0020163334373812284, -0.0030108401826274864, 2.1137691754640332E-4, -0.005875659892057489, 0.006778259073467836, -0.01445767354133455, 8.344251339620216E-5, 0.016062049608750177, -0.0025245156969856694, 0.009223431384635371, 0.015843056548765527, 0.002181865317662663, 0.007327382910345564, -0.0010276491701162933, -0.017568622324062918, 0.025128150653702146, -0.011033132573826258, -0.03288062647265998, 0.009088102756864168, -0.016202515984839943, 3.718594561316281E-4, -0.010709987003437033, -8.692151864716678E-5, -6.173937625656952E-4, -0.007230653001518315, 0.00655661036728055, -0.023243119677287843, 0.010667772406389173, -1.2845132806427164E-5, -0.0059939690879836135, -0.014354627716747548, -0.00259384834568836, 0.008785193112838667, -7.552883552952705E-4, -0.007665872377690808, -0.0036790111118420532, -0.007652945759079663, 0.005036354729545867, 0.004459397680036668, 0.006475340709898045, 0.02293395831615408, 0.007050634541618105, -0.005268457868502094, 0.02089018870712112, -0.010098570371765378, -6.392663586494552E-4, 0.013693775271914682, 0.007631051297627546, -0.007583909993913894, -0.008232528277948833, 0.011477726183535113, 0.012813641355343342, 0.0014084614099349009, 0.015205368527072138, 0.007487379025670263, -0.0013939077168582936, -0.004279974090605088, 0.006178451743300285, -0.010754717518920801, 0.02430514559081808, 0.01243812370540127, 0.00943591806173056, 0.004295640571505924, -0.011441957087204581, 0.012618026569654705, 0.002234160398108521, -0.015427166160047013, -0.0015242676456549554, -0.01862129049784214, -0.0063314265113415735, -0.014523366399261634, 0.0018803157566244385, 0.0015296356273643598, -0.007018965766530729, 7.828459259612152E-4, -0.003175735185294796, -0.005708622289066529, 0.008217171719521046, 5.671750963350325E-4, -7.953185965355618E-4, -0.005403591686234332, 0.002578265821206366, 0.0018610936952860502, -0.00870293113738578, -0.0037452731863710487, 0.0012263189387091426, 0.01181961219797738, 0.005370472843561076, -0.00988464289386915, 0.010146562854803101, 0.009609116702298318, 7.662867654935021E-4, -0.013639506475255534, 0.004536694648667835, -0.008554419067117234, -0.006708244789930314, 0.008850790283064071, -0.004452693337123185, 0.020936702462511673, -0.015242679373745273, -0.005733450466477567, 0.006998918990615451, 0.0018564949133390322, 0.004651268351100581, 0.010049234252520457, -0.017567035839342257, -1.7152811236498705E-4, -9.880644815842103E-4, -0.005040433958751365, -0.00796082081393001, 0.0017155315927572317, 0.00420113330823907, -0.005254265376534999, 0.010263216191564384, -0.006713462854707199, -0.006312692062186497, 0.020685959945476645, 0.005067857326212361, 0.0010517025059142413, 0.005978012125557852, 0.005724902338563411, -0.005830837209586174, 0.0016794806575981985, 0.012445751202130415, 0.006022223081288481, 0.0036976246873507315, -0.0141403190825299, -0.014571556576771685, 0.016873891138234134, -0.0024218546840254207, 0.01556399654991606, -0.005776101630749716, -0.009243920206964898, -0.0016605372354310964, -0.0019295131862972121, 0.018234925441955405, -0.011169048356433826, 0.00611188687974126, 0.0077642705312392256, 0.00890306700389718, 0.018325455614096535, 0.001957790873969649, -0.01953144120994495, -0.009589607660710325, -0.0014294198628583795, 0.01387185683713036, 0.004084046217667177, -0.011720684465316936, 0.00948798826455389, 0.016970846849988445, -0.004020837260600176, -0.010707465477873539, 0.006400863394111989, -0.009583626519285769, 0.00233444828735515, -0.015045081543087362, 0.008731968758530932, -0.0012230851233644387, -0.004467474361585335, -0.008281155394670904, -0.003910349879515088, -0.004284858370254203, 0.006083336993199635, -0.015127003574284703, 0.0014944269408055468, 0.014436029284382224, 0.006992598444389722, 0.00472942757661003, -0.006419062558358947, -0.0049468029684143116, -0.012250807897198037, 0.006820423443746406, -0.014215143560561524, -0.015125050175333249, -0.010603644361333188, -0.018144627396237255, 0.011822678311047094, -0.0012739720821164236, 0.00885357853626993, -0.002498667088735874, 0.004624770530740372, -0.006093928123480893, -0.007994375062585239, -0.03847652115170198, -0.018197341198444072, 0.0046534866644930145, 0.024549171906953653, 0.00885073104313221, -0.006761798103501607, 5.030702767953631E-4, 0.021831340252644847, 0.0018102935475423122, 0.00537842618181325, 0.010850059509528644, 0.012873913027007366, -0.0012761846345553237, -0.014681926850683516, -0.0018816005570786755, -0.010169462219367202, -0.018117698812710813, -0.002537686270472508, 0.0032192751118564978, 4.259396527819734E-5, 0.010642825235232467, -0.010686577331442857, 0.00944259067570294, 0.028622638528185054, 0.0021214822279189446, 0.007704820571768451, -0.011622201743307352, 0.006812794580632075, -0.008999856696919502, -0.008831679085184126, -0.004152763229510548, -0.011825319533192906, 0.002588838563114457, -0.012818749227826779, -0.004399682062005495, 0.02240012000533204, 0.004593281160135637, 0.012130989517300819, -0.021491835798333445, -0.022980144961057554, 0.002155558251632642, 0.004768025001630063, 0.01597139373524592, -0.015663343282835047, 0.0029265603685795063, 0.001144948233284043, 0.00460253217629653, -8.858122563992205E-4, 0.008901885399682338, -0.014612200294446745, -0.019798817181903662, -0.017902280561240862, 0.012412979348143996, -0.010015264753935316, 0.013750677140948716, -0.015309698004691834, -0.0026000467906038575, -0.011215492345487662, -0.0012609718855696853, 0.009689699740839391, -0.00923299695936777, -0.012033172477354408, 0.010514355529952394, -0.012871313762597763, 0.00933117848677413, -0.016341970974253456, -0.013614045384311886, 0.005090789809334314, -0.02803925301333471, 0.012239412892439433, 0.005763833980322459, 0.002493432849898626, 0.008182168925027655, -0.037399102807278484, -0.009652306424146507, 0.004718653062840375, 0.013165183620552993, -0.007565921871402148, -0.005381936982830321, 0.01888936185326477, -0.0037762659243904015, 0.01211947529564175, -0.01492422807867778, 0.0062923831273538735, -0.012473249960421541, -3.2463803598135405E-4, 0.00789367981148959, 0.005868712750451097, -0.010076128452781859, -0.006001581725603013, 0.002663405940757182, 0.008888018182804061, 0.0031915937815057806, -0.020936280199115715, 0.184, 1.7, -1.696, 0.92, -1.476, -1.688, 1.36, -0.816, 1.288, -0.712, 1.916, 1.98, 1.288, 0.392, -0.032, -0.676, 1.168, 0.788, 0.464, -0.852, 0.028, 0.08, 1.084, 0.332, 1.704, 1.048, 1.652, -1.384, 1.972, -1.42, -0.472, 0.764, -1.176, -0.832, 0.56, 0.048, 1.22, -1.176, -0.86, -1.248, -1.096, 1.652, -1.812, 0.996, 1.876, -0.684, 1.912, -1.552, -1.16, 0.0, 1.052, 0.0, 1.012, -0.344, -0.768, -0.384, 1.052, -1.808, -1.312, -1.564, -1.248, -1.476, 1.052, -1.724, 1.628, 0.496, 0.948, -1.116, 1.96, -1.176, -0.636, -0.516, -1.732, 1.352, -1.808, 1.196, 0.784, 1.244, -0.768, 0.184, -0.212, 1.552, 1.108, -1.028, -1.54, 0.464, -1.104, 0.66, 1.208, -0.584, 0.392, 1.616, -0.468, -0.556, 0.344, -1.516, 0.448, -0.504, -0.748, -1.1, 0.7, -0.472, -1.484, -0.652, 0.124, 1.664, 0.52, -1.58, 0.996, -0.488, -0.632, -1.656, -1.16, 0.028, -1.656, 1.64, 1.66, -0.628, 1.956, -0.408, -1.976, 0.016, 0.3, 0.012, -0.376, 1.448]

And regressed input:

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

    return RefArrays.stream(RefUtil.addRef(data)).flatMap(x -> {
      return RefArrays.stream(x);
    }).limit(1).map(x -> {
      String temp_18_0015 = x.prettyPrint();
      x.freeRef();
      return temp_18_0015;
    }).reduce((a, b) -> a + "\n" + b).orElse("");

Returns

    [
    	[ [ -1.1519713424886562, 1.2640393749204772, -1.0879139167732041, -1.2719568716777416, -1.6799163987567594, -1.3920250662286984, 0.2320453986692601 ], [ 0.6520903598200161, 1.69983781704013, 1.6598552794225023, 1.1879198094706642, -0.02803769561636682, -1.9880095673022318, 0.34420050255496315 ], [ 1.8839366940927407, 1.3558413494371544, -1.7078980627724276, 1.1678993818712096, 0.28772988977570074, -1.3600028050495099, -1.736023461984336 ], [ 0.13595278000873096, 0.8680606608622043, 0.9359147151932038, 1.3120559426927656, 1.6799006402801255, -0.5878942829897915, -1.7920328411744575 ], [ -1.791888526718733, -0.5359535840004637, -0.43584921674070864, 0.06790825207934713, 1.8999351358446217, -1.9917016738171205, -1.1600018524138247 ], [ 0.28806362770626714, -1.8959274006082443, 1.1600027995752114, 0.3319450314386383, 0.08410187704901463, -1.155962290493772, 1.0958240119265774 ], [ 1.852002621445257, -1.0279453030388372, -1.5159430262342988, 1.0479667729611428, -0.3320075106906421, 0.18007257489362968, 1.0279540048852271 ], [ -1.9279511189278165, 1.9599561387021966, -0.3840209577433572, 1.184032906765151, 0.49203026068196853, -0.14799858001256555, -1.0239707354580738 ], ... ],
    	[ [ -1.0199893702723712, 1.6639536516152225, -1.8438837787794835, -1.5799261372102602, 0.8958381763300789, -0.8559438500906763, 0.14806648862846797 ], [ -1.2999985366872027, -0.7520212285268572, -0.3678935073068028, -0.8439243515591772, 1.979811994597466, -0.4679530826855662, -0.6199583862772823 ], [ 0.5479017207747451, 0.752068134955449, 0.9440517552569081, 0.15603100633250092, -1.7558288758760219, 0.9240800596461353, 0.6760358823413887 ], [ -1.228057764019543, 0.04782350782241136, -0.9719009548134746, 1.9960825351308233, -1.611760610002775, 0.18785196447512878, 1.5200450397820608 ], [ -0.5279331553032057, -1.7278354187324627, 1.9678136842544822, -0.3800230470574053, -0.05196951150325381, -0.259869991107082, 1.0400411688188411 ], [ -0.6039097584707395, -1.2119540439343055, 1.2359551505088477, -1.9680006920066506, 0.41199087358678393, -0.7199720446492335, -1.7359299417814948 ], [ -1.939801340074733, -1.0158964821604481, 1.8559423026316426, -0.7317656248820033, -1.3279259832750236, 0.44800966813009, 0.18003927309852827 ], [ -0.08388317484145119, -0.4519873262800522, 1.6639838035665284, 0.4001041932351733, 0.743981081344975, 0.7879767477925059, 0.9118710379602731 ], ... ],
    	[ [ -1.7519749472966806, 0.32797974323275797, -0.3960339479683333, -0.9399613767501465, 1.8198434483488604, -1.8718449697398492, -0.37595344639560097 ], [ 1.8839671308416146, -0.6799997266765649, -0.9959292207373539, 1.0079364609651764, -0.6359428692079948, -1.5279461290397283, -0.7439152153176126 ], [ 0.5358198554654645, 0.8120073267185584, -0.31987542198808216, 1.4919176525022912, 1.5079667565802823, 1.1720927034178394, 0.4758645286455009 ], [ 0.2240065346622082, 1.7160638652037696, -0.8079728171240599, 0.9277120933648613, 1.855904766210845, -1.6640954759091504, 0.45577162508344277 ], [ 1.7879647651737505, -1.4198663987835516, 0.8999977820696656, -1.5280078642565948, -1.4800480125212827, -0.49592333412811435, -1.299865000954029 ], [ 0.8958491671255867, 0.3278619873565499, -0.3119291007267857, -0.643762621085269, -1.7876703913261278, 1.7877291270240352, -0.2638274785315062 ], [ -1.8119698089209397, -1.2319769124410325, 0.6439155163814734, 0.25591678173381055, -0.6401119372625493, 1.0479121765933102, -1.7678694900398548 ], [ -1.3959165839825212, -0.4477610545443046, -0.5319115322053355, 1.6239891884320172, 1.0077828827506654, 0.14793928692072164, -1.1560008817308487 ], ... ],
    	[ [ -0.8080629649311822, -1.232000085044236, 1.8519416366517139, 0.9400441642355136, -0.9160015628986133, 0.10794498455507782, 0.4399836908008142 ], [ 0.051850660408185555, 0.9997893063488763, -0.08798154272360102, 0.3999749679370698, 0.6798562477188679, 1.2318605605929867, -0.7919278628238433 ], [ 1.6319240329318085, 0.7759641746792403, -0.8079383391444573, 0.29580741705657626, 1.287958727897739, 1.8358179418934768, -0.8479049400910876 ], [ -1.9999736730973252, -0.7479253956252235, -0.18804720592326435, -0.3119501182248565, 1.4399390497914801, -1.0040015769062127, -0.4679815555597454 ], [ 0.5479770020180793, -0.5359228090022772, -1.3437684695032512, -0.5240922659095616, -1.9959018460182327, 0.0919843077401897, -0.6199861650745464 ], [ 0.8078633489712395, 0.9558958252409256, 0.6558716377156752, -1.7361335501240285, 0.07173509762628152, -1.3958939699741972, 0.659880320140154 ], [ -0.8320124903371953, -0.4039077253701078, 0.2758804870495917, 1.6961303078021754, 0.008000240539255908, -1.75178120371985, -1.3598888724255618 ], [ 0.7639038998795192, 1.7477710494503793, -1.8595634013174074, 1.1880364260302603, -0.999855161695215, -1.6559470319818463, -1.4799939658590067 ], ... ],
    	[ [ 1.1439204405042096, -1.223849453136392, -1.8997757078673951, 1.216031737276911, 1.2798858047093837, -1.4960349835998097, 1.0440122435782861 ], [ -0.37202601511393213, -1.5599360159705105, 1.6280484186986137, 0.7999129292863919, -1.2158475009939087, 1.5917689301993723, 0.7199208781578703 ], [ -1.823834466001765, 1.1720296733298745, 0.9680038303488601, 1.9317186949957268, -1.9838400752083565, 1.495918347882367, 1.1998068656118772 ], [ -0.3039872789707653, -1.295936800688398, -1.4958708367111009, 1.0879562091228225, 0.8479623661207563, -1.2000524299861475, 0.3078172074820644 ], [ 0.7000312258919471, -0.2838562795348464, 1.467958594524336, 1.463970522267563, -1.6878391619148285, -1.5397560526991059, 0.23595653675973444 ], [ -0.0477903917649712, -1.2717819161058603, 0.6917709845106371, 0.828041227357978, -1.1239928707421387, -0.9316209229096198, 0.7079791112940633 ], [ -0.44797326932009407, -1.1442672954737372, -1.4196782155724832, 1.6838933913741618, -1.667846730475284, 1.5598488389824485, 1.983983011974032 ], [ -0.444015984440901, -0.6159506875890738, 0.4157898545732607, -0.5478208325534379, 0.4640831850184533, 1.1399623850176552, 1.3680383256255797 ], ... ],
    	[ [ -0.9359535285808535, 0.07211888075965689, -0.18389163871591677, 1.5238336409182442, 0.3598557745493982, -0.8319215495898168, -0.47216705736350223 ], [ -1.287997348401872, 1.4119565012060116, 0.20811187943796236, -0.40406326000202797, -1.7281108179807094, -0.7040319169808283, -0.4159702223631228 ], [ 0.8360533713419072, -0.9080559649141863, -0.46388897881831137, -0.3840083128149734, 0.7199733188138215, 0.3399737833509627, -1.6718138749502 ], [ 0.5160076116116481, 1.9320552324700344, -0.2479897040152502, 0.647971325933491, -0.399766158063147, -0.9281999346526447, -0.8519383515779728 ], [ -0.5838439775938665, -1.3439729795927473, 1.7517864787539377, 0.09991205813725493, 1.0878602488444182, 0.19609592590480207, 1.6278520250045525 ], [ -1.2799879491815127, -1.2077904746346355, -1.9756687410130063, -1.0239403515754975, 1.2437937244841863, 0.2478743888058741, 1.771923026172686 ], [ -1.035876532066952, 0.004192150152110308, -1.5479085639361962, 0.9398388623739717, -1.208079764357522, 1.4837900931340584, 0.2561744443993378 ], [ -0.14793914734023983, 1.3678383706804969, 1.851844039952698, 1.3358237174942393, 1.03195393963749, 1.9637428829172958, -1.267871209450475 ], ... ],
    	[ [ -1.5918560513275908, 0.04789942859149116, -0.04810150555664995, -0.21181174341057643, -0.30798431714548996, -1.7478194868994201, -0.5718227805192437 ], [ -1.5478781843825016, 0.2999190154426266, -1.7798277282162818, -0.691764814540782, 0.011941556552036842, 0.8401275761906728, -0.7880020340424063 ], [ -1.7240320145287158, 1.6440282375815414, 1.0518349153034001, -1.9518142131273384, 1.156137374990057, -0.319917729746306, 0.5317894980900196 ], [ -0.33598649998151203, 0.36403462394812075, 0.7880327725462631, 1.163990480255702, 0.21194691579527197, 0.22415528151852945, -1.307660602691195 ], [ 0.524071322339774, -0.8439495390672962, -0.44007453850406486, -0.03591662749334632, 1.983994362223394, 0.367869891787373, 1.1958950472115661 ], [ -1.0239741324978775, -1.0757852600334907, 1.5041373054334435, 0.3158909489541176, 0.2399140301725482, -1.1157229891032943, -1.063926236890604 ], [ -0.6919444313517533, 1.1479665539459707, 0.09615048740499466, 0.972206470815049, 1.1238737628269349, -1.115869624079332, -0.27997647260209885 ], [ -0.6199068774346338, 1.8559260928903185, -1.6359289791836615, 1.8799590602244274, 0.21602759651189346, -1.9238501105665224, -0.13205161249283273 ], ... ],
    	[ [ 1.5119262416253738, 1.0159837192782042, 1.7518318669339323, -0.5198767817779749, -1.2239576769610307, -1.7879459503255075, -0.05194407017177399 ], [ 1.7679445291294582, -0.8280147423463864, 0.5999071568241404, 0.5120354612204758, -1.395883135122313, -0.11593554014449434, -1.8998476040306975 ], [ 1.6558546129702747, -0.06811543765729107, -1.107951101785726, -0.5717447225053914, -0.5361289764548436, 1.9839505752189868, 0.7880195162534055 ], [ -1.103857093149458, -0.5758204138300195, -0.7158533901882027, -0.6601542652352359, 0.7479828050112478, -0.5360453350172434, 0.18803638978776965 ], [ -1.531815433830676, 0.30811400240713976, -0.1520023709122715, -1.4319372703878865, -1.8799652164272278, 0.60795133683867, 1.6678130721941808 ], [ -1.887752419131486, 1.936079678086653, -0.4639960284697506, -1.239857320926038, 0.9720037880746633, -1.9318692457623219, -0.07585257996511363 ], [ -0.895946346111064, 0.8678590032948609, -1.2120844115055533, -1.1878422746309243, 1.7118956032076524, 0.27210617826900546, 0.948194118657717 ], [ 1.9518572915069479, 0.42809174133583555, -0.9800822491180984, -0.19983048268028758, 0.5360468799362411, -1.971937743827191, -0.08400533603487541 ], ... ],
    	...
    ]

To produce the following output:

TrainingTester.java:633 executed in 0.04 seconds (0.000 gc):

    Result[] array = ConstantResult.batchResultArray(pop(RefUtil.addRef(data)));
    @Nullable
    Result eval = layer.eval(array);
    assert eval != null;
    TensorList tensorList = Result.getData(eval);
    String temp_18_0016 = tensorList.stream().limit(1).map(x -> {
      String temp_18_0017 = x.prettyPrint();
      x.freeRef();
      return temp_18_0017;
    }).reduce((a, b) -> a + "\n" + b).orElse("");
    tensorList.freeRef();
    return temp_18_0016;

Returns

    [
    	[ [ -0.057726635292796535, -0.00573585898956592, 0.09240570367614828, 0.10524893241535152, -0.03156065224015263 ], [ 0.0359988239128592, 0.06230669605864616, 0.07168230225328857, 0.0024088809564649224, 0.12668297949072166 ], [ 0.17174089250989852, 0.006415999797836476, 0.05733522377851442, -0.05525039977349057, -0.09447610306393724 ], [ 0.07136418992488693, 0.10381064872159695, -0.018968561252140255, -0.11534344685258897, -0.1185791043137068 ], [ 0.025285388225951718, 0.0560993388539427, 0.03309726213677757, 0.08226298274285992, 0.031030278129535828 ], [ 0.0893938198007276, -0.12930502349884876, -0.08688850424651366, 0.002966890077615288, 0.0789311614796059 ], [ 0.14632437691100747, 0.05898175434135371, -0.0033475768342740094, -0.11458482270019463, 0.016197787516151776 ], [ 0.12194158247045998, 0.07342511728714049, 0.06472928589652518, -0.09138863523120166, -0.0032828601062608468 ], ... ],
    	[ [ -0.043269089572802205, 0.14356226076730147, -0.11138356947030029, 0.20942891156799273, -0.16389232530694475 ], [ -0.22249912258450497, -0.1038312956511668, 0.026368914404028092, 0.07857914332119575, 0.03373899349263615 ], [ -0.26290463462387836, -0.01412544104340149, -0.18286107902081944, 0.1218529098455571, 0.11013998166367947 ], [ -0.04887235780586153, 0.013268339368211644, 0.019053447245434854, 0.008843255666287521, -0.13280162272342758 ], [ 0.1061691924741498, 0.08050879679142149, -0.023746959868253013, -0.14715604531887969, -0.10105808880525437 ], [ -0.0424812710062266, -0.0198591271866685, -0.048798117253605666, -0.10384738779359624, 0.11832800230159779 ], [ -0.14121874115468228, -0.10063674739966513, -0.09058631733402646, 0.04295266338996557, 0.021710860003077644 ], [ 0.14786487015446892, -0.027732700750721855, 0.0615915457521546, -0.070923730926863, 0.011127172679828469 ], ... ],
    	[ [ 0.054646313796598914, -0.03291992152520099, 0.025072007775682015, 0.11384138668714001, 0.10510966293931831 ], [ 0.10559982695760076, -0.22209315065351362, -0.14146999538634195, -0.15648530758615864, 0.1752245903346914 ], [ 0.06425379971512907, 0.052123479617613606, 0.06942068622704896, 0.013757859895198237, 0.048247323767297304 ], [ 0.05070200134596623, 0.02507122795398703, 0.02914586605784287, 0.0072466409226902865, -0.1796271182405275 ], [ 0.007768969758272949, -0.0795064984708314, -0.062040541682794624, 0.027957391919004305, -0.12247489778065027 ], [ -0.007268787650757188, 0.11549805448961632, -0.07969143363788588, 0.023107476364607943, -0.024962317833143125 ], [ -0.010220648843353403, 0.16250107081153578, 0.0526543330701753, -0.03224418868418047, -0.008009849678192859 ], [ -0.007071747697083743, -0.008329488883117348, 0.012335066321540385, 0.04288282178354597, 0.06682264536396358 ], ... ],
    	[ [ -0.05567513660097948, 0.05972028827667658, 0.045723397641677675, 0.04025666886616972, -0.16475507418730212 ], [ -4.704530042944147E-4, -0.059157593636574204, 0.03399752576990283, -0.08526720287166416, 0.1605832630958742 ], [ 0.11211915515848245, -0.06543235321648656, -0.007393795786593861, -0.09062979084910729, 0.04118550489254257 ], [ -0.15047353203900077, 0.06828045076087047, 0.038202787497290835, 0.09981150521921275, -0.18631269346031643 ], [ -0.11264793024191408, -0.15063495063380855, -0.030685530009290092, 0.06386415838105688, -0.007446843538558449 ], [ 0.022915365202853758, -0.026491082309117158, 0.005525331927076238, -0.15858164786621629, 0.0963716046011111 ], [ 0.1886328033325127, -0.08805311353033683, 0.12184470376114628, -0.18968401153072198, 0.12691560236000024 ], [ 0.16267364678952675, -0.003308661636762502, -0.053962120186506736, -0.07613675169003527, 0.18654019672151076 ], ... ],
    	[ [ -0.014737641896594168, -0.05589056154498423, -0.025308952974051894, -0.08299623000368506, 0.036033753367836936 ], [ 0.034596558973369516, 0.0668038399584809, 0.07540771609659483, -0.15446141719357986, -0.08334851381748754 ], [ -0.06298905008721528, 0.06591239796391272, -0.002640405484150151, 0.0755984881431723, 0.14340368465330144 ], [ 0.1605657485465607, 0.11795465137734523, 0.13592405704475055, 0.0021868126927199563, -0.05278876107233531 ], [ -0.11238900998653434, 0.011170223633856597, -0.18963351994948818, 0.0855345423970419, 0.2322746397429319 ], [ 0.006442330112125591, -0.05807120308895718, -0.019015980905483017, 0.17462465988607334, 0.04576010701664542 ], [ 0.010934675311250797, -0.016004381955792502, -0.009466715179658315, -0.1675740145115662, -0.08126708283126198 ], [ 0.12072923166423483, 0.14608490303040136, 0.060311549070293756, -0.14715758596234813, 0.11068595944664453 ], ... ],
    	[ [ -0.005723885544020872, -0.03279171981848089, 0.11164362194518987, -0.016745202575909595, -0.03247424320537711 ], [ 0.15803114760819054, 0.024523558071269217, 0.04854731107779705, 0.012383193647766076, -0.0686048332906595 ], [ 0.2174078118078934, 0.2124305742317561, 0.132030222985775, -0.03232000607147829, 0.027090450329429774 ], [ -0.08704182271392451, 0.13146787996467713, -0.1089642685691801, 0.07786526843333719, -0.25115047474791213 ], [ 0.018178139935084953, 0.14998301742091358, 0.015193012947998257, 0.0731860970164896, -0.1733688643058499 ], [ -0.01791277848440185, 0.16132271135670836, 0.20217920191611705, 0.10228688605888807, -0.09015792604915165 ], [ -0.019837602326947323, -0.026074722873067446, 0.06850889482954428, -0.07196746702278135, -0.17219526999105056 ], [ 0.06057362318014934, 0.15671875728512066, 0.1676914183311677, 0.009507083643960064, -0.21281426995761446 ], ... ],
    	[ [ -0.046206449295739464, 0.12295928129892163, -0.006580221776626384, -0.0878116290261193, -0.10543073962772852 ], [ 0.013183013943651666, -0.006613272439742782, -0.09587245306335127, -0.039738869870625936, 0.03234331412763701 ], [ -0.16657257535058673, -0.09302917601005599, 0.0033401459895837093, -0.020355612300256547, 0.12902980797833002 ], [ 0.015257803876638512, -0.08724378801176572, 0.05136655804741435, 0.11748115975354179, 0.03907545374297929 ], [ 0.029301430316828424, -0.05916818849130588, 0.0641642050018189, -0.02483877809302377, 0.06270328248367703 ], [ -0.07878268246809383, 0.09460733582242836, 0.058680251434296435, 0.08354335902175136, -0.0571632353874093 ], [ -0.054309690072554914, 0.15326853985619707, 0.08984235599368161, 0.11438999991260859, -0.026150568835463003 ], [ 0.03782550562084528, 0.05661678559968628, 0.2386607934487592, 0.1565274337804952, -0.060017749355282216 ], ... ],
    	[ [ 0.18556190434862344, 0.018033174759129814, -0.03108739258288707, -0.19547378886367103, 0.09622621806043431 ], [ 0.08140455579558414, -0.06745494709718096, -0.2732534055179078, 0.07566925528481208, 0.1707751967952216 ], [ 0.09726550216593405, 0.01926764475235196, -0.11323784094310958, 0.06827637376220567, -0.058827903790341085 ], [ -0.24781959781856616, 0.004295960545816577, -0.044222031919081174, 0.022542419998340835, 0.1217250944024179 ], [ -0.09772463374088487, -0.0648556543281858, -0.07758096679824429, 0.1453781967427667, -0.0794611940165622 ], [ -0.09403401392747182, 0.07903795268891693, 0.036699347514629256, 0.058774675147794, -0.03470664730572186 ], [ -0.05821304122763659, -0.04550932283865429, 0.041405236532329914, 0.15118544546861853, 0.13023625418045615 ], [ 0.057165160794904274, 0.08134702758185805, 0.08432279775363317, -0.004398718422934012, -0.15798665967708284 ], ... ],
    	...
    ]

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 44.58 seconds (0.976 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: 13012796699799
Reset training subject: 13013049379018
Adding measurement 33955e3c to history. Total: 0
LBFGS Accumulation History: 1 points
Constructing line search parameters: GD
Non-optimal measurement 213.04624978164088 < 213.04624978164088. Total: 1
th(0)=213.04624978164088;dx=-112.02929697844876
Adding measurement 6b343800 to history. Total: 1
New Minimum: 213.04624978164088 > 110.25716127683216
WOLF (strong): th(2.154434690031884)=110.25716127683216; dx=16.587509685876366 evalInputDelta=102.78908850480872
Non-optimal measurement 127.01464219184055 < 110.25716127683216. Total: 2
END: th(1.077217345015942)=127.01464219184055; dx=-47.705255990030224 evalInputDelta=86.03160758980033
Fitness changed from 213.04624978164088 to 110.25716127683216
Iteration 1 complete. Error: 110.25716127683216 Total: 2.3138; Orientation: 0.2228; Line Search: 1.3330
Non-optimal measurement 110.25716127683216 < 110.25716127683216. Total: 2
LBFGS Accumulation History: 2 points
Non-optimal measurement 110.25716127683216 < 110.25716127683216. Total: 2
th(0)=110.25716127683216;dx=-2.470422995007742
Adding measurement 5579a2b7 to history. Total: 2
New Minimum: 110.25716127683216 > 108.07330403822536
WOLF (strong): th(2.3207944168063896)=108.07330403822536; dx=0.5884198382803916 evalInputDelta=2.183857238606805
Non-optimal measurement 108.2778644864442 < 108.07330403822536. Total: 3
END: th(1.1603972084031948)=108.2778644864442; dx=-0.9409925486976811 evalInputDelta=1.9792967903879628
Fitness changed from 110.25716127683216 to 108.07330403822536
Iteration 2 complete. Error: 108.07330403822536 Total: 1.7741; Orientation: 0.1852; Line Search: 1.3346
Non-optimal measurement 108.07330403822536 < 108.07330403822536. Total: 3
LBFGS Accumulation History: 3 points
Non-optimal measurement 108.07330403822536 < 108.07330403822536. Total: 3
th(0)=108.07330403822536;dx=-0.14050497929319755
Adding measurement 491f4cc to history. Total: 3
New Minimum: 108.07330403822536 > 107.95651731230836
WOLF (strong): th(2.5000000000000004)=107.95651731230836; dx=0.047075553277225415 evalInputDelta=0.11678672591699524
Adding measurement 15f49608 to history. Total: 4
New Minimum: 107.95651731230836 > 107.95629175883897
END: th(1.2500000000000002)=107.95629175883897; dx=-0.046714679046199414 evalInputDelta=0.11701227938638681
Fitness changed from 108.07330403822536 to 107.95629175883897
Iteration 3 complete. Error: 107.95629175883897 Total: 2.3981; Orientation: 0.1838; Line Search: 1.9621
Non-optimal measurement 107.95629175883897 < 107.95629175883897. Total: 5
Rejected: LBFGS Orientation magnitude: 2.335e-01, gradient 1.247e-01, dot -1.000; [75baec1a-0cd0-4ee6-8ccc-f728b3bdd2f8 = 1.000/1.000e+00, 352b554b-af9a-4c9b-9c25-d1f4c343857e = 1.000/1.000e+00, 5f681d3d-6974-4882-aaab-632aeb9b3e33 = 1.000/1.000e+00]
Orientation rejected. Popping history element from 107.95629175883897, 107.95651731230836, 108.07330403822536, 110.25716127683216, 213.04624978164088
Rejected: LBFGS Orientation magnitude: 2.335e-01, gradient 1.247e-01, dot -1.000; [5f681d3d-6974-4882-aaab-632aeb9b3e33 = 1.000/1.000e+00, 352b554b-af9a-4c9b-9c25-d1f4c343857e = 1.000/1.000e+00, 75baec1a-0cd0-4ee6-8ccc-f728b3bdd2f8 = 1.000/1.000e+00]
Orientation rejected. Popping history element from 107.95629175883897, 107.95651731230836, 108.07330403822536, 110.25716127683216
LBFGS Accumulation History: 3 points
Removed measurement 15f49608 to history. Total: 4
Removed measurement 491f4cc to history. Total: 3
Adding measurement 682752b3 to history. Total: 3
th(0)=107.95629175883897;dx=-0.015537742955456764
Adding measurement 711b3cae to history. Total: 4
New Minimum: 107.95629175883897 > 107.94452339637786
WOLF (strong): th(2.6930433625398553)=107.94452339637786; dx=0.006797918366808616 evalInputDelta=0.011768362461111792
Adding measurement 11dcea89 to history. Total: 5
New Minimum: 107.94452339637786 > 107.94288871454945
END: th(1.3465216812699277)=107.94288871454945; dx=-0.004369911827573172 evalInputDelta=0.013403044289518107
Fitness changed from 107.95629175883897 to 107.94288871454945
Iteration 4 complete. Error: 107.94288871454945 Total: 14.8496; Orientation: 12.9676; Line Search: 1.6198
Non-optimal measurement 107.94288871454945 < 107.94288871454945. Total: 6
Rejected: LBFGS Orientation magnitude: 6.573e-02, gradient 3.508e-02, dot -1.000; [75baec1a-0cd0-4ee6-8ccc-f728b3bdd2f8 = 1.000/1.000e+00, 5f681d3d-6974-4882-aaab-632aeb9b3e33 = 1.000/1.000e+00, 352b554b-af9a-4c9b-9c25-d1f4c343857e = 1.000/1.000e+00]
Orientation rejected. Popping history element from 107.94288871454945, 107.94452339637786, 107.95629175883897, 108.07330403822536, 110.25716127683216, 213.04624978164088
Rejected: LBFGS Orientation magnitude: 6.574e-02, gradient 3.508e-02, dot -1.000; [5f681d3d-6974-4882-aaab-632aeb9b3e33 = 1.000/1.000e+00, 75baec1a-0cd0-4ee6-8ccc-f728b3bdd2f8 = 1.000/1.000e+00, 352b554b-af9a-4c9b-9c25-d1f4c343857e = 1.000/1.000e+00]
Orientation rejected. Popping history element from 107.94288871454945, 107.94452339637786, 107.95629175883897, 108.07330403822536, 110.25716127683216
Rejected: LBFGS Orientation magnitude: 6.576e-02, gradient 3.508e-02, dot -1.000; [5f681d3d-6974-4882-aaab-632aeb9b3e33 = 1.000/1.000e+00, 352b554b-af9a-4c9b-9c25-d1f4c343857e = 1.000/1.000e+00, 75baec1a-0cd0-4ee6-8ccc-f728b3bdd2f8 = 1.000/1.000e+00]
Orientation rejected. Popping history element from 107.94288871454945, 107.94452339637786, 107.95629175883897, 108.07330403822536
LBFGS Accumulation History: 3 points
Removed measurement 11dcea89 to history. Total: 5
Removed measurement 711b3cae to history. Total: 4
Removed measurement 682752b3 to history. Total: 3
Adding measurement 84a84a1 to history. Total: 3
th(0)=107.94288871454945;dx=-0.0012304005334814792
Adding measurement 4adc2801 to history. Total: 4
New Minimum: 107.94288871454945 > 107.94207903133562
WOLF (strong): th(2.9009930210079875)=107.94207903133562; dx=6.721894561331367E-4 evalInputDelta=8.096832138306809E-4
Adding measurement 32929dc1 to history. Total: 5
New Minimum: 107.94207903133562 > 107.94179394790731
END: th(1.4504965105039938)=107.94179394790731; dx=-2.7910553556828604E-4 evalInputDelta=0.0010947666421401436
Fitness changed from 107.94288871454945 to 107.94179394790731
Iteration 5 complete. Error: 107.94179394790731 Total: 23.2416; Orientation: 21.5427; Line Search: 1.4345
Final threshold in iteration 5: 107.94179394790731 (> 0.0) after 44.578s (< 30.000s)

Returns

    107.94179394790731

This training apply resulted in the following configuration:

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

    RefList<double[]> state = network.state();
    assert state != null;
    String description = state.stream().map(RefArrays::toString).reduce((a, b) -> a + "\n" + b)
        .orElse("");
    state.freeRef();
    return description;

Returns

    [4.892812701681379E-4, 0.006446965288317506, 0.008690766506202026, -0.012153685491264625, 0.011957112441607437, -0.013298086987331079, -0.004351737000702668, -0.002307875690972647, 0.011246803920685248, -6.398900110703293E-4, -0.009982164307453249, -0.012605359169396063, 0.00761713502792683, -0.0030774509619216394, 0.006166030100612521, -0.0240091720626395, 0.015612633892336853, -0.021632789234875043, 0.0054319311975081705, -0.0033583629026555572, -9.148770848724317E-4, 0.0144853921483243, -0.004275171090396939, 0.003784094392732859, 0.010072456787665473, 0.007725975858914172, -0.005610008478466714, -0.007243391304010392, -0.007994852328701434, 0.0056316760333502925, 0.0010507614615385096, 0.015696903833433078, -0.0029571437490425847, 0.011034087358094769, 0.012693670386074976, 0.006306507675085612, 0.013489359304704315, 0.007571826737694118, 0.002286347801853615, -0.002973640347374664, -8.457081751957994E-4, -0.005580713345685592, 0.007944694671530882, -0.015156651273259674, 6.211155426044208E-4, 0.017349109246136394, -0.0015275450987541537, 0.009924245581678775, 0.015315405628252824, 0.0032991243399054905, 0.006294724995529428, -2.552851229232415E-4, -0.018006292914473997, 0.02448690579062649, -0.010121039923497372, -0.03169088851694703, 0.010128651989104183, -0.017168821767359732, 8.377361602694658E-4, -0.011183136766738112, 9.415194468831911E-4, -0.0011150494068400225, -0.007578130156779768, 0.007320620783186063, -0.02393278111028198, 0.011272043659149408, -5.348256714474419E-5, -0.00503060043190973, -0.015469701687666582, -0.0033081123846219443, 0.009153894968396062, -1.1850191308966553E-4, -0.007307065556541927, -0.0025723540656076866, -0.008128478982891868, 0.005033647825181802, 0.004403303737749287, 0.006815795592805936, 0.022818456389381604, 0.006082066287010255, -0.005380047269610204, 0.020839295452523852, -0.010620589897414557, -0.0010451286822263754, 0.01295239808519924, 0.007696295402774327, -0.006805800239213079, -0.008949197893416031, 0.011455828978971646, 0.013206491134294923, 9.63372597509767E-4, 0.016243370972814513, 0.007016849536650096, -0.0018368910140398823, -0.00431251913553774, 0.00530860465680502, -0.010538057606958515, 0.024409072243575223, 0.011129269261107771, 0.010034742988225447, 0.0032475483347395176, -0.01032921651268005, 0.013225451539498544, 0.0032264317483439294, -0.014703492225218707, -9.527329416405381E-4, -0.017505193429660764, -0.0072915848211397806, -0.01553993790832581, 0.002767569878113056, 0.0014841325839254386, -0.007592239422060127, 5.332796065899636E-4, -0.0025733541223704696, -0.006464722226174208, 0.008148072134711222, 5.976914351445456E-4, -4.849426668806101E-6, -0.006121832191785415, 0.002756287660409399, 0.0017432728043366478, -0.008849166472224895, -0.0048024400381596, 0.002404953255204791, 0.01190717123986525, 0.004870416720637416, -0.010574429333547358, 0.009272559952646213, 0.008744365022535231, 0.0013688467498349688, -0.014330931771570438, 0.004409038025224721, -0.008608896875842775, -0.007245273191031264, 0.00811403918684794, -0.004013477367779376, 0.02190274355812742, -0.01484403436872171, -0.005317985319538049, 0.006219047018604209, 4.7755767278496054E-4, 0.005166826985342889, 0.009639760570762976, -0.018170212274281502, -5.519241098941121E-4, -1.725726750500603E-4, -0.004214942435631546, -0.008038092955896399, 7.773464906974826E-4, 0.0033130713398509437, -0.004176004387373521, 0.010975468573354203, -0.006224704041727689, -0.007360118838197735, 0.020731241741840253, 0.004437421620893863, 4.6525819480353016E-4, 0.005100140146699073, 0.005706550172520677, -0.0060530980490526055, 6.844724434513392E-4, 0.01220463710167232, 0.006091359922517003, 0.00487577655980379, -0.014881292618172105, -0.013329892787216004, 0.015657322599235066, -0.0014026788150300253, 0.014274231769195386, -0.005369236925079257, -0.010118225026220777, -6.705117730258794E-4, -0.0030165064535914244, 0.01931978063537847, -0.012356715789985574, 0.005581055577098542, 0.00823651983985905, 0.009169239169525, 0.01746166964414016, 0.0031166032433481926, -0.02043946099136213, -0.008383464048589227, -0.0018972049225577802, 0.013067131796062458, 0.004278769743746776, -0.011584300050068157, 0.0103328447972908, 0.016704705492267144, -0.0035658129700397046, -0.010699709536187003, 0.0059134904010367546, -0.008792074621099561, 0.0033647603034343745, -0.01553534503212785, 0.008049387156318423, -7.940964290948861E-4, -0.005092640458821524, -0.009163945959504392, -0.003392940752083481, -0.004191400414274283, 0.006657442468325113, -0.01575636595192097, 0.001542040383133939, 0.014306517218123914, 0.006872427442227746, 0.004677045702918334, -0.007242146698228204, -0.0056282321096778245, -0.011674038655191458, 0.005921986866788586, -0.013524273391611866, -0.015591327323848582, -0.010398846999520943, -0.019137423934325885, 0.01217880006088952, -5.970126731876207E-4, 0.00996594242465033, -0.0022728066232739676, 0.0035125654043606513, -0.006305235396690509, -0.008020092534474558, -0.03822609653634626, -0.018378761774751506, 0.0036737989961227926, 0.025467502910473908, 0.009340991212764762, -0.005560353026902787, 7.892909667647895E-4, 0.02191914195757988, 0.002609578451040526, 0.00534461979442308, 0.01153683744678307, 0.012723151346767242, -4.316428630064344E-4, -0.015139906764185761, -0.0013597437373424558, -0.011066698035882925, -0.017656115122609246, -0.0024078436440739814, 0.0019780219918896997, 8.039533590028791E-4, 0.010452508599408505, -0.011638896300884194, 0.010122625855016948, 0.028320217934501908, 0.002323210081392429, 0.008051964360898407, -0.011657579444248901, 0.0073770035187185395, -0.009241082279303713, -0.00895912622315104, -0.003632285837758503, -0.01255078621425373, 0.0025104402796992456, -0.012337675892921125, -0.004357615063126543, 0.022197678531609408, 0.004588389696727824, 0.012684625466218022, -0.02124613787515866, -0.022363070552256475, 0.0016834980023685893, 0.004797897742227171, 0.014665510111324494, -0.014603795397442297, 0.0018596965719779005, 0.0015257819836045402, 0.0033901323694492643, -8.313839895225322E-4, 0.009558469151489606, -0.014198906819804723, -0.01990104233234952, -0.017494247242548642, 0.011069430773388986, -0.00880974765510838, 0.014675446528674304, -0.014780766875402397, -0.0030979015637628148, -0.01082569347934445, -4.945144067939051E-4, 0.010040643413390282, -0.010073481469013119, -0.011247244681389535, 0.010574266841416049, -0.013464889618192406, 0.010792080439825776, -0.01632922154344941, -0.0138146028006852, 0.006415517135492337, -0.02810357881901456, 0.013160953523553186, 0.005531770691780685, 0.0012157234581978548, 0.008283853219285715, -0.036633988843917546, -0.009118773604458803, 0.004919767983302022, 0.012909423894491175, -0.008465832570451599, -0.006600655818479315, 0.020144901392924748, -0.004115997084404238, 0.011858134504965206, -0.015530252727510314, 0.005204460122167471, -0.011260638567139075, 7.738406200526633E-4, 0.007420342964988596, 0.006872209277119109, -0.009887068862901848, -0.004887515235641901, 0.0016599395402200276, 0.009663971487873114, 0.004268983809134119, -0.022128040534230595, 0.184, 1.7, -1.696, 0.92, -1.476, -1.688, 1.36, -0.816, 1.288, -0.712, 1.916, 1.98, 1.288, 0.392, -0.032, -0.676, 1.168, 0.788, 0.464, -0.852, 0.028, 0.08, 1.084, 0.332, 1.704, 1.048, 1.652, -1.384, 1.972, -1.42, -0.472, 0.764, -1.176, -0.832, 0.56, 0.048, 1.22, -1.176, -0.86, -1.248, -1.096, 1.652, -1.812, 0.996, 1.876, -0.684, 1.912, -1.552, -1.16, 0.0, 1.052, 0.0, 1.012, -0.344, -0.768, -0.384, 1.052, -1.808, -1.312, -1.564, -1.248, -1.476, 1.052, -1.724, 1.628, 0.496, 0.948, -1.116, 1.96, -1.176, -0.636, -0.516, -1.732, 1.352, -1.808, 1.196, 0.784, 1.244, -0.768, 0.184, -0.212, 1.552, 1.108, -1.028, -1.54, 0.464, -1.104, 0.66, 1.208, -0.584, 0.392, 1.616, -0.468, -0.556, 0.344, -1.516, 0.448, -0.504, -0.748, -1.1, 0.7, -0.472, -1.484, -0.652, 0.124, 1.664, 0.52, -1.58, 0.996, -0.488, -0.632, -1.656, -1.16, 0.028, -1.656, 1.64, 1.66, -0.628, 1.956, -0.408, -1.976, 0.016, 0.3, 0.012, -0.376, 1.448]

And regressed input:

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

    return RefArrays.stream(RefUtil.addRef(data)).flatMap(x -> {
      return RefArrays.stream(x);
    }).limit(1).map(x -> {
      String temp_18_0015 = x.prettyPrint();
      x.freeRef();
      return temp_18_0015;
    }).reduce((a, b) -> a + "\n" + b).orElse("");

Returns

    [
    	[ [ -1.1519655271590779, 1.2640617153448226, -1.0879033051990283, -1.2719580324398085, -1.679904107823461, -1.3920127642053228, 0.23203629439589393 ], [ 0.6520977564871271, 1.6998179237339999, 1.6598508806798427, 1.1879235488006021, -0.028032781593914653, -1.988004691504963, 0.34420919795879057 ], [ 1.8839094533361544, 1.3558258469410795, -1.7078924026833142, 1.1678735305339707, 0.2877265446010148, -1.3600005561251471, -1.7360134274775871 ], [ 0.13594587514420345, 0.8680604437249726, 0.9359190496302484, 1.3120522766350629, 1.6799005007498566, -0.5878858104133913, -1.792028939800425 ], [ -1.7919052055113274, -0.5359386456908174, -0.4358464076173819, 0.06789410096808823, 1.8999248172507064, -1.9916889165370186, -1.1599985580579513 ], [ 0.2880805218603215, -1.8959203572048036, 1.1600037403096166, 0.33193252136448487, 0.08409064039514905, -1.1559436806076788, 1.0957937805062492 ], [ 1.8520012861094501, -1.0279422250699086, -1.5159237329251918, 1.0479606125967191, -0.3320199493547709, 0.1800919617472668, 1.0279322994630886 ], [ -1.927935749000325, 1.9599417490260937, -0.3840131287038098, 1.1840251445402366, 0.4920477400667338, -0.14799481050373683, -1.0239645449254386 ], ... ],
    	[ [ -1.0199931860036255, 1.6639482599591453, -1.8438776658911378, -1.5799270017797404, 0.8958309307921081, -0.855953990936375, 0.14807729658983446 ], [ -1.2999845260874368, -0.7520113622651112, -0.3678740322520663, -0.8439317794708111, 1.9797963007267791, -0.4679462656831935, -0.619942166456872 ], [ 0.5478805825138893, 0.752085402067856, 0.944036213708078, 0.15602563086997812, -1.7558062076891645, 0.9240460390983906, 0.676017150087602 ], [ -1.2280410796297394, 0.04780679097910916, -0.9718838913624711, 1.9960691071008105, -1.611713730800571, 0.18783853117393143, 1.520049686519691 ], [ -0.5279207232126564, -1.727825822167684, 1.9677752009235925, -0.3800210487639498, -0.051956184810812156, -0.25988073270882717, 1.0400567401899057 ], [ -0.6038891668501383, -1.2119511029637653, 1.2359621366464275, -1.967962566678784, 0.4119962424787169, -0.7199413352903569, -1.7359081900933981 ], [ -1.9397869192011414, -1.0158777027825447, 1.8559449569635467, -0.7317486348064023, -1.3279054441454659, 0.44800709116710874, 0.18004868477221844 ], [ -0.08387037058324905, -0.45196715035683593, 1.663958992687657, 0.4001287366335296, 0.7439564413605462, 0.7879766916350499, 0.9118501401980215 ], ... ],
    	[ [ -1.7519843824651449, 0.32797769325346326, -0.39604390593086763, -0.9399446278378679, 1.819793649620524, -1.8718253705456767, -0.3759505923832806 ], [ 1.8839600174065925, -0.6799960847292484, -0.9959160224732152, 1.0079259386583355, -0.6359447632051848, -1.5279073530091387, -0.7439330354010314 ], [ 0.5357905964618381, 0.8119822649996541, -0.31985642739762976, 1.4918819856916765, 1.5079540716593134, 1.1720865870091413, 0.4758450735636791 ], [ 0.2240105827963589, 1.7160562849416616, -0.8079782564887424, 0.9276778379930588, 1.8558665255630624, -1.6640936866239713, 0.4557615610629505 ], [ 1.7879571953272528, -1.4198396465616194, 0.899983761902248, -1.5280008560598615, -1.4800510339715278, -0.4959295756415457, -1.2998415079281906 ], [ 0.8958280929200031, 0.3278491789275199, -0.3118967732625168, -0.6437539695905359, -1.7876504490719327, 1.7876723012907614, -0.26381508357481864 ], [ -1.8119412986549712, -1.231966014937136, 0.6438908755279072, 0.25592258044208965, -0.6401279966546725, 1.0479109552413102, -1.7678390517649138 ], [ -1.3958956917892231, -0.4477329826695902, -0.5319034983114056, 1.6239925092596323, 1.0077758409164461, 0.1479245943115407, -1.1560001952052592 ], ... ],
    	[ [ -0.8080732658004656, -1.2320092779216774, 1.8519297518495261, 0.9400539970725923, -0.9159743155336467, 0.10794163803880424, 0.43997454578734396 ], [ 0.05183291668179993, 0.9997544298001071, -0.08797511219048841, 0.3999470282636398, 0.6798618367407575, 1.2318320037393315, -0.7919182389456781 ], [ 1.631904284993654, 0.7759719879868818, -0.8079492240688115, 0.2958430910490376, 1.2879230313084968, 1.8357764151529874, -0.8478830177497524 ], [ -1.9999528030986133, -0.7479085610780768, -0.18804256228291438, -0.31196419629405314, 1.439964472571117, -1.0039858272475006, -0.4679721842755833 ], [ 0.5479539622631381, -0.5359240254499673, -1.3437472280212421, -0.524096417862897, -1.9958662353938683, 0.09197504477544986, -0.6199818436327544 ], [ 0.8078534114606937, 0.9558893372057155, 0.6558645666170867, -1.7361162807752946, 0.07169483709500496, -1.3958507768702124, 0.6598688237918977 ], [ -0.8320171112162972, -0.4038922654920688, 0.275868176746993, 1.6961357749801194, 0.008005493868422982, -1.751735093547203, -1.3598996532334502 ], [ 0.7639040228056344, 1.747736173581001, -1.8595054867259142, 1.188043600696828, -0.9998337531357965, -1.655923022073316, -1.4799904763228577 ], ... ],
    	[ [ 1.1439026618855137, -1.223812670693097, -1.8997373634412957, 1.2160225986407365, 1.2798421831419122, -1.4960722683282328, 1.0440078114757354 ], [ -0.37201166737202124, -1.5599198803622754, 1.6280483014206353, 0.7998992513587981, -1.215824695732392, 1.5917386487844576, 0.7199137573255755 ], [ -1.8238122022113465, 1.1720269644462207, 0.9680046494441723, 1.931682725150851, -1.9838108873270703, 1.4958897632409498, 1.1997693212057878 ], [ -0.30399172503646843, -1.295915078649623, -1.495866125733795, 1.087911906005966, 0.8479670138512602, -1.20003704088019, 0.3077892175276737 ], [ 0.7000406806483166, -0.28385296765778995, 1.4679342459939284, 1.4639345272414868, -1.6878154284191798, -1.539746019785852, 0.23598420763775674 ], [ -0.04776514674234308, -1.271746772337636, 0.6917740786093732, 0.8280748532599139, -1.1239941930722155, -0.9316177208691321, 0.7079669115019674 ], [ -0.4479690561897519, -1.1442859593716195, -1.419622085142745, 1.6838797704475235, -1.6678283885540608, 1.5598382699100362, 1.98397698122856 ], [ -0.4440072183468875, -0.615951675609387, 0.41576370724735406, -0.5478106323973474, 0.46407979676074823, 1.1399767841732067, 1.3680376400401737 ], ... ],
    	[ [ -0.9359377129680443, 0.07212549752996794, -0.18387575825183464, 1.5238188528357957, 0.35985826948252164, -0.8319038439297549, -0.4721903726091713 ], [ -1.2879862372251802, 1.411946660556785, 0.20812161040173008, -0.40406648041332727, -1.7281101511493984, -0.7040292956509561, -0.4159779175106873 ], [ 0.8360590603519483, -0.9080607191136609, -0.4638763914190885, -0.3840045963715891, 0.7199563756915012, 0.34000551534055684, -1.6717995499616103 ], [ 0.516013247097604, 1.9320459447758342, -0.24797442955523533, 0.6479628703043993, -0.3997373518603552, -0.9281965761285654, -0.8519426555253505 ], [ -0.5838124863190112, -1.3439433834796248, 1.7517468447919062, 0.09992184722695097, 1.0878418091048754, 0.196106435938654, 1.6278480273477698 ], [ -1.2799936540111483, -1.207759107122195, -1.9756170389102496, -1.0239472664366718, 1.2437691005960203, 0.24787525001066074, 1.7719046834065073 ], [ -1.0358564289101369, 0.004226405203229107, -1.5478852385177309, 0.9398264650894429, -1.2080708475049455, 1.483750493167528, 0.25617113762922256 ], [ -0.14791771118305413, 1.367812084515278, 1.851844668142107, 1.3357987219464729, 1.0319359466971618, 1.9637136189465954, -1.2678386680925962 ], ... ],
    	[ [ -1.591837504514743, 0.047894552578915145, -0.04812558139097773, -0.21177674908139213, -0.30797539104091565, -1.7477964724968917, -0.5717898777901197 ], [ -1.5478772182364102, 0.29991805452819575, -1.7798007436104453, -0.6917464444691398, 0.011962987463198302, 0.8401288222944677, -0.7879874958777122 ], [ -1.7240251978118954, 1.6440246099480742, 1.051807498550279, -1.951766508997836, 1.1561440491866668, -0.31994411089904246, 0.5317992034340172 ], [ -0.33598737604655937, 0.3640693309912248, 0.7880317553136393, 1.1639768320748414, 0.21193866645266152, 0.2241490511717426, -1.3076261396400004 ], [ 0.524075637710696, -0.8439406464761158, -0.44008618804730737, -0.0359052391127252, 1.983973005408466, 0.36783827082703746, 1.195880313907459 ], [ -1.0239479526867985, -1.0757260111834304, 1.5041610123542086, 0.3158783087237679, 0.23989902328464965, -1.1157075179562723, -1.063911857328178 ], [ -0.6919331224316461, 1.147952031532366, 0.09617621652511926, 0.9722095529895552, 1.1238474358022323, -1.1158424987900173, -0.2799803292276882 ], [ -0.6198855206891424, 1.8559216285594649, -1.6358906811599365, 1.8799596383092245, 0.2160360031111019, -1.923836492262371, -0.13205782608856248 ], ... ],
    	[ [ 1.5119069021315659, 1.0159778470949623, 1.7518044252421114, -0.5198701961320435, -1.2239383648151485, -1.7879430817646578, -0.05195944132464696 ], [ 1.7679419175510802, -0.8280097314209112, 0.5999000723928196, 0.512035619106756, -1.3958657628390123, -0.11593124620093198, -1.8998125082075565 ], [ 1.6558070742768982, -0.06812734296287806, -1.1079451776378673, -0.5717368496025942, -0.5361454753629056, 1.9839148033907479, 0.7880176044816679 ], [ -1.1038488109008617, -0.5758067599290347, -0.7158447803400689, -0.6601611496652355, 0.7479661333395875, -0.5360349913918624, 0.18803052011057306 ], [ -1.5317846762534046, 0.30810906306216745, -0.15200606338768452, -1.4319311403447854, -1.8799482567389982, 0.6079626318673866, 1.6677965368667473 ], [ -1.8877320983721884, 1.936068293517772, -0.4640057427270485, -1.2398159570892462, 0.9719898262951363, -1.9318296617065776, -0.07584152351501883 ], [ -0.8959164033748281, 0.8678436873713218, -1.2120543806260553, -1.1878036571602943, 1.7118515915274686, 0.272128639600277, 0.9482070845293635 ], [ 1.9518448495824845, 0.42810379468690735, -0.9800993515413166, -0.19983002718269469, 0.5360214414374628, -1.9718948488027048, -0.08399852290581064 ], ... ],
    	...
    ]

To produce the following output:

TrainingTester.java:633 executed in 0.04 seconds (0.000 gc):

    Result[] array = ConstantResult.batchResultArray(pop(RefUtil.addRef(data)));
    @Nullable
    Result eval = layer.eval(array);
    assert eval != null;
    TensorList tensorList = Result.getData(eval);
    String temp_18_0016 = tensorList.stream().limit(1).map(x -> {
      String temp_18_0017 = x.prettyPrint();
      x.freeRef();
      return temp_18_0017;
    }).reduce((a, b) -> a + "\n" + b).orElse("");
    tensorList.freeRef();
    return temp_18_0016;

Returns

    [
    	[ [ -0.0646673782847021, -0.005059072956701184, 0.10718620991022337, 0.10114648029613879, -0.0250498457551695 ], [ 0.03695624404954677, 0.06606418268420096, 0.06812578366346402, 0.0010302691040451268, 0.12279447886744192 ], [ 0.16796404027552095, 0.006115582536771906, 0.0489233853631302, -0.047376765304928785, -0.09359035243597194 ], [ 0.0607815251299381, 0.10050104956511939, -0.025132559493632047, -0.12015247362742935, -0.11331968876027812 ], [ 0.016931616505134788, 0.05453140795439836, 0.03860227054782257, 0.07986416792767498, 0.023487844525036626 ], [ 0.08639135135078725, -0.12877451840315932, -0.07948969849977511, -0.004250505271889905, 0.08300519206815692 ], [ 0.1422551339661304, 0.06321687274896096, -0.003965076720964358, -0.11397274189216913, 0.017840311557112784 ], [ 0.11132263446816423, 0.06947526518430391, 0.06735300042669436, -0.09150801213552569, -0.004333230296301395 ], ... ],
    	[ [ -0.05081909604445407, 0.1433652942339899, -0.11051416807867943, 0.2149337098027124, -0.17207774390685324 ], [ -0.21835210851456524, -0.09631079668240443, 0.015707038714616248, 0.0880721008029767, 0.030710852812346853 ], [ -0.25527004236132644, -0.009549515933327764, -0.18919574042746287, 0.1249757440165015, 0.12117743819249231 ], [ -0.03934039437630207, 0.009791918990508467, 0.01509769145430904, 0.002930076884812047, -0.12662859375175686 ], [ 0.11229914896477335, 0.07699391881458074, -0.029636272225490545, -0.14330145762071003, -0.09202824730670557 ], [ -0.04464488279461031, -0.031562498287631365, -0.049180692754487, -0.09629605043301262, 0.11797357580261766 ], [ -0.13408311838504108, -0.11936747547585537, -0.07625707308794025, 0.05085003282416585, 0.009934547793888162 ], [ 0.14620578074887758, -0.02636058795735091, 0.060142540617099, -0.06574358408150449, 0.008131462545757952 ], ... ],
    	[ [ 0.048751514208118824, -0.03275078650478115, 0.020964572040985948, 0.11637703076419878, 0.10407144379269381 ], [ 0.10808728652198447, -0.2185414138416937, -0.1274619090403038, -0.15817556053211299, 0.17814616411264078 ], [ 0.06201436398414406, 0.0470500663752321, 0.06601091129064948, 0.015956536008621878, 0.050292832554349465 ], [ 0.04144311458642233, 0.022112752971080597, 0.02184703152561148, 0.001345672594631803, -0.18901994991602422 ], [ -0.0025640054752105214, -0.07039196985087605, -0.06533416536695422, 0.02450430568935667, -0.11654529301501251 ], [ -0.011631521652288668, 0.11844185751814058, -0.07026984695530464, 0.027134955868958067, -0.028654183350953107 ], [ -0.015702632975532954, 0.16818031776850548, 0.05410975908184717, -0.031005353170952835, -0.012124004911373026 ], [ -0.012275498851387377, -0.0012311420313262864, 0.019130228529018224, 0.0401828556998019, 0.06285177244086057 ], ... ],
    	[ [ -0.0517852898246659, 0.06364514835779354, 0.04315348383378838, 0.04387673588897113, -0.15617540967155988 ], [ 0.020782059255200436, -0.0654605572512004, 0.015079624411063973, -0.07439591125735653, 0.1556865914075672 ], [ 0.10536680912795196, -0.06814038637072384, -0.021890692671387553, -0.0873674484103783, 0.04284197856427014 ], [ -0.16132472310656357, 0.06891547956778205, 0.03190203239941631, 0.09670491599687785, -0.18607937996024507 ], [ -0.0940251126149363, -0.15785163909957006, -0.031777150359395774, 0.06544292817301463, -0.005984714504599199 ], [ 0.010490983612791709, -0.02682050101919686, 0.00795057565905844, -0.17011466896493094, 0.09942524790782327 ], [ 0.1740995145993174, -0.07894467858568499, 0.12053464629807055, -0.20213636081320854, 0.14453575632983376 ], [ 0.1559318170044903, -0.005388528450217647, -0.04319916278920439, -0.07371704995541732, 0.1805188658104033 ], ... ],
    	[ [ -0.013077778709915316, -0.053413506866686375, -0.024738739023601367, -0.0836667000648086, 0.027874617412487156 ], [ 0.03294904359224288, 0.07877427061224053, 0.07687537172915933, -0.16155428246326375, -0.07707216245193907 ], [ -0.06392864924585975, 0.06201179359802307, 0.002098424436973859, 0.06816083883074521, 0.14437567742666285 ], [ 0.15300951628229645, 0.11548732054010255, 0.13241827988438534, 8.890198251726928E-4, -0.04391168769854821 ], [ -0.11129627845351857, 0.007862098940741028, -0.19161601612326423, 0.08958127943945096, 0.23950444921500952 ], [ 0.001796404697482748, -0.05454753031781092, -0.021576026954220593, 0.16491956333334395, 0.05520343398698842 ], [ 0.02359455538812083, -0.018044412150268144, -0.0156781232695517, -0.16237596513030778, -0.07670742651262558 ], [ 0.11376945836695004, 0.14041106337140308, 0.04582225393019027, -0.14624817215860908, 0.11133958009055972 ], ... ],
    	[ [ -0.01100652009894902, -0.037910344132620635, 0.12411681607931366, -0.024065662157415776, -0.03993696744337707 ], [ 0.14767495654968696, 0.016830480908800242, 0.04974346298875889, 0.0025755651454450646, -0.07397621509241868 ], [ 0.20058707620820404, 0.21458940139692526, 0.13076394956123127, -0.027967111353022794, 0.019964042469152274 ], [ -0.08263661320056635, 0.12466676948925143, -0.0985558261493436, 0.07987485903590429, -0.258314346448688 ], [ 0.00838002084239044, 0.13636559762872033, 0.007828150604745015, 0.07651815092690306, -0.16945057105822117 ], [ -0.012375263374446556, 0.1676984435483045, 0.20131671506438029, 0.10988853543425993, -0.09472456827310845 ], [ -0.028332674677879956, -0.02517732843532867, 0.07628862136626473, -0.06457684706183292, -0.17401542928517563 ], [ 0.04926313195198809, 0.1589974683799721, 0.15107321497561418, 0.0015182968027010937, -0.21790787150439764 ], ... ],
    	[ [ -0.056181271569019316, 0.11882854417994265, -0.001590392563537178, -0.08621769399962778, -0.11644995161999297 ], [ 0.025458034909479958, -0.013919204647203526, -0.08575611120358656, -0.031372445525432544, 0.025565680033964304 ], [ -0.17353071147009566, -0.095385876935633, 0.003395618526027987, -0.016105177974374985, 0.13119520387651828 ], [ 0.024681851487732828, -0.09114423737939065, 0.05288501440795774, 0.11893864957205218, 0.042155286841917036 ], [ 0.023749690666047388, -0.05153753948340895, 0.05622581561322746, -0.019932102346996754, 0.06709556547360512 ], [ -0.09163447543963726, 0.10038590971916073, 0.08196811599682285, 0.08314971887623776, -0.06428184458772596 ], [ -0.0781346362103388, 0.16310620834104164, 0.09756180060225526, 0.11150656545781022, -0.04092309324203723 ], [ 0.029669249835717316, 0.06241659725439339, 0.23988048986912547, 0.15439620449042227, -0.06301759353819864 ], ... ],
    	[ [ 0.18951399055025914, 0.018346570771307576, -0.03991913060292632, -0.19840698500933343, 0.09915222814761669 ], [ 0.09090976542456394, -0.06914910366493869, -0.2685087200306265, 0.07835178659720199, 0.16948069377688021 ], [ 0.0963452516902263, 0.021392207010265937, -0.11664504758757756, 0.06188119353736714, -0.056843625514223804 ], [ -0.24658509146161547, 0.0150237225048036, -0.04033626011220124, 0.020705321905824876, 0.11989523294026047 ], [ -0.09779197884774676, -0.06379358532505904, -0.06849162380082821, 0.15038320736263483, -0.061554997577246015 ], [ -0.09417513265434801, 0.07480722065912973, 0.041773655580525954, 0.06632059074001949, -0.03824509734371696 ], [ -0.05563237803914304, -0.044225473169169104, 0.041273746279581344, 0.16251423663795841, 0.1254900699278519 ], [ 0.04709114089833751, 0.0768937994178969, 0.07658281157679915, -0.0031251208805632463, -0.1561256044424942 ], ... ],
    	...
    ]

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

    return TestUtil.compare(title + " vs Iteration", runs);
Logging
Plotting range=[1.0, 2.033186563861319], [18.0, 2.042406806774867]; valueStats=DoubleSummaryStatistics{count=31, sum=3351.127691, min=107.941031, average=108.100893, max=110.257161}
Plotting 18 points for GD
Plotting 8 points for CjGD
Plotting 5 points for LBFGS

Returns

Result

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

    return TestUtil.compareTime(title + " vs Time", runs);
Logging
Plotting range=[0.0, 2.033186563861319], [42.263, 2.042406806774867]; valueStats=DoubleSummaryStatistics{count=31, sum=3351.127691, min=107.941031, average=108.100893, max=110.257161}
Plotting 18 points for GD
Plotting 8 points for CjGD
Plotting 5 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": "NonConverged", "value": 103.24678969607183 }, "CjGD": { "type": "NonConverged", "value": 1.1051332651655894 }, "GD": { "type": "NonConverged", "value": 0.17673434963072687 } }, "model":{ "LBFGS": { "type": "Converged", "value": 9.980611603428793E-34 }, "CjGD": { "type": "Converged", "value": 3.03409042191746E-34 }, "GD": { "type": "Converged", "value": 6.002319995574921E-34 } }, "complete":{ "LBFGS": { "type": "NonConverged", "value": 107.94179394790731 }, "CjGD": { "type": "NonConverged", "value": 107.9417128839423 }, "GD": { "type": "NonConverged", "value": 107.94103148306169 } }}

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

    throwException(exceptions.addRef());

Results

detailsresult
{"input":{ "LBFGS": { "type": "NonConverged", "value": 103.24678969607183 }, "CjGD": { "type": "NonConverged", "value": 1.1051332651655894 }, "GD": { "type": "NonConverged", "value": 0.17673434963072687 } }, "model":{ "LBFGS": { "type": "Converged", "value": 9.980611603428793E-34 }, "CjGD": { "type": "Converged", "value": 3.03409042191746E-34 }, "GD": { "type": "Converged", "value": 6.002319995574921E-34 } }, "complete":{ "LBFGS": { "type": "NonConverged", "value": 107.94179394790731 }, "CjGD": { "type": "NonConverged", "value": 107.9417128839423 }, "GD": { "type": "NonConverged", "value": 107.94103148306169 } }}OK
  {
    "result": "OK",
    "performance": {
      "execution_time": "299.253",
      "gc_time": "4.508"
    },
    "created_on": 1586747390493,
    "file_name": "trainingTest",
    "report": {
      "simpleName": "IrregularTest",
      "canonicalName": "com.simiacryptus.mindseye.layers.cudnn.conv.ConvolutionLayerTest.IrregularTest",
      "link": "https://github.com/SimiaCryptus/mindseye-cudnn/tree/59d5b3318556370acb2d83ee6ec123ce0fc6974f/src/test/java/com/simiacryptus/mindseye/layers/cudnn/conv/ConvolutionLayerTest.java",
      "javaDoc": ""
    },
    "training_analysis": {
      "input": {
        "LBFGS": {
          "type": "NonConverged",
          "value": 103.24678969607183
        },
        "CjGD": {
          "type": "NonConverged",
          "value": 1.1051332651655894
        },
        "GD": {
          "type": "NonConverged",
          "value": 0.17673434963072687
        }
      },
      "model": {
        "LBFGS": {
          "type": "Converged",
          "value": 9.980611603428793E-34
        },
        "CjGD": {
          "type": "Converged",
          "value": 3.03409042191746E-34
        },
        "GD": {
          "type": "Converged",
          "value": 6.002319995574921E-34
        }
      },
      "complete": {
        "LBFGS": {
          "type": "NonConverged",
          "value": 107.94179394790731
        },
        "CjGD": {
          "type": "NonConverged",
          "value": 107.9417128839423
        },
        "GD": {
          "type": "NonConverged",
          "value": 107.94103148306169
        }
      }
    },
    "archive": "s3://code.simiacrypt.us/tests/com/simiacryptus/mindseye/layers/cudnn/conv/ConvolutionLayer/IrregularTest/trainingTest/202004130950",
    "id": "df5137ba-5223-4fa3-b20e-9a71638a6273",
    "report_type": "Components",
    "display_name": "Comparative Training",
    "target": {
      "simpleName": "ConvolutionLayer",
      "canonicalName": "com.simiacryptus.mindseye.layers.cudnn.conv.ConvolutionLayer",
      "link": "https://github.com/SimiaCryptus/mindseye-cudnn/tree/59d5b3318556370acb2d83ee6ec123ce0fc6974f/src/main/java/com/simiacryptus/mindseye/layers/cudnn/conv/ConvolutionLayer.java",
      "javaDoc": ""
    }
  }