jamica - Adaptive Mixture Independent Component Analysis, powered by JAX jamica - Adaptive Mixture Independent Component Analysis, powered by JAX

jamica#

Native Python AMICA for scientific EEG workflows.

jamica provides an open Python implementation of Adaptive Mixture Independent Component Analysis (AMICA) with a modern scientific Python API, optional JAX acceleration, and MNE-Python integration.

Quick Start

Install jamica, fit AMICA on MNE data, and run the core examples.

Examples
Background

Understand AMICA, mixture ICA, optimization, and the design of jamica.

Understanding jamica
API Reference

Browse the public Python API, classes, functions, and configuration objects.

API Reference
FAQ

Find troubleshooting notes for installation, JAX, MNE integration, and validation.

Frequently Asked Questions

Why jamica?#

  • Native Python implementation of AMICA

  • Optional JAX CPU/GPU acceleration

  • Drop-in MNE-Python integration

  • Multi-model AMICA support

  • Numerical validation against the Fortran AMICA 1.7 reference implementation

  • Designed for reproducible EEG and neuroimaging workflows

Minimal Example#

from jamica import Amica, AmicaConfig

config = AmicaConfig(max_iter=2000, num_mix_comps=3)
model = Amica(config, random_state=42)

result = model.fit(data)
sources = model.transform(data)