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

Iteration 30 Iteration 30

Code from BasicOptimizer.scala:75 executed in 2767.82 seconds (29.905 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: 1264698546085800
    Reset training subject: 1264720208307000
    Adding measurement 4bfe0b18 to history. Total: 0
    LBFGS Accumulation History: 1 points
    Constructing line search parameters: GD+Trust
    th(0)=0.7929591805472135;dx=-2.9511283087261164E-7
    New Minimum: 0.7929591805472135 > 0.7929590228793231
    WOLFE (weak): th(2.154434690031884)=0.7929590228793231; dx=-2.917350117805144E-7 evalInputDelta=1.5766789041027351E-7
    New Minimum: 0.7929590228793231 > 0.7929586962196963
    WOLFE (weak): th(4.308869380063768)=0.7929586962196963; dx=-2.9173494642588846E-7 evalInputDelta=4.843275172028427E-7
    New Minimum: 0.7929586962196963 > 0.7929578596436236
    WOLFE (weak): th(12.926608140191302)=0.7929578596436236; dx=-2.917357466802054E-7 evalInputDelta=1.3209035898409383E-6
    New Minimum: 0.7929578596436236 > 0.792954127331233
    WOLFE (weak): th(51.70643256076521)=0.792954127331233; dx=-2.917308342424449E-7 evalInputDelta=5.053215980432846E-6
    New Minimum: 0.792954127331233 > 0.7929343010406309
    WOLFE (weak): th(258.53216280382605)=0.7929343010406309; dx=-2.917287362605031E-7 evalInputDelta=2.4879506582586863E-5
    New Minimum: 0.7929343010406309 > 0.7928101223612161
    WOLFE (weak): th(1551.1929768229563)=0.7928101223612161; dx=-2.9167521903127547E-7 evalInputDelta=1.4905818599741938E-4
    New Minimum: 0.7928101223612161 > 0.7919176049133358
    WOLFE (weak): th(10858.350837760694)=0.7919176049133358; dx=-2.913004906225465E-7 evalInputDelta=0.0010415756338776339
    New Minimum: 0.7919176049133358 > 0.7846809539702925
    WOLFE (weak): th(86866.80670208555)=0.7846809539702925; dx=-2.8823455205373977E-7 evalInputDelta=0.00827822657692101
    New Minimum: 0.7846809539702925 > 0.7237240597114942
    END: th(781801.26031877)=0.7237240597114942; dx=-2.5981107500612805E-7 evalInputDelta=0.06923512083571925
    Fitness changed from 0.7929591805472135 to 0.7237240597114942
    Iteration 1 complete. Error: 0.7237240597114942 Total: 270.3883; Orientation: 0.0188; Line Search: 206.3566
    <a id="p-3"></a>Iteration 1
    <a id="p-2"></a>![Iteration 1](e

...skipping 25437 bytes...

    61747025745486, 0.19543634069887494, 0.19493789912802106, 0.19470340393950003
    LBFGS Accumulation History: 3 points
    Removed measurement 679b617f to history. Total: 4
    th(0)=0.19470340393950003;dx=-1.808349629545367E-8
    Armijo: th(5875853.919865721)=0.19802847414181213; dx=-1.5118009985278114E-8 evalInputDelta=-0.003325070202312097
    Armijo: th(2937926.9599328605)=0.19486985513148936; dx=-1.5955514283357255E-8 evalInputDelta=-1.6645119198932523E-4
    New Minimum: 0.19470340393950003 > 0.19442344693256408
    WOLFE (weak): th(979308.9866442868)=0.19442344693256408; dx=-1.6598577053989032E-8 evalInputDelta=2.7995700693594916E-4
    END: th(1958617.9732885736)=0.19448426112879325; dx=-1.6263993280466195E-8 evalInputDelta=2.1914281070678499E-4
    Fitness changed from 0.19470340393950003 to 0.19442344693256408
    Iteration 29 complete. Error: 0.19442344693256408 Total: 126.1375; Orientation: 0.5401; Line Search: 105.5095
    Adding measurement 294ce57a to history. Total: 3
    Rejected: LBFGS Orientation magnitude: 1.120e+04, gradient 1.337e-04, dot -0.961; [ae9acdca-fc95-4ccd-9662-284e3d6a5d6a = 1.000/1.000e+00]
    Orientation rejected. Popping history element from 0.19543634069887494, 0.19493789912802106, 0.19470340393950003, 0.19442344693256408
    LBFGS Accumulation History: 3 points
    Removed measurement 31fc2a08 to history. Total: 4
    th(0)=0.19442344693256408;dx=-1.7884721990596146E-8
    Armijo: th(4219714.506172844)=0.1957642572390106; dx=-1.546933541727428E-8 evalInputDelta=-0.001340810306446505
    New Minimum: 0.19442344693256408 > 0.19434064112499783
    END: th(2109857.253086422)=0.19434064112499783; dx=-1.6089477065114992E-8 evalInputDelta=8.280580756625522E-5
    Fitness changed from 0.19442344693256408 to 0.19434064112499783
    Iteration 30 complete. Error: 0.19434064112499783 Total: 87.4894; Orientation: 0.5539; Line Search: 65.2207
    <a id="p-21"></a>Iteration 30
    <a id="p-20"></a>![Iteration 30](etc/e3b54bba-c316-4dff-a9c0-3af04a64126b.jpg)
    
    Final threshold in iteration 31: 0.19434064112499783 (> -Infinity) after 2767.808s (< 3600.000s)
    

Returns:

    0.19434064112499783