Iteration 1 Iteration 1

Iteration 2 Iteration 2

Iteration 3 Iteration 3

Iteration 4 Iteration 4

Code from BasicOptimizer.scala:75 executed in 590.98 seconds (2.028 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: 825111266333500
    Reset training subject: 825121643905300
    Adding measurement 4fb04a72 to history. Total: 0
    LBFGS Accumulation History: 1 points
    Constructing line search parameters: GD+Trust
    th(0)=-2.8398961424827576;dx=-4.702183152111374E-8
    New Minimum: -2.8398961424827576 > -2.839896246790886
    WOLFE (weak): th(2.154434690031884)=-2.839896246790886; dx=-4.70217907599631E-8 evalInputDelta=1.043081283569336E-7
    New Minimum: -2.839896246790886 > -2.8398962914943695
    WOLFE (weak): th(4.308869380063768)=-2.8398962914943695; dx=-4.702178983659797E-8 evalInputDelta=1.4901161193847656E-7
    New Minimum: -2.8398962914943695 > -2.8398966789245605
    WOLFE (weak): th(12.926608140191302)=-2.8398966789245605; dx=-4.702179494550362E-8 evalInputDelta=5.364418029785156E-7
    New Minimum: -2.8398966789245605 > -2.8398979902267456
    WOLFE (weak): th(51.70643256076521)=-2.8398979902267456; dx=-4.702184416718583E-8 evalInputDelta=1.8477439880371094E-6
    New Minimum: -2.8398979902267456 > -2.8399051278829575
    WOLFE (weak): th(258.53216280382605)=-2.8399051278829575; dx=-4.7022297821521084E-8 evalInputDelta=8.985400199890137E-6
    New Minimum: -2.8399051278829575 > -2.83995021879673
    WOLFE (weak): th(1551.1929768229563)=-2.83995021879673; dx=-4.702284653551635E-8 evalInputDelta=5.4076313972473145E-5
    New Minimum: -2.83995021879673 > -2.8402746617794037
    WOLFE (weak): th(10858.350837760694)=-2.8402746617794037; dx=-4.702667350304652E-8 evalInputDelta=3.7851929664611816E-4
    New Minimum: -2.8402746617794037 > -2.842927396297455
    WOLFE (weak): th(86866.80670208555)=-2.842927396297455; dx=-4.7070392087842296E-8 evalInputDelta=0.0030312538146972656
    New Minimum: -2.842927396297455 > -2.8674674332141876
    WOLFE (weak): th(781801.26031877)=-2.8674674332141876; dx=-4.746956220237405E-8 evalInputDelta=0.027571290731430054
    New Minimum: -2.8674674332141876 > -3.1383638978004456
    WOLFE (weak): th(7818012.6031877)=-3.1383638978004456; dx=-4.969910264739638E-8 evalInputDelta=0.298467755317688
    New Minimum: -3.1383638978004456 > -7.

...skipping 4195 bytes...

    1629638671875E-4
    Armijo: th(0.8245895069505238)=-85.14374351501465; dx=-3.818723624715068E-5 evalInputDelta=-7.05718994140625E-5
    Armijo: th(0.11779850099293197)=-85.1437726020813; dx=-4.328500603092282E-4 evalInputDelta=-4.1484832763671875E-5
    Armijo: th(0.014724812624116497)=-85.14376449584961; dx=-0.0064632910005250465 evalInputDelta=-4.9591064453125E-5
    Armijo: th(0.0016360902915684996)=-85.14379787445068; dx=-0.017258034777126407 evalInputDelta=-1.621246337890625E-5
    Armijo: th(1.6360902915684995E-4)=-85.14381122589111; dx=-0.016921751576689674 evalInputDelta=-2.86102294921875E-6
    Armijo: th(1.4873548105168177E-5)=-85.14381217956543; dx=-0.016940713350728102 evalInputDelta=-1.9073486328125E-6
    Armijo: th(1.2394623420973482E-6)=-85.14381408691406; dx=-0.016940046026071166 evalInputDelta=0.0
    Armijo: th(9.53432570844114E-8)=-85.14381408691406; dx=-0.016957173109462927 evalInputDelta=0.0
    Armijo: th(6.810232648886529E-9)=-85.14381408691406; dx=-0.016957170566908906 evalInputDelta=0.0
    Armijo: th(4.540155099257686E-10)=-85.14381408691406; dx=-0.016957166719796943 evalInputDelta=0.0
    MIN ALPHA (2.8375969370360538E-11): th(0.0)=-85.14381408691406
    Fitness changed from -85.14381408691406 to -85.14381408691406
    Static Iteration Total: 191.8927; Orientation: 3.4724; Line Search: 178.2521
    Iteration 5 failed. Error: -85.14381408691406
    Previous Error: 0.0 -> -85.14381408691406
    Retrying iteration 5
    Reset training subject: 825660360687600
    Adding measurement 4f2d014a to history. Total: 0
    LBFGS Accumulation History: 1 points
    th(0)=-85.14381408691406;dx=-4.714839667224068E-7
    END: th(2.1544346900318838E-10)=-85.14381408691406; dx=-2.2827468193427615E-7 evalInputDelta=0.0
    Fitness changed from -85.14381408691406 to -85.14381408691406
    Static Iteration Total: 41.8725; Orientation: 0.0964; Line Search: 20.9208
    Iteration 6 failed. Error: -85.14381408691406
    Previous Error: 0.0 -> -85.14381408691406
    Optimization terminated 6
    Final threshold in iteration 6: -85.14381408691406 (> -Infinity) after 590.967s (< 3600.000s)
    

Returns:

    -85.14381408691406