Iteration 1 Iteration 1

Iteration 2 Iteration 2

Iteration 3 Iteration 3

Iteration 4 Iteration 4

Iteration 5 Iteration 5

Iteration 10 Iteration 10

Code from BasicOptimizer.scala:75 executed in 3718.55 seconds (39.517 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: 1333158092023800
    Reset training subject: 1333222822285200
    Adding measurement 123c48d0 to history. Total: 0
    LBFGS Accumulation History: 1 points
    Constructing line search parameters: GD+Trust
    th(0)=8.428457010537386;dx=-1.618209336939349E-5
    New Minimum: 8.428457010537386 > 8.428444176912308
    WOLFE (weak): th(2.154434690031884)=8.428444176912308; dx=-1.6109415529223065E-5 evalInputDelta=1.2833625078201294E-5
    New Minimum: 8.428444176912308 > 8.428431414067745
    WOLFE (weak): th(4.308869380063768)=8.428431414067745; dx=-1.6108598079759602E-5 evalInputDelta=2.559646964073181E-5
    New Minimum: 8.428431414067745 > 8.428380947560072
    WOLFE (weak): th(12.926608140191302)=8.428380947560072; dx=-1.6101608503566346E-5 evalInputDelta=7.606297731399536E-5
    New Minimum: 8.428380947560072 > 8.428152900189161
    WOLFE (weak): th(51.70643256076521)=8.428152900189161; dx=-1.6096689640866186E-5 evalInputDelta=3.041103482246399E-4
    New Minimum: 8.428152900189161 > 8.426939327269793
    WOLFE (weak): th(258.53216280382605)=8.426939327269793; dx=-1.6082565528518966E-5 evalInputDelta=0.0015176832675933838
    New Minimum: 8.426939327269793 > 8.419373448938131
    WOLFE (weak): th(1551.1929768229563)=8.419373448938131; dx=-1.590450970345921E-5 evalInputDelta=0.009083561599254608
    New Minimum: 8.419373448938131 > 8.36607438698411
    WOLFE (weak): th(10858.350837760694)=8.36607438698411; dx=-1.522753728503551E-5 evalInputDelta=0.06238262355327606
    New Minimum: 8.36607438698411 > 8.035409377887845
    END: th(86866.80670208555)=8.035409377887845; dx=-9.884534803727625E-6 evalInputDelta=0.3930476326495409
    Fitness changed from 8.428457010537386 to 8.035409377887845
    Iteration 1 complete. Error: 8.035409377887845 Total: 755.8064; Orientation: 0.0504; Line Search: 565.1283
    <a id="p-3"></a>Iteration 1
    <a id="p-2"></a>![Iteration 1](etc/fd609cad-7389-4852-b8ab-de39c5ebe149.jpg)
    
    Adding measurement 305289b3 to history. Total: 1
    LBFGS Accumulation History: 2 points
    th(0)=8.035409377887845;dx=-8.824380452574739E-6
    New Minimum: 8.03

...skipping 7740 bytes...

    7af-3a5f-41e6-b94d-dac963f07700 = 1.000/1.000e+00]
    Orientation rejected. Popping history element from 6.368644623085856, 6.188456611707807, 6.064568031579256, 6.019802188500762
    LBFGS Accumulation History: 3 points
    Removed measurement 7c8b37a8 to history. Total: 4
    th(0)=6.019802188500762;dx=-0.12403071708519904
    Armijo: th(216607.4789019298)=6.924136597663164; dx=8.16308290224632E-6 evalInputDelta=-0.9043344091624022
    Armijo: th(108303.7394509649)=6.643654547631741; dx=1.1280465853065293E-5 evalInputDelta=-0.6238523591309786
    Armijo: th(36101.24648365497)=6.2353436797857285; dx=1.149534039352531E-5 evalInputDelta=-0.21554149128496647
    Armijo: th(9025.311620913742)=6.055995494127274; dx=5.930461219718151E-6 evalInputDelta=-0.036193305626511574
    Armijo: th(1805.0623241827484)=6.0310898795723915; dx=7.379149168841444E-6 evalInputDelta=-0.011287691071629524
    Armijo: th(300.84372069712475)=6.020564459264278; dx=1.1844453552268197E-5 evalInputDelta=-7.622707635164261E-4
    New Minimum: 6.019802188500762 > 6.019499383866787
    WOLF (strong): th(42.97767438530354)=6.019499383866787; dx=1.0654915183908018E-5 evalInputDelta=3.02804633975029E-4
    New Minimum: 6.019499383866787 > 6.019387595355511
    WOLF (strong): th(5.372209298162942)=6.019387595355511; dx=6.380515816961404E-6 evalInputDelta=4.145931452512741E-4
    New Minimum: 6.019387595355511 > 6.0193756353110075
    WOLF (strong): th(0.5969121442403269)=6.0193756353110075; dx=5.814803083396791E-6 evalInputDelta=4.265531897544861E-4
    New Minimum: 6.0193756353110075 > 6.0193744748830795
    WOLF (strong): th(0.05969121442403269)=6.0193744748830795; dx=5.846835385467207E-6 evalInputDelta=4.2771361768245697E-4
    END: th(0.005426474038548426)=6.019621966406703; dx=-0.08453981811166728 evalInputDelta=1.8022209405899048E-4
    Fitness changed from 6.019802188500762 to 6.0193744748830795
    Iteration 11 complete. Error: 6.0193744748830795 Total: 821.0216; Orientation: 1.4651; Line Search: 755.7796
    Final threshold in iteration 11: 6.0193744748830795 (> -Infinity) after 3718.553s (< 3600.000s)
    

Returns:

    6.0193744748830795