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 199.83 seconds (5.149 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: 1947917108631
    Reset training subject: 1949617226306
    Adding measurement 1f2afe50 to history. Total: 0
    LBFGS Accumulation History: 1 points
    Constructing line search parameters: GD+Trust
    th(0)=1.0851977144347524;dx=-4.300476840438323E-7
    New Minimum: 1.0851977144347524 > 1.0851967297353495
    WOLFE (weak): th(2.154434690031884)=1.0851967297353495; dx=-4.300609957082154E-7 evalInputDelta=9.846994029061307E-7
    New Minimum: 1.0851967297353495 > 1.0851957450359468
    WOLFE (weak): th(4.308869380063768)=1.0851957450359468; dx=-4.301381598995518E-7 evalInputDelta=1.9693988055902167E-6
    New Minimum: 1.0851957450359468 > 1.08519213447147
    WOLFE (weak): th(12.926608140191302)=1.08519213447147; dx=-4.301422854435581E-7 evalInputDelta=5.5799632825426215E-6
    New Minimum: 1.08519213447147 > 1.0851757228147565
    WOLFE (weak): th(51.70643256076521)=1.0851757228147565; dx=-4.3021562027325774E-7 evalInputDelta=2.1991619995942457E-5
    New Minimum: 1.0851757228147565 > 1.0850885222120867
    WOLFE (weak): th(258.53216280382605)=1.0850885222120867; dx=-4.298411118033886E-7 evalInputDelta=1.0919222266569939E-4
    New Minimum: 1.0850885222120867 > 1.0845428893318927
    WOLFE (weak): th(1551.1929768229563)=1.0845428893318927; dx=-4.2933693687566717E-7 evalInputDelta=6.548251028597463E-4
    New Minimum: 1.0845428893318927 > 1.0806550772675632
    WOLFE (weak): th(10858.350837760694)=1.0806550772675632; dx=-4.2003248361400253E-7 evalInputDelta=0.0045426371671892785
    New Minimum: 1.0806550772675632 > 1.0521447472252647
    END: th(86866.80670208555)=1.0521447472252647; dx=-3.3792982108398384E-7 evalInputDelta=0.033052967209487694
    Fitness changed from 1.0851977144347524 to 1.0521447472252647
    Iteration 1 complete. Error: 1.0521447472252647 Total: 18.6408; Orientation: 0.0663; Line Search: 13.5203
    <a id="p-3"></a>Iteration 1
    <a id="p-2"></a>![Iteration 1](etc/46da4258-90e5-45c2-a5fe-d9304742239c.jpg)
    
    Adding measurement 579aa8e4 to history. Total: 1
    LBFGS Accumulation History: 2 points
    th(0)=1.0521447472252647;dx=-3.0251627774298806E-7
    New Minimum: 1.052144

...skipping 19598 bytes...

    tal: 9.1446; Orientation: 1.6329; Line Search: 6.1594
    Adding measurement 15d4aa1e to history. Total: 3
    Rejected: LBFGS Orientation magnitude: 2.749e+02, gradient 1.781e-04, dot -0.812; [2c99db8f-9c6a-4076-8957-3daebebe8409 = 1.000/1.000e+00]
    Orientation rejected. Popping history element from 0.7273262769610851, 0.7232233080772444, 0.716105736677265, 0.7088617955205933
    LBFGS Accumulation History: 3 points
    Removed measurement 6e0b2c73 to history. Total: 4
    th(0)=0.7088617955205933;dx=-3.173240005664289E-8
    New Minimum: 0.7088617955205933 > 0.7024974097527082
    END: th(759548.6111111117)=0.7024974097527082; dx=-1.2866887838679767E-8 evalInputDelta=0.006364385767885006
    Fitness changed from 0.7088617955205933 to 0.7024974097527082
    Iteration 24 complete. Error: 0.7024974097527082 Total: 6.0594; Orientation: 1.6457; Line Search: 3.0596
    Adding measurement 64f8f1aa to history. Total: 3
    Rejected: LBFGS Orientation magnitude: 3.402e+02, gradient 2.279e-04, dot -0.592; [2c99db8f-9c6a-4076-8957-3daebebe8409 = 1.000/1.000e+00]
    Orientation rejected. Popping history element from 0.7232233080772444, 0.716105736677265, 0.7088617955205933, 0.7024974097527082
    LBFGS Accumulation History: 3 points
    Removed measurement 89c3186 to history. Total: 4
    th(0)=0.7024974097527082;dx=-5.191997003182989E-8
    Armijo: th(1636397.8765433158)=0.7318372943363401; dx=2.2029762918586032E-8 evalInputDelta=-0.029339884583631903
    Armijo: th(818198.9382716579)=0.7066001598144594; dx=1.3626893221861786E-8 evalInputDelta=-0.004102750061751204
    New Minimum: 0.7024974097527082 > 0.6978521997310609
    END: th(272732.979423886)=0.6978521997310609; dx=-2.0143610029503057E-8 evalInputDelta=0.004645210021647306
    Fitness changed from 0.7024974097527082 to 0.6978521997310609
    Iteration 25 complete. Error: 0.6978521997310609 Total: 9.6891; Orientation: 1.6356; Line Search: 6.6869
    <a id="p-19"></a>Iteration 25
    <a id="p-18"></a>![Iteration 25](etc/fa6bf663-935a-4263-9cc2-8d2bca6cebb0.jpg)
    
    Final threshold in iteration 26: 0.6978521997310609 (> -Infinity) after 199.828s (< 3600.000s)
    

Returns:

    0.6978521997310609