Pith. sign in

REVIEW 4 major objections 6 minor 45 references

AMICA-Python reproduces the Fortran AMICA reference to a median relative log-likelihood difference of 1.07e-8 while running faster.

Reviewed by Pith at T0; open to challenge. T0 means a machine referee read the full paper against a public rubric. the ladder, T0–T4 →

T0 review · deepseek-v4-flash

2026-08-01 14:58 UTC pith:UWM6BAKD

load-bearing objection A useful, well-validated Python port of AMICA; the equivalence claim is broader than the evidence, and the DAAREM speedup is overstated. the 4 major comments →

arxiv 2607.18568 v1 pith:UWM6BAKD submitted 2026-07-20 cs.LG

AMICA-Python: Adaptive Mixture Independent Component Analysis with Anderson Acceleration

classification cs.LG
keywords independent component analysisEEGAMICAPython implementationblind source separationgeneralized Gaussian mixtureAnderson accelerationnumerical equivalence
verification ladder T0 review T1 audit T2 compute T3 formal T4 reserved

The pith

A machine-rendered reading of the paper's core claim, the machinery that carries it, and where it could break.

AMICA-Python is a new implementation of the adaptive mixture independent component analysis algorithm for blind source separation, written in Python and designed to fit into standard Python data-analysis workflows. The paper claims that, on 14 EEG recordings, it reproduces the reference Fortran implementation to a median relative log-likelihood difference of 1.07e-8, and that both the default implementation and an optional Anderson-accelerated variant are faster than Fortran (17.7% and 34.1% faster, respectively). If those claims hold, the algorithm that many EEG researchers regard as one of the strongest ICA methods becomes usable inside Python pipelines without sacrificing numerical fidelity, and with a speed-up option that cuts fitting time by about a third.

Core claim

AMICA-Python numerically matches the canonical Fortran AMICA program: across 14 EEG recordings, the median final normalized log-likelihood is 11.57285 for both implementations, with a median relative absolute difference of 1.07e-8. Re-running a previously published comparison of mutual information reduction and source dipolarity places both the standard and accelerated Python variants in the same high-performing region as the original AMICA, with near-dipolar component percentages around 29–31%. Default AMICA-Python was faster than Fortran on all 14 recordings and the Anderson-accelerated variant on 13 of 14, so the claim is that accessibility and speed are gained without changing the decomp

What carries the argument

The load-bearing object is AMICA's adaptive source-density model: each recovered source is represented as a weighted mixture of generalized-Gaussian densities, with location, inverse scale, shape, and mixture weight all learned jointly with the unmixing matrix. Each iteration computes per-mixture log-densities, uses a log-sum-exp collapse for the log-likelihood and a softmax along the mixture axis for responsibilities, then updates density parameters and the unmixing matrix with natural-gradient/Newton steps. The speed-up mechanism is damped Anderson acceleration with restarts and monotonicity control, which extrapolates the next iterate from recent fixed-point residuals through a ridge-regu

Load-bearing premise

The equivalence claim assumes that the reduced Python API, with its chosen defaults, maps exactly onto the Fortran program's full parameter set under the benchmark's 'equivalent parameters' setup; that mapping is never explicitly demonstrated, so the close agreement over 14 recordings might be dataset-specific rather than guaranteed by construction.

What would settle it

Run both implementations on more than 14 diverse EEG recordings plus synthetic mixtures with known source geometry, this time without seeding Python with Fortran's initial weights, and compare both final normalized log-likelihood and permutation-matched source correlations; a median relative log-likelihood gap above ~1e-6 or a median component correlation below ~0.999 would refute the claim of practical numerical equivalence.

Watch this falsifier — get emailed when new claim-graph text bears on it.

If this is right

  • EEG researchers who previously had to drive a Fortran executable through a separate EEG analysis environment can now obtain the same decomposition in Python, removing a major practical barrier to adopting AMICA.
  • Because the default implementation was faster than Fortran on every benchmarked recording, switching to the Python port should not cost runtime.
  • The accelerated variant cuts wall time to about two-thirds of Fortran on average, with only a ~6e-6 relative log-likelihood difference, making it attractive for large or repeated fits.
  • The replicated mutual-information and dipolarity results indicate that the Python port preserves the empirical properties that made AMICA popular for EEG source separation.

Where Pith is reading between the lines

These are editorial extensions of the paper, not claims the author makes directly.

  • A direct comparison of recovered source components (not just final log-likelihood) across recordings would strengthen the equivalence claim, since near-equal likelihoods do not by themselves guarantee the same sources up to permutation and scaling.
  • The paper benchmarks the simplified Python API's defaults; a systematic sweep over the Fortran program's 86 parameters on synthetic mixtures would reveal whether any unexposed setting leads to divergence between the two implementations.
  • The Anderson acceleration speedup is dataset-dependent (one recording was over 2x slower when accelerated); an adaptive controller that turns acceleration on or off based on observed residual behavior could make the gain more dependable.
  • If the source-density estimator is made modular, as the paper suggests as a future step, AMICA could be tested against nonparametric density families, which may improve separation for sources that generalized Gaussians describe poorly.

Editorial analysis

A structured set of objections, weighed in public.

Desk editor's note, referee report, simulated authors' rebuttal, and a circularity audit.

Referee Report

4 major / 6 minor

Summary. The paper presents AMICA-Python, a reimplementation of the AMICA blind-source-separation algorithm in Python using PyTorch, with a scikit-learn-conformant API, batch processing, and an optional Anderson-acceleration (DAAREM) mode. The authors benchmark AMICA-Python against the canonical Fortran AMICA on 14 open EEG recordings, using matched initial conditions (Fortran-saved W, β, μ) and 'equivalent parameters'. They report median final normalized log-likelihood of 11.57285 for both implementations, a median relative absolute difference of 1.07×10⁻⁸, and faster wall-clock runtime (82.3% of Fortran for standard EM, 65.9% with DAAREM). They also replicate the Delorme et al. mutual-information/dipolarity comparison, placing AMICA-Python in the same region as the original AMICA. The paper claims that AMICA-Python 'reproduces the reference implementation to high numerical precision' and that DAAREM 'dramatically reduces' time to convergence.

Significance. If the numerical-equivalence claim is supported, this is a valuable software contribution: AMICA has been a MATLAB/Fortran-only tool, and a maintained, tested, scikit-learn-compatible Python implementation would substantially lower access barriers for EEG pipelines and for algorithm development. The manuscript's strengths include the matched-initialization protocol, which avoids circularity in the benchmark; the replication of the Delorme analysis using the original MATLAB/DIPFIT scripts; the provision of reproducible benchmarks with pinned commit hashes; and the integration of unit tests in CI. The runtime comparisons are also meaningful, with per-dataset detail. However, the central claim of 'reproducing the reference implementation' is presently stronger than the evidence: the equivalence of the reduced Python API to the 86-parameter Fortran API is asserted rather than demonstrated, and iterations-count mismatches in the benchmark show the implementations are not behaviorally identical in all settings.

major comments (4)
  1. [Methods, 'Benchmark Analysis'] The statement that both implementations 'were run using equivalent parameters' is not substantiated. The Fortran program exposes 86 tunable parameters; the Python API exposes only a handful, with 'sensible default values' for the rest. No mapping from Python defaults to Fortran parameters is provided, and the values of unexposed parameters (e.g., regularization, update-schedule choices, Newton-step settings, convergence tolerances) are never listed. The central numerical-agreement claim depends on this equivalence. Without the mapping, the observed agreement on 14 recordings with matched initial conditions could be specific to the benchmark configuration rather than evidence of general algorithmic equivalence. The authors should either provide a full parameter mapping and demonstrate agreement across a broader configuration space, or explicitly scope the claim to the tested default confi
  2. [Results, Table 3] The benchmark shows iteration-count mismatches under 'equivalent parameters': jo74 (897 vs. 998), ke70 (1306 vs. 1106), and kb77 (906 vs. 873). Additionally, gv84 hits the 2000-iteration cap with a |ΔLL| of 3.80e-5, which is roughly three orders of magnitude larger than the median relative difference. These mismatches indicate differences in convergence checks, update scheduling, or default tolerances. The paper does not explain them. This undermines the assertion that AMICA-Python is behaviorally identical to the Fortran implementation; at minimum, the authors should explain these differences and reconcile them with the 'equivalent parameters' claim, or temper the reproduction claim to 'close agreement on final likelihood under matched initial conditions'.
  3. [Abstract and Discussion] The abstract claims that AMICA-Python 'reproduces the reference implementation to high numerical precision.' The evidence supports close agreement on final normalized log-likelihoods for the 14 tested recordings under matched initializations, but not algorithmic equivalence across the parameter space. Given the missing parameter mapping and the iteration-count deviations, the claim should be scoped to the benchmark configuration, or the authors should provide additional validation (e.g., parameter sweeps, random initializations) to justify the stronger reproduction claim.
  4. [Results, DAAREM runtime] The abstract states that the Anderson-accelerated variant 'dramatically reduce[s] the time to convergence,' but Table 5 shows it is slower than standard EM on ds76 (ratio 2.024), and Table 4 shows it is slower than Fortran on ds76 (ratio 1.416). The Results section does acknowledge that 'DAAREM was not uniformly faster,' but the abstract and the initial framing of the contribution should reflect this variability. The authors should report the distribution of runtime ratios (e.g., median and range) and temper the language to 'can reduce time for most datasets' rather than implying uniform dramatic gains.
minor comments (6)
  1. [Table 4 caption] The caption contains a typo: 'accelleration' should be 'acceleration'; also 'Py-DAAREM accelleration' in the table title.
  2. [Global] The manuscript has several typos and grammatical issues: 'official', 'efficient', 'inefficient', 'discription', 'diretion', 'implemenations', and a stray 's' at the end of 'R2 = 0.962.s'. A careful proofreading pass is needed.
  3. [Acknowledgements] The Acknowledgments section contains placeholder text: 'placeholder for funding, institutional support, and project acknowledgements.' This must be filled before submission.
  4. [References] Reference [26] is a placeholder ('Placeholder Journal'), and the bibliography contains a duplicate: Walker and Ni's Anderson acceleration paper appears as both [2] and [43]. The duplicate should be removed and the placeholder completed.
  5. [Methods, 'AMICA-Python software'] The text says benchmark results and scripts are 'available at the links below,' but no URLs appear in the manuscript text. The repository links should be included explicitly, not only the commit hashes in Table 2.
  6. [Methods, parameter API] Because the paper argues that a simplified API is an improvement, a table listing the Python estimator's parameters and their default values, with a mapping to the corresponding Fortran parameters, would greatly aid reproducibility and would also address the main concern raised above. At minimum, the default values for convergence thresholds and DAAREM hyperparameters (order m, damping schedule) should be stated.

Circularity Check

0 steps flagged

No significant circularity: the numerical agreement is a measured outcome against an external Fortran reference, not a constructed identity.

full rationale

AMICA-Python's central numerical claim is validated against the external SCCN Fortran implementation, not against its own outputs. The benchmark uses matched initial conditions ('the initial unmixing matrix weights and density parameters ... were saved from the Fortran run and used in the Python runs'), but the final normalized log-likelihoods are produced by each implementation's own optimization trajectory; nothing in the equations or benchmark protocol forces the Python final likelihood to equal the Fortran final likelihood by construction. The paper states that 'Both implementations were run using equivalent parameters,' but it never maps the Fortran program's 86 parameters to the reduced Python API, and Table 3 shows iteration-count differences (e.g., jo74: 897 vs 998; ke70: 1306 vs 1106). This is a reproducibility/parameter-mapping gap and a correctness concern, but it is not circularity: the equivalence claim is an empirical input to the benchmark, not a consequence of the result being reported. The DAAREM acceleration evaluation is also empirical, comparing wall-clock times and likelihood trajectories using an external acceleration scheme (Henderson & Varadhan), not a redefinition of the target. The Delorme replication uses the original public EEGLAB scripts, data, and DIPFIT workflow, providing an independent external check. The only self-citation by the authors ([13], PyLossless) appears as background for EEG artifact processing and is not load-bearing. Therefore no circular step is identifiable; the paper is essentially self-contained against an external reference, and the score is 0.

Axiom & Free-Parameter Ledger

4 free parameters · 4 axioms · 0 invented entities

No new theoretical entities are introduced. The paper is a reimplementation and empirical validation; its claims rest on the correctness and equivalence of the underlying AMICA implementation and on the representativeness of the benchmark.

free parameters (4)
  • Number of mixture terms M = 3
    Benchmark setting; chosen manually, not tuned. Influences model capacity and runtime.
  • Maximum iterations = 2000
    Benchmark stopping cap; not reported as critical to agreement.
  • DAAREM hyperparameters (order m, damping schedule)
    Not specified in the text; required to reproduce the accelerated variant exactly.
  • Convergence thresholds epsilon_L, epsilon_g
    Not explicitly stated in the text; used to determine termination in both implementations (Eq. 16).
axioms (4)
  • domain assumption The Fortran AMICA implementation is the correct reference implementation of the algorithm.
    The entire validation is framed against the Fortran program as ground truth; no independent formal specification exists.
  • domain assumption The reduced-parameter Python API (with its default values) is behaviorally equivalent to the full 86-parameter Fortran API for the benchmark settings.
    The paper asserts 'equivalent parameters' but does not demonstrate how the parameter reduction preserves all relevant behaviors.
  • domain assumption The AMICA update equations described in the paper faithfully match the Fortran code.
    No machine-checked proof; relies on unit tests and benchmark agreement as evidence.
  • domain assumption The 14 EEG recordings from the Delorme dataset are representative of AMICA's intended use cases.
    Generalizations about performance and numerical agreement are drawn from this single open dataset.

pith-pipeline@v1.3.0-alltime-deepseek · 17282 in / 13174 out tokens · 140290 ms · 2026-08-01T14:58:58.830430+00:00 · methodology

0 comments
read the original abstract

Adaptive Mixture Independent Component Analysis (AMICA) is widely used in EEG research and has long been associated with strong empirical performance for blind source separation. Despite its impact, practical use has historically depended on a single Fortran implementation, accessed via the EEGLAB toolbox for MATLAB, limiting its accessibility for analytical pipelines not designed within the MATLAB ecosystem. Here we present AMICA-Python, a Python implementation of the AMICA algorithm, with a scikit-learn-conformant API designed for integration with existing scientific Python pipelines. The implementation follows the reference algorithm closely while adopting modern software engineering practices and an interface familiar to Python users. Additionally, we introduce an optional Anderson acceleration scheme that can dramatically reduce the time to convergence for this relatively slow algorithm. To evaluate numerical agreement and practical performance, we benchmarked AMICA-Python against the reference Fortran implementation on 14 open EEG recordings. After averaging 3 runs of each implementation on all 14 recordings, AMICA-Python closely matched the reference, with a median final normalized log-likelihoods of 11.572 for both the Fortran and Python implementations, and a negligible median relative absolute difference of only $1.07\times10^{-8}$ when normalized by the absolute Fortran value. Runtime was also competitive. Relative to the reference implementation, AMICA-Python was 17.7\% faster, while the Anderson-accelerated variant was 34.1\% faster. AMICA-Python reproduces the reference implementation to high numerical precision with competitive runtime, while making AMICA available through a more accessible and extensible Python interface.

Figures

Figures reproduced from arXiv: 2607.18568 by Christian O'Reilly, Scott Huberty.

Figure 1
Figure 1. Figure 1: Illustration of mixture of a generalized Gaussians. The flexibility of AMICA comes at a cost. Generally speak￾ing, ICA methods with gradient-based optimization (including Infomax) are already known to converge slowly, at least com￾pared to fixed-point algorithms such as FastICA [21, 22]. A number of accelerations have been proposed to improve con￾vergence speed of these algorithms [19, 23], and AMICA itsel… view at source ↗
Figure 2
Figure 2. Figure 2 [PITH_FULL_IMAGE:figures/full_fig_p007_2.png] view at source ↗
Figure 3
Figure 3. Figure 3: Replication of Delorme et al.’s comparison be￾tween mutual information reduction and the percentage of near￾dipolar components. Top: the original published panel from Delorme et al. Bottom: the recreated plot, with AMICA-Python and its accelerated variant added as additional points. Mutual information reduction was computed with the original MATLAB script and source dipolarity was estimated with the origin… view at source ↗
Figure 4
Figure 4. Figure 4: Wall-clock runtime comparison between the Fortran reference implementation and AMICA-Python across benchmark datasets. Bars show the participant-level mean across three matched runs; error bars show the observed minimum-to-maximum range across runs. Future directions Several extensions of AMICA-Python remain open for future work. In terms of software implementation, broadening the support for alternative n… view at source ↗

discussion (0)

Sign in with ORCID, Apple, or X to comment. Anyone can read and Pith papers without signing in.

Reference graph

Works this paper leans on

45 extracted references · 11 canonical work pages

  1. [1]

    Anderson

    Donald G. Anderson. Iterative procedures for nonlinear integral equations. Journal of the ACM (JACM) , 12(4):547–560, 1965. doi: 10.1145/321296.321305. URL https://dl.acm.org/doi/10.1145/321296.321305

  2. [2]

    Walker and Peng Ni

    Homer F. Walker and Peng Ni. Anderson acceleration for fixed-point iterations. SIAM Journal on Numerical Analysis , 49(4):1715–1735,

  3. [3]

    Varoquaux, S

    G. Varoquaux, S. Sadaghiani, P . Pinel, A. Kleinschmidt, J. B. Poline, and B. Thirion. A group model for stable multi-subject ICA on fMRI datasets. NeuroImage, 51(1):288–299, 2010. ISSN 10538119. doi: 10.1016/j.neuroimage.2010.02.010. URL http://arxiv.org/ abs/1006.2300

  4. [4]

    Independent EEG sources are dipolar

    Arnaud Delorme, Jason Palmer, Julie Onton, Robert Oostenveld, and Scott Makeig. Independent EEG sources are dipolar. PLoS ONE, 7 (2):e30135, 2012. ISSN 1932-6203. doi: 10.1371/journal.pone.0030135. URL https://dx.plos.org/10.1371/journal.po ne.0030135

  5. [5]

    Pearlson, Jingyu Liu, and Vince D

    Godfrey D. Pearlson, Jingyu Liu, and Vince D. Calhoun. An introductory review of parallel independent component analysis (p-ICA) and a guide to applying p-ICA to genetic data and imaging phenotypes to identify disease-associated biological pathways and systems in common complex disorders. Frontiers in Genetics , 6, 2015. ISSN 1664-8021. doi: 10.3389/fgene...

  6. [6]

    Rutledge and D

    D.N. Rutledge and D. Jouan-Rimbaud Bouveresse. Independent components analysis with the JADE algorithm. TrAC Trends in Analytical Chemistry, 50:22–32, 2013. ISSN 01659936. doi: 10.1016/j.trac.2013.03.013. URL https://linkinghub.elsevier.com/re trieve/pii/S0165993613001222

  7. [7]

    Application of independent component analysis to microarrays

    Su-In Lee and Serafim Batzoglou. Application of independent component analysis to microarrays. Genome Biology , 4(11):R76, 2003. ISSN 1474-760X. doi: 10.1186/gb-2003-4-11-r76. URL https://genomebiology.biomedcentral.com/articles/10. 1186/gb-2003-4-11-r76

  8. [8]

    Scholz, S

    M. Scholz, S. Gatzek, A. Sterling, O. Fiehn, and J. Selbig. Metabolite fingerprinting: detecting biological features by independent com- ponent analysis. Bioinformatics, 20(15):2447–2454, 2004. ISSN 1367-4811, 1367-4803. doi: 10.1093/bioinformatics/bth270. URL https://academic.oup.com/bioinformatics/article/20/15/2447/233609

  9. [9]

    Blind separation of noisy gaussian stationary sources

    Jean-François Cardoso, Hichem Snoussi, and Jacques Delabrouille. Blind separation of noisy gaussian stationary sources. application to cosmic microwave background imaging. In 2002 11th European Signal Processing Conference , pages 1–4, 2002

  10. [10]

    Separation of earthquake and hydrology signals from GRACE satellites data via independent component analysis: a case study in the sumatra region

    Yuhao Xiong, Wei Feng, Xin Zhou, Jürgen Kusche, Yingchun Shen, Meng Y ang, Changqing Wang, and Min Zhong. Separation of earthquake and hydrology signals from GRACE satellites data via independent component analysis: a case study in the sumatra region. Geophysical Journal International , 239(3):1597–1616, 2024. ISSN 0956-540X, 1365-246X. doi: 10.1093/gji/g...

  11. [11]

    WordICA—emergence of linguistic representations for words by independent component analysis

    Timo Honkela, Aapo Hyvärinen, and Jaakko J Väyrynen. WordICA—emergence of linguistic representations for words by independent component analysis. Natural Language Engineering, 16(3):277–308, 2010

  12. [12]

    Nonlinear independent component analysis for principled disentanglement in unsupervised deep learning

    Aapo Hyvärinen, Ilyes Khemakhem, and Hiroshi Morioka. Nonlinear independent component analysis for principled disentanglement in unsupervised deep learning. Patterns, 4(10):100844, October 2023. ISSN 26663899. doi: 10.1016/j.patter.2023.100844. URL https://linkinghub.elsevier.com/retrieve/pii/S2666389923002234

  13. [13]

    PyLossless: A non-destructive EEG processing pipeline

    Scott Huberty, James Desjardins, T yler Collins, Mayada Elsabbagh, and Christian O’Reilly. PyLossless: A non-destructive EEG processing pipeline. Behavior Research Methods , 58(8):220, July 2026. ISSN 1554-3528. doi: 10.3758/s13428-026-02997-z. URL https: //link.springer.com/10.3758/s13428-026-02997-z

  14. [14]

    Vigario, J

    R. Vigario, J. Sarela, V . Jousmiki, M. Hamalainen, and E. Oja. Independent component approach to the analysis of eeg and meg recordings. IEEE Transactions on Biomedical Engineering, 47(5):589–593, 2000. doi: 10.1109/10.841330

  15. [15]

    AMICA: An adaptive mixture of independent component analyzers with shared components

    Jason A Palmer, Ken Kreutz-Delgado, and Scott Makeig. AMICA: An adaptive mixture of independent component analyzers with shared components. Technical report, Swartz Center for Computational Neuroscience, University of California San Diego, 2011

  16. [16]

    Comparison of the AMICA and the InfoMax algorithm for the reduction of electromyogenic artifacts in EEG data

    Heike Leutheuser, Florian Gabsteiger, Felix Hebenstreit, Pedro Reis, Matthias Lochmann, and Bjoern Eskofier. Comparison of the AMICA and the InfoMax algorithm for the reduction of electromyogenic artifacts in EEG data. In 2013 35th Annual International Conference of the IEEE Engineering in Medicine and Biology Society (EMBC) , pages 6804–6807. IEEE, 2013....

  17. [17]

    Bell and Terrence J

    Anthony J. Bell and Terrence J. Sejnowski. An information-maximization approach to blind separation and blind deconvolution. Neural Computation, 7(6):1129–1159, 1995. ISSN 0899-7667, 1530-888X. doi: 10.1162/neco.1995.7.6.1129. URL https://direct.mit .edu/neco/article/7/6/1129-1159/5909

  18. [18]

    Sejnowski

    Te-Won Lee, Mark Girolami, and Terrence J. Sejnowski. Independent component analysis using an extended infomax algorithm for mixed subgaussian and supergaussian sources. Neural Computation, 11(2):417–441, 1999. ISSN 0899-7667, 1530-888X. doi: 10.1162/089976 699300016719. URL https://direct.mit.edu/neco/article/11/2/417-441/6242

  19. [19]

    Orthogonal extended infomax algorithm

    Nicole Ille. Orthogonal extended infomax algorithm. Journal of Neural Engineering , 21(2), 2024. ISSN 1741-2552. doi: 10.1088/1741 -2552/ad38db

  20. [20]

    Lewicki, and T.J

    Te-Won Lee, M.S. Lewicki, and T.J. Sejnowski. ICA mixture models for unsupervised classification of non-gaussian classes and automatic context switching in blind signal separation. IEEE Transactions on Pattern Analysis and Machine Intelligence , 22(10):1078–1089, 2000. ISSN 01628828. doi: 10.1109/34.879789. URL http://ieeexplore.ieee.org/document/879789/

  21. [21]

    Caveats with stochastic gradient and maximum likelihood based ICA for EEG

    Jair Montoya-Martínez, Jean-François Cardoso, and Alexandre Gramfort. Caveats with stochastic gradient and maximum likelihood based ICA for EEG. In Petr Tichavský, Massoud Babaie-Zadeh, Olivier J.J. Michel, and Nadège Thirion-Moreau, editors,Latent Variable Analysis and Signal Separation , volume 10169, pages 279–289. Springer International Publishing, 20...

  22. [22]

    Hyvärinen and E

    A. Hyvärinen and E. Oja. Independent component analysis: algorithms and applications. Neural Networks, 13(4):411–430, 2000. ISSN 08936080. doi: 10.1016/S0893-6080(00)00026-5. URL https://linkinghub.elsevier.com/retrieve/pii/S089360 8000000265

  23. [23]

    Faster independent component analysis by preconditioning with hessian approximations, 2017

    Pierre Ablin, Jean-François Cardoso, and Alexandre Gramfort. Faster independent component analysis by preconditioning with hessian approximations, 2017. URL https://arxiv.org/abs/1706.08171. arXiv:1706.08171, version 3

  24. [24]

    Stability analysis of learning algorithms for blind source separation

    Shun-ichi Amari, Tian-ping Chen, and Andrzej Cichocki. Stability analysis of learning algorithms for blind source separation. Neural Networks, 10(8):1345–1351, 1997. ISSN 08936080. doi: 10.1016/S0893-6080(97)00039-7. URL https://linkinghub.elsev ier.com/retrieve/pii/S0893608097000397

  25. [25]

    Palmer, Kenneth Kreutz-Delgado, and Scott Makeig

    Jason A. Palmer, Kenneth Kreutz-Delgado, and Scott Makeig. Newton method for the ica mixture model. In 2008 IEEE International Conference on Acoustics, Speech and Signal Processing , pages 1805–1808, 2008. doi: 10.1109/ICASSP.2008.4517982

  26. [26]

    R. M. Frank et al. An exploration of optimal parameters for efficient blind source separation of eeg recordings using amica. Placeholder Journal, 2023. Replace this placeholder entry with the final bibliographic metadata you want to cite

  27. [27]

    J. Palmer. Code for amica: Adaptive mixture ica with shared components. https://github.com/sccn/amica , 2025. Accessed: November 4, 2025

  28. [28]

    Reimplementation of amica in julia

    Alexander Lulkin. Reimplementation of amica in julia. Bachelor’s thesis, University of Stuttgart, Stuttgart, Germany, March 2023. URL https://elib.uni-stuttgart.de/bitstreams/fa65d016-a85e-42d3-9ba0-004507271634/download

  29. [29]

    EEGLAB: an open source toolbox for analysis of single-trial EEG dynamics including independent component analysis

    Arnaud Delorme and Scott Makeig. EEGLAB: an open source toolbox for analysis of single-trial EEG dynamics including independent component analysis. Journal of Neuroscience Methods, 134(1):9–21, 2004. ISSN 01650270. doi: 10.1016/j.jneumeth.2003.10.009. URL https://linkinghub.elsevier.com/retrieve/pii/S0165027003003479

  30. [30]

    Pedregosa, G

    F. Pedregosa, G. Varoquaux, A. Gramfort, et al. Scikit-learn: Machine learning in Python. Journal of Machine Learning Research , 12: 2825–2830, 2011

  31. [31]

    Spectral independent component analysis with noise modeling for m/EEG source separation

    Pierre Ablin, Jean-François Cardoso, and Alexandre Gramfort. Spectral independent component analysis with noise modeling for m/EEG source separation. Journal of Neuroscience Methods , 356:109144, 2021. ISSN 01650270. doi: 10.1016/j.jneumeth.2021.109144. URL https://linkinghub.elsevier.com/retrieve/pii/S0165027021000790

  32. [32]

    Engemann, Daniel Strohmeier, Christian Brodbeck, Lauri Parkkonen, and Matti S

    Alexandre Gramfort, Martin Luessi, Eric Larson, Denis A. Engemann, Daniel Strohmeier, Christian Brodbeck, Lauri Parkkonen, and Matti S. Hämäläinen. MEG and EEG data analysis with MNE-Python. Frontiers in Neuroscience, 7:267, 2013. doi: 10.3389/fnins.2013 .00267. URL https://doi.org/10.3389/fnins.2013.00267

  33. [33]

    Harris, K

    Charles R. Harris, K. Jarrod Millman, and ... Array programming with NumPy. Nature, 585(7825):357–362, September 2020. doi: 10.1038/s41586-020-2649-2

  34. [34]

    Oliphant, Matt Haberland, T yler Reddy, David Cournapeau, Evgeni Burovski, Pearu Peterson, Warren Weckesser, Jonathan Bright, Stéfan J

    Pauli Virtanen, Ralf Gommers, Travis E. Oliphant, Matt Haberland, T yler Reddy, David Cournapeau, Evgeni Burovski, Pearu Peterson, Warren Weckesser, Jonathan Bright, Stéfan J. van der Walt, Matthew Brett, Joshua Wilson, K. Jarrod Millman, Nikolay Mayorov, Andrew R. J. Nelson, Eric Jones, Robert Kern, Eric Larson, C J Carey, İlhan Polat, Yu Feng, Eric W. M...

  35. [35]

    Data structures for statistical computing in python

    Wes McKinney. Data structures for statistical computing in python. In Stéfan van der Walt and Jarrod Millman, editors, Proceedings of the 9th Python in Science Conference , pages 51 – 56, 2010

  36. [36]

    Polars: Extremely fast query engine for dataframes, written in rust

    Polars Contributors. Polars: Extremely fast query engine for dataframes, written in rust. https://github.com/pola-rs/polars, 2026

  37. [37]

    Palmer, Kenneth Kreutz-Delgado, and Scott Makeig

    Jason A. Palmer, Kenneth Kreutz-Delgado, and Scott Makeig. Super-gaussian mixture source model for ICA. In Justinian Rosca, Deniz Erdogmus, José C. Príncipe, and Simon Haykin, editors, Independent Component Analysis and Blind Signal Separation , volume 3889, pages 854–861. Springer Berlin Heidelberg, 2006. ISBN 978-3-540-32630-4 978-3-540-32631-1. doi: 10...

  38. [38]

    Modeling brain dynamic state changes with adaptive mixture independent component analysis

    Sheng-Hsiou Hsu, Luca Pion-Tonachini, Jason Palmer, Makoto Miyakoshi, Scott Makeig, and Tzyy-Ping Jung. Modeling brain dynamic state changes with adaptive mixture independent component analysis. NeuroImage, 183:47–61, 2018. ISSN 10538119. doi: 10.1016/j.ne uroimage.2018.08.001. URL https://linkinghub.elsevier.com/retrieve/pii/S1053811918306888

  39. [39]

    Acceleration methods for fixed-point iterations

    Y ousef Saad. Acceleration methods for fixed-point iterations. Acta Numerica, 34:805–890, July 2025. ISSN 0962-4929, 1474-0508. doi: 10.1017/S0962492924000096. URL https://www.cambridge.org/core/product/identifier/S096249292400009 6/type/journal_article

  40. [40]

    Simple and Globally Convergent Methods for Accelerating the Convergence of Any EM Algorithm

    Ravi Varadhan and Christophe Roland. Simple and Globally Convergent Methods for Accelerating the Convergence of Any EM Algorithm. Scandinavian Journal of Statistics , 35(2):335–353, June 2008. ISSN 0303-6898, 1467-9469. doi: 10.1111/j.1467-9469.2007.00585.x. URL https://onlinelibrary.wiley.com/doi/10.1111/j.1467-9469.2007.00585.x

  41. [41]

    Henderson and Ravi Varadhan

    Nicholas C. Henderson and Ravi Varadhan. Damped anderson acceleration with restarts and monotonicity control for accelerating EM and EM-like algorithms. Journal of Computational and Graphical Statistics , 28(4):834–846, 2019. ISSN 1061-8600, 1537-2715. doi: 10.108 0/10618600.2019.1594835. URL https://www.tandfonline.com/doi/full/10.1080/10618600.2019.1594835

  42. [42]

    Damped anderson mixing for deep reinforcement learning: Acceleration, convergence, and stabilization

    Ke Sun, Y afei Wang, Yi Liu, Bo Pan, Shangling Jui, Bei Jiang, Linglong Kong, et al. Damped anderson mixing for deep reinforcement learning: Acceleration, convergence, and stabilization. Advances in Neural Information Processing Systems, 34:3732–3743, 2021

  43. [43]

    Anderson acceleration for fixed-point iterations

    Homer F Walker and Peng Ni. Anderson acceleration for fixed-point iterations. SIAM Journal on Numerical Analysis , 49(4):1715–1735, 2011

  44. [44]

    Python array API standard: Toward array interoperability in the scientific python ecosystem

    Aaron Meurer, Athan Reines, Ralf Gommers, Y ao-Lung Fang, John Kirkham, Matthew Barber, Stephan Hoyer, Andreas Müller, Sheng Zha, Saul Shanabrook, Stephannie Gacha, Mario Lezcano-Casado, Thomas Fan, T yler Reddy, Alexandre Passos, Hyukjin Kwon, Travis Oliphant, and Consortium Standards. Python array API standard: Toward array interoperability in the scien...

  45. [2011]

    URL https://doi.org/10.1137/10078356X

    doi: 10.1137/10078356X. URL https://doi.org/10.1137/10078356X