Code from BasicOptimizer.scala:88 executed in 2480.52 seconds (15.602 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
Reset training subject: 5175139875550
Reset training subject: 5368825205331
Adding measurement 3208586c to history. Total: 0
LBFGS Accumulation History: 1 points
Constructing line search parameters: GD+Trust
th(0)=16.342115446925163;dx=-8.38225163142015E-7
New Minimum: 16.342115446925163 > 16.342112824320793
WOLFE (weak): th(2.154434690031884)=16.342112824320793; dx=-8.469088344253367E-7 evalInputDelta=2.6226043701171875E-6
New Minimum: 16.342112824320793 > 16.34210839867592
WOLFE (weak): th(4.308869380063768)=16.34210839867592; dx=-8.258542671736102E-7 evalInputDelta=7.048249244689941E-6
New Minimum: 16.34210839867592 > 16.34209442138672
WOLFE (weak): th(12.926608140191302)=16.34209442138672; dx=-8.446361828521343E-7 evalInputDelta=2.1025538444519043E-5
New Minimum: 16.34209442138672 > 16.34203127026558
WOLFE (weak): th(51.70643256076521)=16.34203127026558; dx=-8.379378279111838E-7 evalInputDelta=8.417665958404541E-5
New Minimum: 16.34203127026558 > 16.34169352054596
WOLFE (weak): th(258.53216280382605)=16.34169352054596; dx=-8.251221887736883E-7 evalInputDelta=4.219263792037964E-4
New Minimum: 16.34169352054596 > 16.33958339691162
WOLFE (weak): th(1551.1929768229563)=16.33958339691162; dx=-8.297308155063719E-7 evalInputDelta=0.0025320500135421753
New Minimum: 16.33958339691162 > 16.324400156736374
WOLFE (weak): th(10858.350837760694)=16.324400156736374; dx=-8.31064998752032E-7 evalInputDelta=0.017715290188789368
New Minimum: 16.324400156736374 > 16.200902938842773
WOLFE (weak): th(86866.80670208555)=16.200902938842773; dx=-8.357871899623625E-7 evalInputDelta=0.14121250808238983
New Minimum: 16.200902938842773 > 15.117803409695625
END: th(781801.26031877)=15.117803409695625; dx=-7.46979424594882E-7 evalInputDelta=1.224312037229538
Fitness changed from 16.342115446925163 to 15.117803409695625
Iteration 1 complete. Error: 15.117803409695625 Total: 2478.0423; Orientation: 0.1729; Line Search: 1905.4090
<a id="p-3"></a>Iteration 1
<a id="p-2"></a>![Iteration 1](etc/3b6180e1-a5fc-45d5-9c72-9e9782ff7aeb.jpg)
Final threshold in iteration 1: 15.117803409695625 (> -Infinity) after 2480.522s (< 1800.000s)
15.117803409695625