mne_denoise.dss.iterative_dss_one#
- mne_denoise.dss.iterative_dss_one(X_whitened: ndarray, denoiser: Callable[[ndarray], ndarray], *, w_init: ndarray | None = None, max_iter: int = 100, tol: float = 1e-06, alpha: float | Callable[[ndarray], float] | None = None, beta: float | Callable[[ndarray], float] | None = None, gamma: float | Callable[[ndarray, ndarray, int], float] | None = None, random_state: int | Generator | None = None, callback=None, verbose: bool | str | int | None = None) tuple[ndarray, ndarray, int, bool][source]#
Extract one DSS component by fixed-point iteration.
- Parameters:
- X_whitenedndarray, shape (n_features, n_times)
Whitened data matrix.
- denoisercallable
Nonlinear source transformation.
- w_initndarray, shape (n_features,), or None, default=None
Initial unit-vector estimate.
Noneuses random initialization.- max_iterint, default=100
Maximum number of iterations.
- tolfloat, default=1e-6
Sign-insensitive convergence tolerance.
- alphafloat, callable, or None, default=None
Optional source-normalization factor.
- betafloat, callable, or None, default=None
Optional Newton/fixed-point correction.
- gammafloat, callable, or None, default=None
Optional relaxation factor.
- random_stateint, numpy.random.Generator, or None, default=None
Random state for initialization.
- callbackcallable or None, default=None
Synchronous progress callback receiving
ProgressEventobjects.- verbosebool, str, int, or None, default=None
Logging level.
- Returns:
- wndarray, shape (n_features,)
Unit-norm spatial filter.
- sourcendarray, shape (n_times,)
Extracted source.
- n_iterint
Number of iterations performed.
- convergedbool
Whether the tolerance was reached.
Notes
Convergence compares the absolute dot product of successive unit filters, so a sign flip is treated as no change. This follows the iterative DSS formulation [1].
References