Iteration 1 Iteration 1

Code from BasicOptimizer.scala:88 executed in 649.44 seconds (4.958 gc):

    val lineSearchInstance: LineSearchStrategy = lineSearchFactory
    val trainer = new IterativeTrainer(trainable)
    trainer.setOrientation(orientation())
    trainer.setMonitor(new TrainingMonitor() {
      override def clear(): Unit = trainingMonitor.clear()
  
      override def log(msg: String): Unit = {
        trainingMonitor.log(msg)
        BasicOptimizer.this.log(msg)
      }
  
      override def onStepFail(currentPoint: Step): Boolean = {
        BasicOptimizer.this.onStepFail(trainable.addRef().asInstanceOf[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.addRef().asInstanceOf[Trainable], currentPoint)
        trainingMonitor.onStepComplete(currentPoint)
        super.onStepComplete(currentPoint)
      }
    })
    trainer.setTimeout(trainingMinutes, TimeUnit.MINUTES)
    trainer.setMaxIterations(trainingIterations)
    trainer.setLineSearchFactory((_: CharSequence) => lineSearchInstance)
    trainer.setTerminateThreshold(java.lang.Double.NEGATIVE_INFINITY)
    val result = trainer.run.asInstanceOf[lang.Double]
    trainer.freeRef()
    result

Logging:

    Reset training subject: 11783742773385
    Reset training subject: 11792289913728
    Adding measurement 4a7e52b to history. Total: 0
    LBFGS Accumulation History: 1 points
    Constructing line search parameters: GD+Trust
    th(0)=-0.13745945692062378;dx=-2.249729738979752E-8
    Armijo: th(2.154434690031884)=-0.13745945692062378; dx=-2.2495810282124884E-8 evalInputDelta=0.0
    Armijo: th(1.077217345015942)=-0.137459397315979; dx=-2.2496294438909858E-8 evalInputDelta=-5.9604644775390625E-8
    New Minimum: -0.13745945692062378 > -0.13745954632759094
    WOLFE (weak): th(0.3590724483386473)=-0.13745954632759094; dx=-2.250356967616486E-8 evalInputDelta=8.940696716308594E-8
    WOLFE (weak): th(0.7181448966772946)=-0.13745948672294617; dx=-2.249507289617871E-8 evalInputDelta=2.9802322387695312E-8
    Armijo: th(0.8976811208466182)=-0.13745945692062378; dx=-2.2496360095605073E-8 evalInputDelta=0.0
    Armijo: th(0.8079130087619564)=-0.1374594271183014; dx=-2.2496660880944808E-8 evalInputDelta=-2.9802322387695312E-8
    Armijo: th(0.7630289527196255)=-0.1374594271183014; dx=-2.2503992971814306E-8 evalInputDelta=-2.9802322387695312E-8
    Armijo: th(0.74058692469846)=-0.13745945692062378; dx=-2.2501558773032344E-8 evalInputDelta=0.0
    WOLFE (weak): th(0.7293659106878774)=-0.13745948672294617; dx=-2.2499821840322562E-8 evalInputDelta=2.9802322387695312E-8
    WOLFE (weak): th(0.7349764176931687)=-0.13745948672294617; dx=-2.2376274609026347E-8 evalInputDelta=2.9802322387695312E-8
    WOLFE (weak): th(0.7377816711958143)=-0.13745948672294617; dx=-2.2502571314193907E-8 evalInputDelta=2.9802322387695312E-8
    Armijo: th(0.7391842979471371)=-0.1374594271183014; dx=-2.250340418148993E-8 evalInputDelta=-2.9802322387695312E-8
    WOLFE (weak): th(0.7384829845714758)=-0.13745948672294617; dx=-2.249697347425734E-8 evalInputDelta=2.9802322387695312E-8
    Armijo: th(0.7388336412593064)=-0.1374594271183014; dx=-2.2501047818051287E-8 evalInputDelta=-2.9802322387695312E-8
    Armijo: th(0.7386583129153911)=-0.13745945692062378; dx=-2.2494524510275194E-8 evalInputDelta=0.0
    Armijo: th(0.7385706487434334)=-0.13

...skipping 5022 bytes...

    4; dx=-2.2482153504771333E-8 evalInputDelta=0.0
    Armijo: th(3.535149870168401E-5)=-0.13745945692062378; dx=-2.2477153291162198E-8 evalInputDelta=-8.940696716308594E-8
    Armijo: th(3.458298786034305E-5)=-0.13745945692062378; dx=-2.247834074120376E-8 evalInputDelta=-8.940696716308594E-8
    WOLFE (weak): th(3.419873243967257E-5)=-0.13745954632759094; dx=-2.2479911555504246E-8 evalInputDelta=0.0
    Armijo: th(3.439086015000781E-5)=-0.13745945692062378; dx=-2.246970560768058E-8 evalInputDelta=-8.940696716308594E-8
    Armijo: th(3.4294796294840187E-5)=-0.13745945692062378; dx=-2.248750644039361E-8 evalInputDelta=-8.940696716308594E-8
    Armijo: th(3.4246764367256376E-5)=-0.13745945692062378; dx=-2.247819354017129E-8 evalInputDelta=-8.940696716308594E-8
    WOLFE (weak): th(3.422274840346447E-5)=-0.13745954632759094; dx=-2.247538096119913E-8 evalInputDelta=0.0
    WOLFE (weak): th(3.4234756385360424E-5)=-0.13745954632759094; dx=-2.2474522055597523E-8 evalInputDelta=0.0
    WOLFE (weak): th(3.4240760376308397E-5)=-0.13745954632759094; dx=-2.2477994161770746E-8 evalInputDelta=0.0
    WOLFE (weak): th(3.4243762371782386E-5)=-0.13745954632759094; dx=-2.247894781885975E-8 evalInputDelta=0.0
    Armijo: th(3.4245263369519385E-5)=-0.13745945692062378; dx=-2.2477469377112036E-8 evalInputDelta=-8.940696716308594E-8
    Armijo: th(3.424451287065089E-5)=-0.13745945692062378; dx=-2.2474923300201248E-8 evalInputDelta=-8.940696716308594E-8
    WOLFE (weak): th(3.4244137621216634E-5)=-0.13745954632759094; dx=-2.247639727038702E-8 evalInputDelta=0.0
    Armijo: th(3.424432524593376E-5)=-0.13745945692062378; dx=-2.2469381528890916E-8 evalInputDelta=-8.940696716308594E-8
    mu ~= nu (3.4244137621216634E-5): th(0.0)=-0.13745954632759094
    Fitness changed from -0.13745954632759094 to -0.13745954632759094
    Static Iteration Total: 200.1468; Orientation: 0.0351; Line Search: 183.6126
    Iteration 3 failed. Error: -0.13745954632759094
    Previous Error: 0.0 -> -0.13745954632759094
    Optimization terminated 3
    Final threshold in iteration 3: -0.13745954632759094 (> -Infinity) after 649.435s (< 3600.000s)
    

Returns:

    -0.13745954632759094