optax.ZoomLinesearchInfo#

class optax.ZoomLinesearchInfo(num_linesearch_steps: jax.typing.ArrayLike, decrease_error: jax.typing.ArrayLike, curvature_error: jax.typing.ArrayLike)[source]#

Information about the zoom linesearch step, exposed for debugging.

A positive curvature error is not stringent. It can be due to a maximal learning rate too small. A positive value in the sufficient curvature error is more problematic as it means that the algorithm may not be guaranteed to produce monotonically decreasing values. Consider using verbose=True in scale_by_zoom_linesearch() for additional failure diagnostics if the linesearch fails.

num_linesearch_steps#

number of linesearch steps

Type:

jax.jaxlib._jax.Array | numpy.ndarray | numpy.bool | numpy.number | bool | int | float | complex

decrease_error#

sufficient decrease error. A positive value indicates that the linesearch failed to find a stepsize that ensures a sufficient decrease. A null value indicates it succeeded in finding such a stepsize.

Type:

jax.jaxlib._jax.Array | numpy.ndarray | numpy.bool | numpy.number | bool | int | float | complex

curvature_error#

small curvature error. A positive value indicates that the linesearch failed to find a stepsize that ensures a small curvature. A null value indicates it succeeded in finding such a stepsize.

Type:

jax.jaxlib._jax.Array | numpy.ndarray | numpy.bool | numpy.number | bool | int | float | complex