Are large run-to-run differences normal with robustICA in tedana? And how to interpret variance explained?

Hi everyone,

Thank you again for the previous help — I have a couple of new questions regarding my current tedana results.

I am working with multi-echo fMRI data (3T, ~604 volumes, TR = 1s, 3 echoes(12ms, 30ms, 48ms). After preprocessing with fMRIPrep, I run tedana using the following settings in version26.0.3:

workflows.tedana_workflow(EchoFiles, EchoTimes, out_dir=OutDir, prefix="%s_task-rest_run-01_space-Native" % (sub), mask=MaskFile, masktype=["dropout"], fittype="curvefit", tedpca="kic", dummy_scans=10, ica_method="robustica", n_robust_runs=30, verbose=False, gscontrol=None )

However, I am encountering two issues:


1. Large variability between repeated runs

For some subjects, I observe quite large differences between two separate runs of tedana (e.g., first run (figure 1) vs second run (figure 2) on the same data). I understand that tedana/ICA can have some stochasticity, but I expected that using ica_method="robustica" with n_robust_runs=30 would improve stability.

  • Is such large variability between runs still expected when using robustICA?

  • Would this be considered abnormal?

  • In this case, which result should I trust or report?


2. Component counts and variance explained

In this dataset:

  • Total number of components is typically ~30–58

  • Number of accepted components is ~5–25

  • The variance explained by accepted components is often around 4–10%, though in a few cases it is as high as ~50%

I am unsure how to interpret these results:

  • Are these ranges (number of components and variance explained) considered normal?

  • Is a low percentage of variance explained by accepted components (e.g., <10%) a concern?

  • Are there recommended QC metrics or procedures for evaluating tedana denoising quality?


Any guidance or references would be greatly appreciated.
Thanks a lot for your help!

Rong