Code from BasicOptimizer.scala:75 executed in 3792.24 seconds (205.960 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]
Reset training subject: 1352633879412000
Reset training subject: 1352850188922800
Adding measurement 1b2213b2 to history. Total: 0
LBFGS Accumulation History: 1 points
Constructing line search parameters: GD+Trust
th(0)=28.20346963405609;dx=-3.061351766516329E-6
New Minimum: 28.20346963405609 > 28.203467294573784
WOLFE (weak): th(2.154434690031884)=28.203467294573784; dx=-3.057615370820658E-6 evalInputDelta=2.339482307434082E-6
New Minimum: 28.203467294573784 > 28.20346314460039
WOLFE (weak): th(4.308869380063768)=28.20346314460039; dx=-3.0576142389575487E-6 evalInputDelta=6.489455699920654E-6
New Minimum: 28.20346314460039 > 28.20345101505518
WOLFE (weak): th(12.926608140191302)=28.20345101505518; dx=-3.057610769349234E-6 evalInputDelta=1.8619000911712646E-5
New Minimum: 28.20345101505518 > 28.203404113650322
WOLFE (weak): th(51.70643256076521)=28.203404113650322; dx=-3.057603592791121E-6 evalInputDelta=6.552040576934814E-5
New Minimum: 28.203404113650322 > 28.20314610749483
WOLFE (weak): th(258.53216280382605)=28.20314610749483; dx=-3.057572716943626E-6 evalInputDelta=3.235265612602234E-4
New Minimum: 28.20314610749483 > 28.201530531048775
WOLFE (weak): th(1551.1929768229563)=28.201530531048775; dx=-3.0573541253637787E-6 evalInputDelta=0.0019391030073165894
New Minimum: 28.201530531048775 > 28.189899116754532
WOLFE (weak): th(10858.350837760694)=28.189899116754532; dx=-3.055742513623249E-6 evalInputDelta=0.013570517301559448
New Minimum: 28.189899116754532 > 28.095203816890717
WOLFE (weak): th(86866.80670208555)=28.095203816890717; dx=-3.0423139854892245E-6 evalInputDelta=0.10826581716537476
New Minimum: 28.095203816890717 > 27.254481613636017
WOLFE (weak): th(781801.26031877)=27.254481613636017; dx=-2.9167657599434886E-6 evalInputDelta=0.9489880204200745
New Minimum: 27.254481613636017 > 21.709362603724003
END: th(7818012.6031877)=21.709362603724003; dx=-1.3725310642768724E-6 evalInputDelta=6.4941070303320885
Fitness changed from 28.20346963405609 to 21.709362603724003
Iteration 1 complete. Error: 21.709362603724003 Total: 3131.0696; Orientation: 0.6507; Line Search: 2477.3592
<a id="p-3"></a>Iteration 1
<a id="p-2"></a>![Iteration 1](etc/476b4c3f-bc25-4f4c-b65a-1d04c7173553.jpg)
Adding measurement 62099f75 to history. Total: 1
LBFGS Accumulation History: 2 points
th(0)=21.709362603724003;dx=-1.5475849143645659E-6
New Minimum: 21.709362603724003 > 19.14132234454155
END: th(1.684339755941405E7)=19.14132234454155; dx=-2.111786615316279E-7 evalInputDelta=2.568040259182453
Fitness changed from 21.709362603724003 to 19.14132234454155
Iteration 2 complete. Error: 19.14132234454155 Total: 660.5537; Orientation: 0.6742; Line Search: 441.4999
<a id="p-5"></a>Iteration 2
<a id="p-4"></a>![Iteration 2](etc/d3a5220d-e5a6-4cfd-989a-a073214a40e6.jpg)
Final threshold in iteration 2: 19.14132234454155 (> -Infinity) after 3792.235s (< 3600.000s)
19.14132234454155