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

Code from BasicOptimizer.scala:75 executed in 2135.21 seconds (21.554 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: 1323435112927500
    Reset training subject: 1323459384527300
    Adding measurement 33188612 to history. Total: 0
    LBFGS Accumulation History: 1 points
    Constructing line search parameters: GD+Trust
    th(0)=35.07638331176713;dx=-0.001355169375188234
    New Minimum: 35.07638331176713 > 35.07469567726366
    END: th(2.154434690031884)=35.07469567726366; dx=-4.156543823552462E-4 evalInputDelta=0.0016876345034688711
    Fitness changed from 35.07638331176713 to 35.07469567726366
    Iteration 1 complete. Error: 35.07469567726366 Total: 122.4416; Orientation: 0.0149; Line Search: 49.3539
    <a id="p-3"></a>Iteration 1
    <a id="p-2"></a>![Iteration 1](etc/430ca3ef-4c18-4abb-89cb-2ddb5f78f136.jpg)
    
    Adding measurement 4b1ec694 to history. Total: 1
    LBFGS Accumulation History: 2 points
    th(0)=35.07469567726366;dx=-2.984724075095525E-4
    New Minimum: 35.07469567726366 > 35.07324318098836
    WOLFE (weak): th(4.641588833612779)=35.07324318098836; dx=-2.9240699812483055E-4 evalInputDelta=0.001452496275305748
    New Minimum: 35.07324318098836 > 35.071849342552014
    WOLFE (weak): th(9.283177667225559)=35.071849342552014; dx=-2.8385683243404745E-4 evalInputDelta=0.002846334711648524
    New Minimum: 35.071849342552014 > 35.06642528926022
    WOLFE (weak): th(27.849533001676676)=35.06642528926022; dx=-2.7944588369224846E-4 evalInputDelta=0.008270388003438711
    New Minimum: 35.06642528926022 > 35.042629251373
    WOLFE (weak): th(111.3981320067067)=35.042629251373; dx=-3.6892063691905765E-4 evalInputDelta=0.032066425890661776
    New Minimum: 35.042629251373 > 34.870667239883915
    WOLFE (weak): th(556.9906600335335)=34.870667239883915; dx=-2.7447054128266904E-4 evalInputDelta=0.20402843737974763
    New Minimum: 34.870667239883915 > 33.995877404813655
    WOLFE (weak): th(3341.9439602012008)=33.995877404813655; dx=-2.7778189042551105E-4 evalInputDelta=1.0788182724500075
    New Minimum: 33.995877404813655 > 28.87460656510666
    END: th(23393.607721408407)=28.87460656510666; dx=-1.4513362444582156E-4 evalInputDelta=6.200089112157002
    Fitness changed from 35.

...skipping 15172 bytes...

    tation magnitude: 5.989e+00, gradient 2.360e-02, dot -0.244; [b34be127-de74-4ba4-b19c-03423ad2de95 = 1.000/1.000e+00]
    Orientation rejected. Popping history element from 19.80314403306693, 19.706979024223983, 19.645783569663763, 19.62200765311718
    LBFGS Accumulation History: 3 points
    Removed measurement 28babeca to history. Total: 4
    th(0)=19.62200765311718;dx=-5.569889768013526E-4
    Armijo: th(818.198938271658)=19.645134917460382; dx=-4.583665292023364E-5 evalInputDelta=-0.023127264343202114
    Armijo: th(409.099469135829)=19.62362192478031; dx=2.8667674865513026E-5 evalInputDelta=-0.0016142716631293297
    New Minimum: 19.62200765311718 > 19.61278899386525
    WOLF (strong): th(136.366489711943)=19.61278899386525; dx=1.1093449645823728E-5 evalInputDelta=0.00921865925192833
    END: th(34.09162242798575)=19.6155148986727; dx=-3.870544767277252E-6 evalInputDelta=0.006492754444479942
    Fitness changed from 19.62200765311718 to 19.61278899386525
    Iteration 19 complete. Error: 19.61278899386525 Total: 146.9517; Orientation: 0.0922; Line Search: 122.4229
    Adding measurement 1320e68a to history. Total: 3
    Rejected: LBFGS Orientation magnitude: 7.453e+00, gradient 2.398e-02, dot -0.460; [b34be127-de74-4ba4-b19c-03423ad2de95 = 1.000/1.000e+00]
    Orientation rejected. Popping history element from 19.706979024223983, 19.645783569663763, 19.62200765311718, 19.61278899386525
    LBFGS Accumulation History: 3 points
    Removed measurement 515b9d4a to history. Total: 4
    th(0)=19.61278899386525;dx=-5.750094381976799E-4
    New Minimum: 19.61278899386525 > 19.60510501358658
    END: th(73.4481739983215)=19.60510501358658; dx=-4.155455171736655E-5 evalInputDelta=0.007683980278670788
    Fitness changed from 19.61278899386525 to 19.60510501358658
    Iteration 20 complete. Error: 19.60510501358658 Total: 73.3675; Orientation: 0.0875; Line Search: 48.9817
    <a id="p-17"></a>Iteration 20
    <a id="p-16"></a>![Iteration 20](etc/58713c8b-422f-4893-bdb4-52dfb770557d.jpg)
    
    Final threshold in iteration 21: 19.60510501358658 (> -Infinity) after 2135.191s (< 3600.000s)
    

Returns:

    19.60510501358658