Dear Martin,
See responses below inline.
Best, Will.
> -----Original Message-----
> From: SPM (Statistical Parametric Mapping) [mailto:[log in to unmask]]
> On Behalf Of Martin Pyka
> Sent: 02 May 2012 13:17
> To: [log in to unmask]
> Subject: Re: [SPM] DCM fails to select model that generated the data
>
> Dear Will,
>
> > Given that you know the true parameters you should check (i) are they
> > within the range of the priors (See spm_dcm_fmri_priors.m) - if not
> > the optimisation algorithm will never find them,
>
> I am a little bit confused about that. What do you mean with "within
> the range of the priors"? The neural priors seem to be encoded as
>
> % enforce self-inhibition
> %-----------------------------------------------------------------
> -----
> A = A > 0;
> A = A - diag(diag(A));
>
> % prior expectations
> %-----------------------------------------------------------------
> -----
> pE.A = A/(64*n) - eye(n,n)/2;
> pE.B = B*0;
> pE.C = C*0;
> pE.D = D*0;
>
> % prior covariances
> %-----------------------------------------------------------------
> -----
> pC.A = A*a/n + eye(n,n)/(8*n);
> pC.B = B;
> pC.C = C;
> pC.D = D;
>
> % and add hemodynamic priors
> %======================================================================
> ====
> pE.transit = sparse(n,1);
> pE.decay = sparse(n,1);
> pE.epsilon = sparse(1,1);
>
> pC.transit = sparse(n,1) + exp(-6);
> pC.decay = sparse(n,1) + exp(-6);
> pC.epsilon = sparse(1,1) + exp(-6);
>
> pC = diag(spm_vec(pC));
>
>
> For example, in a model with four regions, the prior expectation for
> intrinsic connections is 0.0039 (and self-inhibition is set to -0.5?)
>
Yes. That's correct.
> But when I look into my estimated DCMs I see (significant) neural
> coupling strengths between 0.01 to 2.0, which seems to be ok. So why
> shouldn't DCM (along with BMS) not be able to correctly estimate neural
> parameters within a larger range?
>
So, the prior mean for eg A(1,2) (if connected) from pE.A(1,2) is 0.0039 and the prior variance - from pC.A(1,2) is 2. So prior std dev is sqrt(2)=1.4. So 99% of prior values are in the range is 0.0039 plus or minus (approx) 3 times 1.4.
I guess this is quite a large range, so maybe its not so important to check this after all.
> Furthermore, if I understand it correctly, the prior for the time
> scaling parameter is set to zero. Isn't this a bit unrealistic as this
> value causes a delay / smoothing effect in the neural (and hrf) signal
> in the range of seconds (given identical hemodynamic parameters for all
> regions?).
>
I'm not sure what you're referring to here as the 'time scaling parameter'.
In the original DCM paper from 2003 there was a parameter which scaled the A matrix - but this has changed in more recent versions. Now the diagonal A entries are allowed to take on different values and the time-scale of persistent activity in each region is set by these values (A_ii for ith region, half-life = (1/A_ii)*ln(0.5) so for A_ii =-0.5, half life=1.39s). One could argue this is a bit long, but then its only the prior mean, estimated values can be shorter.
>
> > (ii) are the parameter estimates DCM.Ep close to the true values, esp
> important for the connections that are different between models.
> >
>
>
> Does this imply that, in general, the sensitivity of DCM should be
> checked for various neural and HRF parameters?
>
> Best,
> Martin
>
>
>
> --
> SPM for programmers
> http://spm.martinpyka.de
|