EEG Source Reconstruction with eLORETA: Choosing the snr, normalising source time courses, removing subcortical structures effect and spatial resolution

  • MNE version: 1.8.0
  • operating system: macOS 14.4.1

Hi!

I am using eLORETA inverse method to derive the source time course of EEG evoked data. I do not have subject-specific MRIs (using the fsaverage template), nor do I have personalized digitization points or pictures of subject with the EEG device on.

I have 4 questions regarding source reconstruction in this setting – an answer to only one of these would already be super helpful :pray:

  1. What is the best method to select the snr parameter required for eLORETA? Should the parameter be determined visually from the plot of the whitened evoked signal separately for each subject as obtained with the following method?
evoked.plot_white(noise_cov_reg, time_unit="s")
  1. The results I get for the source time courses with eLORETA can vary from 2 orders of magnitude between subjects (even for the same snr parameter value) and in general the values are of the order of 10^-12 (as noted here). Should there be any normalization of the source time courses and if so what is a good option to follow up with a spatiotemporal cluster-based permutation test for instance?
  2. Some papers like this one, remove the subcortical source space points before performing source reconstruction with eLORETA. Is this being done under the assumption that EEG does not measure activity within these regions and that strong reconstructed signals in subcortical structures are necessarily spurious? Or is it more that the spatial uncertainty the estimated time course in these regions is too large to be worth interpreting?
  3. In general, given the source reconstructed data I’m working with (no personalized MRIs and no digitization points), what is an idea of the spatial resolution for which I should interpret eLORETA estimations?

Thank you!

  1. The actual parameter that needs to be set is lamba2, which controls the tradeoff between the source estimate being small and the source estimate accounting for all the sensor level signals. Setting lambda2 = 1.0 / snr**2 has some theoretical merit, but the unfortunate case is that snr means the signal-to-noise ratio at the source level not at the sensor level. Since we cannot know the true snr we must make a guess. What is comes down to in practice is that a higher lamba2 will make the source estimate more smooth and blurry, and a lower lamba2 will make the estimate more sharp and spikey (larger values at some vertices). Just play around with the parameter and see what it does to your source estimate. If there was an objectively correct value to set it to, we would have made MNE-Python automatically compute it for you. Unfortunately, there isn’t.
  2. If you say that you are having problems with suspiciously large values for some subjects, try increasing lambda2.
  3. EEG can definitely measure subcortical sources. Whether they are present depends on the kind of experiment you are doing. If I were doing a memory experiment, I would definitely keep them in. If I were doing a visual task, I would probably go for a surface source space.
  4. Without an MRI and without digitized points, I would be extremely cautious in making any sort of claim about source origin in more detail than the brain lobe it seems to be in. To give you a bit of context: for a long time, MNE-Python explicitly did not support source estimation without an MRI and digitized points because of the misleading results it can give. Just EEG without anything simply is not a good tool for reliably determining the origin of an evoked signal.
2 Likes

Thank you for your detailed response Marijn :blush:

I have two follow-ups:

  1. I appreciate your clarification about choosing the right lambda2. How would you go around setting this parameter given the inherent circularity in picking a good value? Is sensor level snr as can be guessed through evoked.plot_white(noise_cov_reg, time_unit="s") or other means truly a wrong proxy for source level snr?
  2. About the resolution to which source localization results should be interpreted in my setting (no MRI & no digitized points), could a LCVM beamforming method be more appropriate or this really wouldn’t change much?

For evoked data, set SNR to 3
For continuous data, set it to 1

See: