LBFGSBOptimizer#
- class empulse.optimizers.LBFGSBOptimizer(max_iter=1000, tolerance=0.0001, max_line_search_steps=50, ftol_scale=64.0)[source]#
Limited-memory BFGS with box constraints (L-BFGS-B) via
scipy.optimize.minimize.This is the default optimizer for
CSLogitClassifier. It is well-suited for smooth objectives and scales to thousands of features.- Parameters:
- max_iterint, default=1000
Maximum number of L-BFGS-B iterations.
- tolerancefloat, default=1e-4
Gradient infinity-norm convergence tolerance (
gtol).- max_line_search_stepsint, default=50
Maximum number of line-search steps per iteration (
maxls).- ftol_scalefloat, default=64.0
Function-value tolerance is set to
ftol_scale * machine_epsilon.
Examples
from empulse.models import CSLogitClassifier from empulse.optimizers import LBFGSBOptimizer model = CSLogitClassifier(optimizer=LBFGSBOptimizer(max_iter=500, tolerance=1e-5))