[Insight-users] Termination condition for the optimizer
Sharath Venkatesha
sharath20284 at yahoo.com
Tue Jul 7 14:35:53 EDT 2009
Hi,
I am experimenting with GradientDescentStepOptimizer with Mutual Information Histogram metric, using affine transformation. I observe that the optimizer does not stop when the value of the metric is peaked. I have a couple of questions.
(a) The metric I am using is to be maximized, and hence I expect the Optimizer to terminate at an iteration where the metric value is maximum for the given range. Am I correct? I do get a good bell shaped curve for the metric values. Is it correct to put my own stopping condition at this place? I observe that the change in the metric value, between iterations reduces greatly.
(b) The Gradient Magnitude value ( sigma( (gradient value)^2) over all the dimensions) does not have a defined behavior. I expect that this value, should be minimum when the metric peaks, but observe that the value gradually decreases, over the number of iterations. Can you please explain it?
(c) Can you please suggest any other optimizer, that I can try? ( I have tried GradientStep, GradientDescent and Amoeba and got different, but incorrect results).
(d) I am sure having a problem with the step size( for GradientDescentStep). On low values, I reach the max number of iterations and fail to get the optimal, and on high values, I go way off the direction. Any suggestions?
(e) Relaxation Factor: I see that when the sign of the gradient changes (measured by the value of the scalarProduct in itkRegularStepGradientDescentBaseOptimizer.cxx), the step size is multiplied with the relaxation factor, but at this step, we have already crossed the peak, and going downhill.. but we do not change the direction. Am I missing something?
Below is the log of my metric values
MaximumStepLength : 0.1
MinimumStepLength : 0.0001
.....
Format:
Gradient_Magnitude Tolerance_value Current_step_Length
Iter_Number Metric_Value [Affine Parameters] Angle_in_Degrees Change_in_Metric_value Change_in_angle
.......
....
GradMag = 7.494 Tol =0.0001 StepLen = 0.1
31 0.1749 [0.5827, -0.06824, 0.06624, 0.6027, -856.8, -931.7] Angle:6.473 Metr:0.0005967 ADiff:-0.02686
GradMag = 8.051 Tol =0.0001 StepLen = 0.1
32 0.1757 [0.5827, -0.06827, 0.06578, 0.6035, -856.7, -931.7] Angle:6.448 Metr:0.0007982 ADiff:-0.02441
GradMag = 7.914 Tol =0.0001 StepLen = 0.1
33 0.1766 [0.5826, -0.06834, 0.06529, 0.6043, -856.6, -931.7] Angle:6.423 Metr:0.0009113 ADiff:-0.02468
GradMag = 7.315 Tol =0.0001 StepLen = 0.1
34 0.1773 [0.5826, -0.06841, 0.06477, 0.6052, -856.5, -931.7] Angle:6.398 Metr:0.0006155 ADiff:-0.02567
GradMag = 7.99 Tol =0.0001 StepLen = 0.1
35 0.1778 [0.5827, -0.06849, 0.06428, 0.606, -856.4, -931.6] Angle:6.374 Metr:0.0004911 ADiff:-0.02425
GradMag = 7.949 Tol =0.0001 StepLen = 0.1
36 0.1783 [0.5827, -0.06857, 0.06378, 0.6068, -856.4, -931.6] Angle:6.349 Metr:0.000521 ADiff:-0.02433
GradMag = 7.78 Tol =0.0001 StepLen = 0.1
37 0.1787 [0.5827, -0.06868, 0.06327, 0.6076, -856.3, -931.5] Angle:6.326 Metr:0.0004448 ADiff:-0.02362
GradMag = 7.599 Tol =0.0001 StepLen = 0.1
38 0.179 [0.5828, -0.06881, 0.06276, 0.6085, -856.2, -931.5] Angle:6.302 Metr:0.0003036 ADiff:-0.02324
GradMag = 7.277 Tol =0.0001 StepLen = 0.1
39 0.1795 [0.5829, -0.06896, 0.0622, 0.6093, -856.1, -931.5] Angle:6.278 Metr:0.0004738 ADiff:-0.02439
GradMag = 8.089 Tol =0.0001 StepLen = 0.1
40 0.1797 [0.5829, -0.0691, 0.06171, 0.6101, -856, -931.4] Angle:6.257 Metr:0.0002499 ADiff:-0.02088
GradMag = 8.046 Tol =0.0001 StepLen = 0.1
41 0.18 [0.583, -0.06926, 0.06122, 0.6108, -855.9, -931.4] Angle:6.237 Metr:0.0002045 ADiff:-0.01961
GradMag = 8.101 Tol =0.0001 StepLen = 0.1
42 0.1802 [0.5831, -0.06943, 0.06075, 0.6116, -855.8, -931.4] Angle:6.219 Metr:0.0002648 ADiff:-0.01865
GradMag = 7.21 Tol =0.0001 StepLen = 0.1
43 0.1803 [0.5831, -0.06964, 0.06021, 0.6124, -855.7, -931.3] Angle:6.199 Metr:6.091e-005 ADiff:-0.02007
GradMag = 8.228 Tol =0.0001 StepLen = 0.1
44 0.1805 [0.5832, -0.06986, 0.05974, 0.6131, -855.6, -931.3] Angle:6.183 Metr:0.0002261 ADiff:-0.01615
GradMag = 7.485 Tol =0.0001 StepLen = 0.1
45 0.1808 [0.5833, -0.07012, 0.05922, 0.6139, -855.5, -931.2] Angle:6.166 Metr:0.0002553 ADiff:-0.01641
GradMag = 5.909 Tol =0.0001 StepLen = 0.1
46 0.1806 [0.5834, -0.07048, 0.05857, 0.6148, -855.4, -931.2] Angle:6.147 Metr:-0.0002007 ADiff:-0.01916
GradMag = 6.526 Tol =0.0001 StepLen = 0.1
47 0.1803 [0.5835, -0.07083, 0.058, 0.6156, -855.3, -931.1] Angle:6.132 Metr:-0.000293 ADiff:-0.01502
GradMag = 7.555 Tol =0.0001 StepLen = 0.1
48 0.1803 [0.5836, -0.07113, 0.05752, 0.6163, -855.3, -931.1] Angle:6.12 Metr:3.284e-006 ADiff:-0.01187
GradMag = 6.259 Tol =0.0001 StepLen = 0.1
49 0.1803 [0.5837, -0.0715, 0.05695, 0.617, -855.2, -931.1] Angle:6.106 Metr:-3.978e-006 ADiff:-0.01394
GradMag = 6.12 Tol =0.0001 StepLen = 0.1
50 0.1803 [0.5837, -0.07192, 0.05638, 0.6177, -855.1, -931] Angle:6.095 Metr:6.792e-005 ADiff:-0.01128
GradMag = 5.317 Tol =0.0001 StepLen = 0.1
51 0.1803 [0.5839, -0.07242, 0.05577, 0.6185, -855, -931] Angle:6.086 Metr:-2.758e-005 ADiff:-0.009191
GradMag = 5.665 Tol =0.0001 StepLen = 0.1
52 0.1802 [0.584, -0.07289, 0.05525, 0.6191, -854.9, -930.9] Angle:6.079 Metr:-0.0001544 ADiff:-0.006347
GradMag = 5.083 Tol =0.0001 StepLen = 0.1
53 0.1802 [0.5842, -0.07338, 0.05469, 0.6198, -854.8, -930.9] Angle:6.072 Metr:3.066e-006 ADiff:-0.007603
GradMag = 4.135 Tol =0.0001 StepLen = 0.1
54 0.1802 [0.5844, -0.07398, 0.05404, 0.6206, -854.7, -930.8] Angle:6.064 Metr:2.267e-005 ADiff:-0.007948
GradMag = 3.486 Tol =0.0001 StepLen = 0.1
55 0.1797 [0.5848, -0.07466, 0.05324, 0.6215, -854.7, -930.8] Angle:6.052 Metr:-0.0005252 ADiff:-0.01135
GradMag = 4.202 Tol =0.0001 StepLen = 0.1
56 0.1792 [0.585, -0.07522, 0.05258, 0.6222, -854.6, -930.7] Angle:6.043 Metr:-0.0004813 ADiff:-0.009771
GradMag = 3.866 Tol =0.0001 StepLen = 0.1
57 0.1789 [0.5853, -0.07577, 0.05185, 0.6229, -854.5, -930.7] Angle:6.029 Metr:-0.0002625 ADiff:-0.01337
GradMag = 3.972 Tol =0.0001 StepLen = 0.1
58 0.1786 [0.5856, -0.07628, 0.05115, 0.6235, -854.4, -930.6] Angle:6.017 Metr:-0.0003571 ADiff:-0.01262
GradMag = 4.536 Tol =0.0001 StepLen = 0.1
59 0.1781 [0.5858, -0.07669, 0.05057, 0.6239, -854.3, -930.5] Angle:6.005 Metr:-0.0004517 ADiff:-0.0113
GradMag = 3.345 Tol =0.0001 StepLen = 0.1
60 0.1777 [0.5861, -0.07723, 0.04978, 0.6244, -854.3, -930.4] Angle:5.99 Metr:-0.000372 ADiff:-0.0155
-....
Thanks for any clues,
Sharath Venkatesha
More information about the Insight-users
mailing list