I’m fairly new to Bayesian modeling in general and Stan in particular so I apologize if I even use incorrect phrasing of what I’m trying to ask…!
I’m working on a hierarchical model of reinforcement learning in a repeated measures design. I’ve posted the model code (close to my latest version) in this post.
In the given experiment a number of subjects
nS performed a learning task under
nC different (drug) conditions (i.e. each subject repeats the learning paradigm in
nC times). The reinforcement model then uses a set of parameters to model the subjects behavior in the learning task. Of interest for my current question is the parameter
Arew that models the learning rate. It needs to be constrained to a range of
To account for the hierarchical structure (subject repeated in condition) each parameter has a non-centered parameterization. The baseline condition is parameterized as follows
Arew_normal[s,] = Arew_m + Arew_cond_s * Arew_cond_raw[s,] + Arew_vars[s,1];
That is, there is a group mean
Arew_m, a subject specific offset
Arew_cond_raw[s,] with sd
Arew_cond_s and a random part for each subject that is correlated across conditions.
Each non-baseline condition (that is, each drug condition) has an additional offset
Arew_cond_grp_m plus a subject specific random part:
Arew_normal[s,v] += cond_vars[s,v,kk] * (Arew_cond_grp_m[kk] + Arew_vars[s,kk+1]);
cond_vars[s,v,kk] is a dummy ccoding the condition.
Now for the reinforcement model the parameter
Arew needs to be in the range
[0,1]. This is achieved by an
Arew[s,] = inv_logit(Arew_normal[s,]);
That means, that I can interpret the subject-wise parameters
Arew on my
[0,1] scale. However, the estimates for the group-level parameters for the overall mean of the parameter (
Arew_m) and the group-level parameter for the condition effect (
Arew_cond_grp_m) are only available on the unconstrained space before the transform happens.
What would be the way to interpret these parameters?
That is, how can I tell (and report) what effect my drug manipulation has on my parameter
I’m extending here a model that is used in the hBayesDM package. This simple model, that does not implement repeated measures, uses a non-centered parameterization for the learning rate parameter as follows (using
Phi_approx() instead of
inv_logit() to transform the parameter to a range of
A[s] = Phi_approx(A_m + sigma * A_raw[s])
To get the group-level parameter transformed back to an interpretable scale it then uses
mu_A = Phi_approx(A_m);
generated quantities block.
Is there a way to obtain interpretable values for
Arew_cond_grp_m using such kind of back-transformation? I’d assume
mu_Arew = inv_logit(Arew_m) mu_Arew_cond_grp = inv_logit(Arew_cond_grp_m)
to be misleading here since the parameter
Arew comprises of a sum of the 2 parameters.
Any idea on this or a suggestion how to better deal with such a case is highly appreciated!
Thanks a lot!