BasicOptimizer.scala:89 executed in 40.15 seconds (0.384 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: 111106949940600
Reset training subject: 111109731072500
Corrupt weights measurement
LBFGS Accumulation History: 0 points
Constructing line search parameters: GD+Trust
th(0)=-31.933299531857976;dx=-1.2712359234341656E-6
Armijo: th(2.154434690031884)=-31.933299531857976; dx=-1.003753166238881E-6 evalInputDelta=0.0
Armijo: th(1.077217345015942)=-31.933299531857976; dx=-1.0035509513854962E-6 evalInputDelta=0.0
Armijo: th(0.3590724483386473)=-31.933299531857976; dx=-1.0034476493879508E-6 evalInputDelta=0.0
Armijo: th(0.08976811208466183)=-31.933299531857976; dx=-1.0036362697433525E-6 evalInputDelta=0.0
Armijo: th(0.017953622416932366)=-31.933299531857976; dx=-1.0037579033028874E-6 evalInputDelta=0.0
Armijo: th(0.002992270402822061)=-31.933299531857976; dx=-1.00352119503049E-6 evalInputDelta=0.0
END: th(4.2746720040315154E-4)=-31.933299531857976; dx=-1.0034905405101862E-6 evalInputDelta=0.0
Fitness changed from -31.946718931806615 to -31.946718931806615
Static Iteration Total: 29.5084; Orientation: 0.0410; Line Search: 21.4945
Iteration 1 failed. Error: -31.946718931806615
Previous Error: 0.0 -> -31.946718931806615
Retrying iteration 1
Reset training subject: 111136458507200
Corrupt weights measurement
LBFGS Accumulation History: 0 points
th(0)=-31.933299531857976;dx=-1.2715356984403285E-6
END: th(9.20950165399361E-4)=-31.933299531857976; dx=-1.0034678990670388E-6 evalInputDelta=0.0
Fitness changed from -31.946718931806615 to -31.946718931806615
Static Iteration Total: 10.6364; Orientation: 0.0378; Line Search: 5.3717
Iteration 2 failed. Error: -31.946718931806615
Previous Error: 0.0 -> -31.946718931806615
Optimization terminated 2
Final threshold in iteration 2: -31.946718931806615 (> -Infinity) after 40.146s (< 5400.000s)

Returns

    -31.946718931806615