Iteration 1 Iteration 1

Iteration 2 Iteration 2

Iteration 3 Iteration 3

Iteration 4 Iteration 4

Iteration 5 Iteration 5

Iteration 10 Iteration 10

Iteration 15 Iteration 15

Iteration 20 Iteration 20

Iteration 25 Iteration 25

Code from BasicOptimizer.scala:75 executed in 122.23 seconds (2.956 gc):

    val lineSearchInstance: LineSearchStrategy = lineSearchFactory
    IterativeTrainer.wrap(trainable)
      .setOrientation(orientation())
      .setMonitor(new TrainingMonitor() {
        override def clear(): Unit = trainingMonitor.clear()
  
        override def log(msg: String): Unit = trainingMonitor.log(msg)
  
        override def onStepFail(currentPoint: Step): Boolean = {
          BasicOptimizer.this.onStepFail(trainable, currentPoint)
        }
  
        override def onStepComplete(currentPoint: Step): Unit = {
          if (0 < logEvery && (0 == currentPoint.iteration % logEvery || currentPoint.iteration < logEvery)) {
            val image = currentImage
            timelineAnimation += image
            val caption = "Iteration " + currentPoint.iteration
            out.p(caption + "\n" + out.jpg(image, caption))
          }
          BasicOptimizer.this.onStepComplete(trainable, currentPoint)
          trainingMonitor.onStepComplete(currentPoint)
          super.onStepComplete(currentPoint)
        }
      })
      .setTimeout(trainingMinutes, TimeUnit.MINUTES)
      .setMaxIterations(trainingIterations)
      .setLineSearchFactory((_: CharSequence) => lineSearchInstance)
      .setTerminateThreshold(java.lang.Double.NEGATIVE_INFINITY)
      .runAndFree
      .asInstanceOf[lang.Double]

Logging:

    Reset training subject: 900559405789300
    Reset training subject: 900560559086500
    Adding measurement 77cd1f67 to history. Total: 0
    LBFGS Accumulation History: 1 points
    Constructing line search parameters: GD+Trust
    th(0)=2.4446486234664917;dx=-7.519046161007022E-6
    New Minimum: 2.4446486234664917 > 2.4446346759796143
    WOLFE (weak): th(2.154434690031884)=2.4446346759796143; dx=-7.518969190294524E-6 evalInputDelta=1.3947486877441406E-5
    New Minimum: 2.4446346759796143 > 2.444620981812477
    WOLFE (weak): th(4.308869380063768)=2.444620981812477; dx=-7.51889460977969E-6 evalInputDelta=2.7641654014587402E-5
    New Minimum: 2.444620981812477 > 2.444565251469612
    WOLFE (weak): th(12.926608140191302)=2.444565251469612; dx=-7.518361425607065E-6 evalInputDelta=8.337199687957764E-5
    New Minimum: 2.444565251469612 > 2.4443161487579346
    WOLFE (weak): th(51.70643256076521)=2.4443161487579346; dx=-7.51929724173575E-6 evalInputDelta=3.324747085571289E-4
    New Minimum: 2.4443161487579346 > 2.442986786365509
    WOLFE (weak): th(258.53216280382605)=2.442986786365509; dx=-7.5193242298119944E-6 evalInputDelta=0.001661837100982666
    New Minimum: 2.442986786365509 > 2.4347023218870163
    WOLFE (weak): th(1551.1929768229563)=2.4347023218870163; dx=-7.479635002885827E-6 evalInputDelta=0.009946301579475403
    New Minimum: 2.4347023218870163 > 2.3767718970775604
    WOLFE (weak): th(10858.350837760694)=2.3767718970775604; dx=-7.180137298246794E-6 evalInputDelta=0.06787672638893127
    New Minimum: 2.3767718970775604 > 1.9913776963949203
    END: th(86866.80670208555)=1.9913776963949203; dx=-4.840371503721438E-6 evalInputDelta=0.45327092707157135
    Fitness changed from 2.4446486234664917 to 1.9913776963949203
    Iteration 1 complete. Error: 1.9913776963949203 Total: 14.4565; Orientation: 0.0142; Line Search: 11.0317
    <a id="p-3"></a>Iteration 1
    <a id="p-2"></a>![Iteration 1](etc/fc94e369-d847-441d-8130-334566bfbab1.jpg)
    
    Adding measurement 6a9c848 to history. Total: 1
    LBFGS Accumulation History: 2 points
    th(0)=1.9913776963949203;dx=-3.937077607880026E-6
    New 

...skipping 19485 bytes...

    E-9 evalInputDelta=0.007620424032211304
    Fitness changed from -0.22812721133232117 to -0.23574763536453247
    Iteration 23 complete. Error: -0.23574763536453247 Total: 5.9142; Orientation: 0.4204; Line Search: 4.4210
    Adding measurement 4c020e58 to history. Total: 3
    Rejected: LBFGS Orientation magnitude: 1.198e+03, gradient 4.818e-05, dot -0.820; [4fff9486-39fa-49ce-977e-809d10d27a86 = 1.000/1.000e+00]
    Orientation rejected. Popping history element from -0.2098107635974884, -0.220743328332901, -0.22812721133232117, -0.23574763536453247
    LBFGS Accumulation History: 3 points
    Removed measurement 2b26d289 to history. Total: 4
    th(0)=-0.23574763536453247;dx=-2.3216487327453757E-9
    New Minimum: -0.23574763536453247 > -0.2428896129131317
    END: th(7201646.090534987)=-0.2428896129131317; dx=-1.4870000248984186E-9 evalInputDelta=0.007141977548599243
    Fitness changed from -0.23574763536453247 to -0.2428896129131317
    Iteration 24 complete. Error: -0.2428896129131317 Total: 4.2145; Orientation: 0.4227; Line Search: 2.7255
    Adding measurement 5b9ed77b to history. Total: 3
    Rejected: LBFGS Orientation magnitude: 1.734e+03, gradient 4.614e-05, dot -0.845; [4fff9486-39fa-49ce-977e-809d10d27a86 = 1.000/1.000e+00]
    Orientation rejected. Popping history element from -0.220743328332901, -0.22812721133232117, -0.23574763536453247, -0.2428896129131317
    LBFGS Accumulation History: 3 points
    Removed measurement 10bae3c0 to history. Total: 4
    th(0)=-0.2428896129131317;dx=-2.129265236585782E-9
    New Minimum: -0.2428896129131317 > -0.24983780086040497
    END: th(1.5515476162781073E7)=-0.24983780086040497; dx=-7.874739313025653E-10 evalInputDelta=0.006948187947273254
    Fitness changed from -0.2428896129131317 to -0.24983780086040497
    Iteration 25 complete. Error: -0.24983780086040497 Total: 3.5818; Orientation: 0.4176; Line Search: 2.2209
    <a id="p-19"></a>Iteration 25
    <a id="p-18"></a>![Iteration 25](etc/d417b3e0-80d8-424c-9226-8836245fc13e.jpg)
    
    Final threshold in iteration 26: -0.24983780086040497 (> -Infinity) after 122.230s (< 3600.000s)
    

Returns:

    -0.24983780086040497