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 1642.74 seconds (11.379 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: 961371569919400
    Reset training subject: 961386121429300
    Adding measurement 388623ad to history. Total: 0
    LBFGS Accumulation History: 1 points
    Constructing line search parameters: GD+Trust
    th(0)=13.085081000431678;dx=-8.39946182291517E-6
    New Minimum: 13.085081000431678 > 13.085064592335698
    WOLFE (weak): th(2.154434690031884)=13.085064592335698; dx=-8.399011061103756E-6 evalInputDelta=1.640809598058013E-5
    New Minimum: 13.085064592335698 > 13.085048487796016
    WOLFE (weak): th(4.308869380063768)=13.085048487796016; dx=-8.398977930669735E-6 evalInputDelta=3.251263566284024E-5
    New Minimum: 13.085048487796016 > 13.084983300309982
    WOLFE (weak): th(12.926608140191302)=13.084983300309982; dx=-8.39869597884948E-6 evalInputDelta=9.770012169596498E-5
    New Minimum: 13.084983300309982 > 13.084691576329941
    WOLFE (weak): th(51.70643256076521)=13.084691576329941; dx=-8.397429656513478E-6 evalInputDelta=3.894241017370348E-4
    New Minimum: 13.084691576329941 > 13.083134567348772
    WOLFE (weak): th(258.53216280382605)=13.083134567348772; dx=-8.392560068470302E-6 evalInputDelta=0.0019464330829066512
    New Minimum: 13.083134567348772 > 13.073425043919507
    WOLFE (weak): th(1551.1929768229563)=13.073425043919507; dx=-8.364226900594677E-6 evalInputDelta=0.011655956512171883
    New Minimum: 13.073425043919507 > 13.003463343664093
    WOLFE (weak): th(10858.350837760694)=13.003463343664093; dx=-8.091679331618147E-6 evalInputDelta=0.0816176567675857
    New Minimum: 13.003463343664093 > 12.509317560448565
    END: th(86866.80670208555)=12.509317560448565; dx=-6.4352051436182345E-6 evalInputDelta=0.5757634399831133
    Fitness changed from 13.085081000431678 to 12.509317560448565
    Iteration 1 complete. Error: 12.509317560448565 Total: 164.1037; Orientation: 0.0394; Line Search: 121.8407
    <a id="p-3"></a>Iteration 1
    <a id="p-2"></a>![Iteration 1](etc/4cdbab78-8e38-46a0-aeba-531dac2e8391.jpg)
    
    Adding measurement 5d5a51b1 to history. Total: 1
    LBFGS Accumulation History: 2 points
    th(0)=12.509317560448565;dx=-5.489766295480421

...skipping 23670 bytes...

    218821334684478 to 2.1270883893809587
    Iteration 28 complete. Error: 2.1270883893809587 Total: 67.6767; Orientation: 0.4222; Line Search: 53.8798
    Adding measurement 2f9b21d6 to history. Total: 3
    Rejected: LBFGS Orientation magnitude: 1.976e+03, gradient 1.856e-04, dot -0.875; [d861159d-cff8-4801-8166-dc0ca0df18f7 = 1.000/1.000e+00]
    Orientation rejected. Popping history element from 2.2695473588659265, 2.226520263151304, 2.2218821334684478, 2.1270883893809587
    LBFGS Accumulation History: 3 points
    Removed measurement 12952aff to history. Total: 4
    th(0)=2.1270883893809587;dx=-3.445716016277099E-8
    New Minimum: 2.1270883893809587 > 2.070003132824657
    END: th(7834471.893154292)=2.070003132824657; dx=-1.4296962094242682E-8 evalInputDelta=0.05708525655630181
    Fitness changed from 2.1270883893809587 to 2.070003132824657
    Iteration 29 complete. Error: 2.070003132824657 Total: 40.9290; Orientation: 0.4551; Line Search: 26.9354
    Adding measurement 6af609ea to history. Total: 3
    Rejected: LBFGS Orientation magnitude: 3.356e+03, gradient 1.877e-04, dot -0.710; [d861159d-cff8-4801-8166-dc0ca0df18f7 = 1.000/1.000e+00]
    Orientation rejected. Popping history element from 2.226520263151304, 2.2218821334684478, 2.1270883893809587, 2.070003132824657
    LBFGS Accumulation History: 3 points
    Removed measurement 3ebc955b to history. Total: 4
    th(0)=2.070003132824657;dx=-3.524952338088868E-8
    Armijo: th(1.6878858024691373E7)=2.200625143583288; dx=-2.0968703915861688E-9 evalInputDelta=-0.1306220107586311
    New Minimum: 2.070003132824657 > 2.0324010434358715
    END: th(8439429.012345687)=2.0324010434358715; dx=-1.1212175361314064E-8 evalInputDelta=0.0376020893887854
    Fitness changed from 2.070003132824657 to 2.0324010434358715
    Iteration 30 complete. Error: 2.0324010434358715 Total: 53.9501; Orientation: 0.4245; Line Search: 40.1306
    <a id="p-21"></a>Iteration 30
    <a id="p-20"></a>![Iteration 30](etc/12158842-703c-4d6c-bc5b-d5c7dd56fd6d.jpg)
    
    Final threshold in iteration 31: 2.0324010434358715 (> -Infinity) after 1642.722s (< 3600.000s)
    

Returns:

    2.0324010434358715