ZJU-FAST-Lab/LBFGS-Lite

-1007 error

xiaoyuanzh opened this issue · 5 comments

Solver error is refining, the line search became smaller than mon step.
How to figure that out

I once encountered -1007 error, the reason was that the gradient norm is up to 10^14 while the min_step is set as around 10^-12. Please notice that the min_step is the RELATIVE size, which means the actual minimum step is 10^(14-12)=10^2, which is indeed quite large. Therefore, this error may occur when the problem is badly scaled. One advice is to check the possible maximum norm (like 10^14) of the gradient, and the expected minimum actual step (like 10^-2), then just set the min_step (like 10^(-2-14) = 10^-16) accordingly.
If this is not the reason, I think the reason can only be found by inspect the function itself.

The norm of graident i only around 58

Could you provide some details about your objective function?

The -1007 also happens when the problem is also converged.ans the gradient is rather small(about 10)

It is weird. I'm afraid that no useful information can be provided. I will write a function to do consistency check when I am not busy. With this function, many troubles can be avoided.