[FieldTrip] Simulate data to compare methods

Nico Weeger nico.weeger at googlemail.com
Thu Jan 29 17:43:04 CET 2015


Hi Eelke,

thank you very much for ur advice!

Due to ur help I solved the problem using multiple trials and different
frequencies.

Thanks a lot!

Best regards

Nico



2015-01-28 12:24 GMT+01:00 Eelke Spaak <eelke.spaak at donders.ru.nl>:

> Hi Nico,
>
> As for question (2), you probably first need to think about what
> constitutes a "better" result. Using more tapers with dpss will always
> result in more frequency smoothing. If your source signal is primarily
> composed of pure sinusoids, and you interpret a spectrum as "better"
> if it shows clearer peaks, then you will always get the "best" result
> for the single-taper case.
>
> Multitapering allows optimal control over the amount of smoothing you
> obtain in the frequency domain, which is more or less independent of
> the amount of smoothing you obtain in the time domain (as opposed to
> e.g. wavelets, where these are fundamentally linked). When dealing
> with brain signals, you will often find that a certain stimulus might
> induce e.g. a gamma response at 40-50 Hz in one subject and one trial,
> while in another subject or another trial the same stimulus might
> induce a 50-60 Hz response or so. Of course, in the average over
> trials (and subjects), this heterogeneity (i.e., noise) will wash out,
> but it will severely damage your statistical sensitivity. Therefore,
> using multitapers to add smoothing can produce a much more consistent
> result and therefore be "better" in the sense of actually
> understanding the brain.
>
> As for your simulation, perhaps using filtered noise would be better
> than sinusoids. Also, since multitapering benefits you most strongly
> when taking variation over observations into account, you could
> consider simulating different observations, each consisting of noise
> filtered in a slightly different randomly chosen bandwidth, and
> inspecting the resulting variation over observations in the spectra.
>
> Best,
> Eelke
>
> On 27 January 2015 at 18:36, Max Cantor <mcantor at umich.edu> wrote:
> > Hi Nico,
> >
> > I'm not sure about the second question, but as for the first question,
> you
> > can manually set the scales for ft_singleplotTFR using cfg.zlim.
> >
> > Hope that helps,
> >
> > Max
> >
> > On Tue, Jan 27, 2015 at 11:50 AM, Nico Weeger <
> nico.weeger at googlemail.com>
> > wrote:
> >>
> >> Hello FieldTrip community,
> >>
> >>
> >>
> >> I am new to FieldTrip and I try to simulate data to compare the
> >> ft_frequanalysis methods Hanning, Multitaper and Wavelet.
> >>
> >> Therefore I simulate Data manually using different latency, amplitude
> and
> >> frequency combinations using the following equation:
> >>
> >> sig1 = exp(-(t-lat1).^2/(2*sigma1))*amp1.*sin(2*pi*f1*t);
> >>
> >> sig2 = exp(-(t-lat2).^2/(2*sigma2))*amp2.*sin(2*pi*f2*t);
> >>
> >> sig3 = exp(-(t-lat1).^2/(2*sigma1))*amp1.*sin(2*pi*f2*t);
> >>
> >> sig4 = exp(-(t-lat2).^2/(2*sigma2))*amp2.*sin(2*pi*f1*t);
> >>
> >> sig = sig1+sig2+sig3+sig4;
> >>
> >> where amp1=20; amp2 = 5; lat1= 1.7; lat2 = 2.3; f1 = 12; f2 = 60;
> >>
> >>
> >> After using ft_frequanalysis (see the following cfgs)
> >>
> >>
> >> Cfg Wavelet:
> >>
> >> cfg = [];
> >>
> >> cfg.output     = 'pow';
> >>
> >> cfg.channel    = labels;
> >>
> >> cfg.method     = 'wavelet';
> >>
> >> cfg.width      = 7;
> >>
> >> cfg.gwidth     = 3;
> >>
> >> cfg.foilim     = [1 70];
> >>
> >> cfg.toi        = 0:0.05:2;
> >>
> >> TFRwave = ft_freqanalysis(cfg, data_preproc);
> >>
> >>
> >>
> >> Cfg Hanning / Multitaper:
> >>
> >> cfg = [];
> >>
> >> cfg.output     = 'pow';
> >>
> >> cfg.channel    = labels;
> >>
> >> cfg.method     = 'mtmconvol'
> >>
> >> cfg.foi        = 1:1:70
> >>
> >> cfg.tapsmofrq  = 0.2*cfg.foi;
> >>
> >> cfg.taper      = 'dpss' / ‘hanning’;
> >>
> >> cfg.t_ftimwin  = 4./cfg.foi;
> >>
> >> cfg.toi        = 0:0.05:2;
> >>
> >> TFRmult1 = ft_freqanalysis(cfg, data_preproc);
> >>
> >>
> >>
> >>
> >> the data is plotted with ft_singleplotTFR (see cfg below)
> >>
> >>
> >> cfg singleplot:
> >>
> >> cfg = [];
> >>
> >> cfg.maskstyle    = 'saturation';
> >>
> >> cfg.colorbar     = 'yes';
> >>
> >> cfg.layout       = 'AC_Osc.lay';
> >>
> >> ft_singleplotTFR(cfg, TFRwave);
> >>
> >>
> >> Two problems occur. First, the power scale of wavelet and
> >> Multitaper/Hanning differs extremely (Multi 0-~100 and Wavelet
> 0-~15*10^4).
> >>
> >> 1.       How can I get the scale of all methods equal, or do I have to
> >> change the Wavelet settings to get the right scale of the values?
> >>
> >> Second, the best result of Multitaper analysis is performed using only
> one
> >> Taper. The goal was to get a result, where the advantages and
> disadvantages
> >> of Multitaper analysis compared to the other methods can be seen.
> >>
> >> 2.       How can I change the simulation so that more tapers show better
> >> results than a single taper does?
> >>
> >>
> >> Thank you for your time and help.
> >>
> >>
> >> Regards,
> >>
> >>
> >>
> >> Nicolas Weeger
> >>
> >> Student of Master-Program Appied Research,
> >>
> >> University Ansbach,
> >>
> >> Germany
> >>
> >>
> >> _______________________________________________
> >> fieldtrip mailing list
> >> fieldtrip at donders.ru.nl
> >> http://mailman.science.ru.nl/mailman/listinfo/fieldtrip
> >
> >
> >
> >
> > --
> > Max Cantor
> > Lab Manager
> > Computational Neurolinguistics Lab
> > University of Michigan
>
> _______________________________________________
> fieldtrip mailing list
> fieldtrip at donders.ru.nl
> http://mailman.science.ru.nl/mailman/listinfo/fieldtrip
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mailman.science.ru.nl/pipermail/fieldtrip/attachments/20150129/bc5fb522/attachment-0002.html>


More information about the fieldtrip mailing list