pyeeg.solvers.ScipyRobustSolver

class pyeeg.solvers.ScipyRobustSolver(scale=None, max_nfev=200, ftol=1e-08, xtol=1e-08, gtol=1e-08, verbose=False)

Fit Cauchy-loss regression with SciPy’s nonlinear least-squares solver.

This reference path intentionally handles only unregularized regression. It is useful for small dense problems and for validating the IRLS path.

Parameters:
  • scale (float or None, optional) – Fixed scale for the Cauchy loss. If None, estimated from residuals via _robust_scale(). Default is None.

  • max_nfev (int, optional) – Maximum number of function evaluations per channel passed to scipy.optimize.least_squares. Default is 200.

  • ftol (float, optional) – Function tolerance for least_squares. Default is 1e-8.

  • xtol (float, optional) – Variable tolerance for least_squares. Default is 1e-8.

  • gtol (float, optional) – Gradient tolerance for least_squares. Default is 1e-8.

  • verbose (bool, optional) – Whether to print per-channel solver progress. Default is False.

Methods

ScipyRobustSolver.solve(X, y[, alpha, M])

Fit the robust Cauchy-loss regression and return coefficients.