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 223.43 seconds (2.778 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: 918704683500700
    Reset training subject: 918707768744100
    Adding measurement 6d0c1ee5 to history. Total: 0
    LBFGS Accumulation History: 1 points
    Constructing line search parameters: GD+Trust
    th(0)=1.106990858912468;dx=-1.5067738066546637E-7
    New Minimum: 1.106990858912468 > 1.1069908440113068
    WOLFE (weak): th(2.154434690031884)=1.1069908440113068; dx=-1.506714682110898E-7 evalInputDelta=1.4901161193847656E-8
    New Minimum: 1.1069908440113068 > 1.1069906055927277
    WOLFE (weak): th(4.308869380063768)=1.1069906055927277; dx=-1.5067140622998512E-7 evalInputDelta=2.5331974029541016E-7
    New Minimum: 1.1069906055927277 > 1.106989562511444
    WOLFE (weak): th(12.926608140191302)=1.106989562511444; dx=-1.506693736755349E-7 evalInputDelta=1.296401023864746E-6
    New Minimum: 1.106989562511444 > 1.1069848388433456
    WOLFE (weak): th(51.70643256076521)=1.1069848388433456; dx=-1.506652761384522E-7 evalInputDelta=6.020069122314453E-6
    New Minimum: 1.1069848388433456 > 1.1069604605436325
    WOLFE (weak): th(258.53216280382605)=1.1069604605436325; dx=-1.5066314681383532E-7 evalInputDelta=3.039836883544922E-5
    New Minimum: 1.1069604605436325 > 1.1068087220191956
    WOLFE (weak): th(1551.1929768229563)=1.1068087220191956; dx=-1.5060221954348706E-7 evalInputDelta=1.821368932723999E-4
    New Minimum: 1.1068087220191956 > 1.1057187914848328
    WOLFE (weak): th(10858.350837760694)=1.1057187914848328; dx=-1.5006141913076857E-7 evalInputDelta=0.0012720674276351929
    New Minimum: 1.1057187914848328 > 1.096891924738884
    WOLFE (weak): th(86866.80670208555)=1.096891924738884; dx=-1.470127384437237E-7 evalInputDelta=0.010098934173583984
    New Minimum: 1.096891924738884 > 1.0238182544708252
    END: th(781801.26031877)=1.0238182544708252; dx=-1.1936587082565785E-7 evalInputDelta=0.08317260444164276
    Fitness changed from 1.106990858912468 to 1.0238182544708252
    Iteration 1 complete. Error: 1.0238182544708252 Total: 40.8566; Orientation: 0.0595; Line Search: 31.8370
    <a id="p-3"></a>Iteration 1
    <a id="p-2"></a>![Iteration 1](etc/23bdbe9

...skipping 10812 bytes...

    . Popping history element from -0.130790114402771, -0.15424901247024536, -0.17375338077545166, -0.20054841041564941
    LBFGS Accumulation History: 3 points
    Removed measurement 2c231c2b to history. Total: 4
    th(0)=-0.20054841041564941;dx=-2.571876170073611E-9
    Armijo: th(5.848401930352104E7)=-0.15665486454963684; dx=1.264317557287179E-9 evalInputDelta=-0.04389354586601257
    Armijo: th(2.924200965176052E7)=-0.19917088747024536; dx=1.0822384681513038E-9 evalInputDelta=-0.0013775229454040527
    New Minimum: -0.20054841041564941 > -0.21284747123718262
    END: th(9747336.55058684)=-0.21284747123718262; dx=-6.417546797178067E-10 evalInputDelta=0.012299060821533203
    Fitness changed from -0.20054841041564941 to -0.21284747123718262
    Iteration 14 complete. Error: -0.21284747123718262 Total: 16.8426; Orientation: 1.7050; Line Search: 12.2240
    Adding measurement 2228490 to history. Total: 3
    Rejected: LBFGS Orientation magnitude: 2.663e+03, gradient 4.336e-05, dot -0.695; [6bef22a0-b18f-43e6-8a40-b2f49df3118d = 1.000/1.000e+00]
    Orientation rejected. Popping history element from -0.15424901247024536, -0.17375338077545166, -0.20054841041564941, -0.21284747123718262
    LBFGS Accumulation History: 3 points
    Removed measurement 37d4eace to history. Total: 4
    th(0)=-0.21284747123718262;dx=-1.8796912963011926E-9
    New Minimum: -0.21284747123718262 > -0.22069956362247467
    WOLF (strong): th(2.100000000000001E7)=-0.22069956362247467; dx=4.325632533269616E-10 evalInputDelta=0.007852092385292053
    New Minimum: -0.22069956362247467 > -0.22297151386737823
    END: th(1.0500000000000006E7)=-0.22297151386737823; dx=-5.697206404062772E-10 evalInputDelta=0.010124042630195618
    Fitness changed from -0.21284747123718262 to -0.22297151386737823
    Iteration 15 complete. Error: -0.22297151386737823 Total: 14.3794; Orientation: 1.7502; Line Search: 9.6991
    <a id="p-15"></a>Iteration 15
    <a id="p-14"></a>![Iteration 15](etc/cd777cb8-34de-495e-93f4-4a7698a84261.jpg)
    
    Final threshold in iteration 16: -0.22297151386737823 (> -Infinity) after 223.432s (< 1800.000s)
    

Returns:

    -0.22297151386737823