[−][src]Struct liblbfgs::LbfgsParam
L-BFGS optimization parameters.
Call lbfgs_parameter_t::default() function to initialize parameters to the default values.
Fields
m: usize
The number of corrections to approximate the inverse hessian matrix.
The L-BFGS routine stores the computation results of previous \ref m iterations to approximate the inverse hessian matrix of the current iteration. This parameter controls the size of the limited memories (corrections). The default value is 6. Values less than 3 are not recommended. Large values will result in excessive computing time.
epsilon: f64
Epsilon for convergence test.
This parameter determines the accuracy with which the solution is to be found. A minimization terminates when
||g|| < epsilon * max(1, ||x||),
where ||.|| denotes the Euclidean (L2) norm. The default value is \c 1e-5.
past: usize
Distance for delta-based convergence test.
This parameter determines the distance, in iterations, to compute the rate of decrease of the objective function. If the value of this parameter is zero, the library does not perform the delta-based convergence test.
The default value is 0.
delta: f64
Delta for convergence test.
This parameter determines the minimum rate of decrease of the objective function. The library stops iterations when the following condition is met: |f' - f| / f < delta, where f' is the objective value of past iterations ago, and f is the objective value of the current iteration. The default value is 1e-5.
max_iterations: usize
The maximum number of LBFGS iterations.
The lbfgs optimization terminates when the iteration count exceedes this parameter.
Setting this parameter to zero continues an optimization process until a convergence or error. The default value is 0.
max_evaluations: usize
The maximum allowed number of evaluations of function value and gradients. This number could be larger than max_iterations since line search procedure may involve one or more evaluations.
Setting this parameter to zero continues an optimization process until a convergence or error. The default value is 0.
linesearch: LineSearch
The line search options.
This parameter specifies a line search algorithm to be used by the L-BFGS routine.
orthantwise: bool
Enable OWL-QN regulation or not
owlqn: Orthantwise
initial_inverse_hessian: f64
A factor for scaling initial step size.
max_step_size: f64
The maximum allowed step size for each optimization step, useful for preventing wild step.
damping: bool
Powell damping
Trait Implementations
impl Clone for LbfgsParam
[src]
fn clone(&self) -> LbfgsParam
[src]
fn clone_from(&mut self, source: &Self)
1.0.0[src]
impl Copy for LbfgsParam
[src]
impl Debug for LbfgsParam
[src]
impl Default for LbfgsParam
[src]
Auto Trait Implementations
impl RefUnwindSafe for LbfgsParam
impl Send for LbfgsParam
impl Sync for LbfgsParam
impl Unpin for LbfgsParam
impl UnwindSafe for LbfgsParam
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
pub fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T> ToOwned for T where
T: Clone,
[src]
T: Clone,
type Owned = T
The resulting type after obtaining ownership.
pub fn to_owned(&self) -> T
[src]
pub fn clone_into(&self, target: &mut T)
[src]
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
pub fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,