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

Code from BasicOptimizer.scala:75 executed in 59.24 seconds (1.665 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: 926398574355600
    Reset training subject: 926399528398500
    Adding measurement 6feea171 to history. Total: 0
    LBFGS Accumulation History: 1 points
    Constructing line search parameters: GD+Trust
    th(0)=3.28420040756464;dx=-2.9401040603528984E-5
    New Minimum: 3.28420040756464 > 3.2841359190642834
    WOLFE (weak): th(2.154434690031884)=3.2841359190642834; dx=-2.9390416836697488E-5 evalInputDelta=6.44885003566742E-5
    New Minimum: 3.2841359190642834 > 3.284072630107403
    WOLFE (weak): th(4.308869380063768)=3.284072630107403; dx=-2.9341347393857895E-5 evalInputDelta=1.2777745723724365E-4
    New Minimum: 3.284072630107403 > 3.2838177736848593
    WOLFE (weak): th(12.926608140191302)=3.2838177736848593; dx=-2.925423660356959E-5 evalInputDelta=3.8263387978076935E-4
    New Minimum: 3.2838177736848593 > 3.2827508971095085
    WOLFE (weak): th(51.70643256076521)=3.2827508971095085; dx=-3.15849361310087E-5 evalInputDelta=0.0014495104551315308
    New Minimum: 3.2827508971095085 > 3.2781102880835533
    WOLFE (weak): th(258.53216280382605)=3.2781102880835533; dx=-2.7112327201559833E-5 evalInputDelta=0.006090119481086731
    New Minimum: 3.2781102880835533 > 3.243628952652216
    END: th(1551.1929768229563)=3.243628952652216; dx=-1.8878783903623286E-5 evalInputDelta=0.04057145491242409
    Fitness changed from 3.28420040756464 to 3.243628952652216
    Iteration 1 complete. Error: 3.243628952652216 Total: 9.2700; Orientation: 0.0036; Line Search: 6.4719
    <a id="p-3"></a>Iteration 1
    <a id="p-2"></a>![Iteration 1](etc/f1220e47-2a03-4f77-8671-c15b7f4770a6.jpg)
    
    Adding measurement 787dad3a to history. Total: 1
    LBFGS Accumulation History: 2 points
    th(0)=3.243628952652216;dx=-1.626927702386195E-5
    New Minimum: 3.243628952652216 > 3.1945266257971525
    END: th(3341.943960201201)=3.1945266257971525; dx=-1.2891595258866506E-5 evalInputDelta=0.04910232685506344
    Fitness changed from 3.243628952652216 to 3.1945266257971525
    Iteration 2 complete. Error: 3.1945266257971525 Total: 3.1127; Orientation: 0.0050; Line Search: 2.3057
    <a id="p-5"></a>Iter

...skipping 9747 bytes...

    3178; Orientation: 0.1167; Line Search: 3.4112
    Adding measurement 5edef7da to history. Total: 3
    Rejected: LBFGS Orientation magnitude: 1.163e+02, gradient 2.333e-03, dot -0.662; [3548eb0e-5ce3-4a44-849e-1338a17804e1 = 1.000/1.000e+00]
    Orientation rejected. Popping history element from 2.610330268740654, 2.555145911872387, 2.535714168101549, 2.4688748940825462
    LBFGS Accumulation History: 3 points
    Removed measurement 67b23fed to history. Total: 4
    th(0)=2.4688748940825462;dx=-5.441608309541292E-6
    Armijo: th(116039.72084031957)=2.4725049883127213; dx=7.129939592898341E-7 evalInputDelta=-0.0036300942301750183
    New Minimum: 2.4688748940825462 > 2.403793439269066
    WOLF (strong): th(58019.860420159785)=2.403793439269066; dx=4.430382739920896E-7 evalInputDelta=0.06508145481348038
    END: th(19339.953473386595)=2.416573628783226; dx=-2.2354855490282676E-6 evalInputDelta=0.05230126529932022
    Fitness changed from 2.4688748940825462 to 2.403793439269066
    Iteration 14 complete. Error: 2.403793439269066 Total: 4.6522; Orientation: 0.1113; Line Search: 3.7598
    Adding measurement 4fe6983c to history. Total: 3
    Rejected: LBFGS Orientation magnitude: 1.387e+02, gradient 2.362e-03, dot -0.641; [3548eb0e-5ce3-4a44-849e-1338a17804e1 = 1.000/1.000e+00]
    Orientation rejected. Popping history element from 2.555145911872387, 2.535714168101549, 2.4688748940825462, 2.403793439269066
    LBFGS Accumulation History: 3 points
    Removed measurement 241eb62f to history. Total: 4
    th(0)=2.403793439269066;dx=-5.577480419922921E-6
    New Minimum: 2.403793439269066 > 2.34355092048645
    END: th(41666.6666666667)=2.34355092048645; dx=-1.1330273572851852E-7 evalInputDelta=0.06024251878261566
    Fitness changed from 2.403793439269066 to 2.34355092048645
    Iteration 15 complete. Error: 2.34355092048645 Total: 2.9089; Orientation: 0.1128; Line Search: 1.8727
    <a id="p-15"></a>Iteration 15
    <a id="p-14"></a>![Iteration 15](etc/621fec7c-ec40-4de8-9039-9ec5e0b0bb6f.jpg)
    
    Final threshold in iteration 16: 2.34355092048645 (> -Infinity) after 59.239s (< 1800.000s)
    

Returns:

    2.34355092048645