Automatic EEG Independent Component Classification Using ICLabel in Python
Arnaud Delorme, Dung Truong, Luca Pion-Tonachini, Scott Makeig

TL;DR
This paper introduces a Python implementation of the ICLabel plugin for EEG data analysis, enabling cross-platform compatibility and maintaining classification accuracy comparable to the original MATLAB version.
Contribution
Developed a Python version of ICLabel that is compatible with EEGLAB data structures and performs similarly to the MATLAB implementation.
Findings
Python ICLabel classifications match MATLAB results with less than 0.001% difference.
The Python implementation enables cross-platform EEG data processing.
ICLabel reliably classifies independent components into 7 categories.
Abstract
ICLabel is an important plug-in function in EEGLAB, the most widely used software for EEG data processing. A powerful approach to automated processing of EEG data involves decomposing the data by Independent Component Analysis (ICA) and then classifying the resulting independent components (ICs) using ICLabel. While EEGLAB pipelines support high-performance computing (HPC) platforms running the open-source Octave interpreter, the ICLabel plug-in is incompatible with Octave because of its specialized neural network architecture. To enhance cross-platform compatibility, we developed a Python version of ICLabel that uses standard EEGLAB data structures. We compared ICLabel MATLAB and Python implementations to data from 14 subjects. ICLabel returns the likelihood of classification in 7 classes of components for each ICA component. The returned IC classifications were virtually identical…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsEEG and Brain-Computer Interfaces
MethodsIndependent Component Analysis
