Let us suppose we want to estimate an unequal variance signal detection model (UVSDT) where the distribution of the targets/signal (the distribution of the latent variable?) is allowed to differ from 1. The UVSDT specifies that the distribution of the noise/lures is distributed normally (mean = 0, standart deviation = 1).
Let us suppose further that we have an experimental and a control condition which are supposed to differ in their influence on the response variable.
- ordinal response variable
- signal (0 = noise | 1 = signal)
- condition (0 = control | 1 = experimental)
Question: Is it possible to let the standart deviation (discrimination) differ ONLY for the signals (or is this not even necessary)?
- discrimination parameter for signal in control and experimental condition
uvsdt <- brm( bf(Response ~ signal*condition),
disc ~ 0+ signal + signal*condition (?), cmc = false,
data = "",
family = cumulative("probit"),iter=,inits=)
Sorry for taking too long to respond.
Generally, when I need some non-standard behaviour of the model, it is useful to think of the design matrix the model would have. Your wording doesn’t make it clear whether you want to allow for 2 or 3 different values of disc (i.e. is
signal = 1, condition = 0 the same as for
signal = 0, condition = 0 ?)
If you just want two values, I think that what you want would be achieved by
disc ~ 1 + signal:condition, which would lead to this design matrix:
signal condition X1(Intercept) X2(signal:condition)
0 0 1 0
0 1 1 0
1 0 1 0
1 1 1 1
So the predictors are the same for the first 3 cases and differ for the 4th
If you want 3 values you could use
disc ~ 1 + signal:condition + signal which would give you
signal condition X1(Intercept) X2(signal:condition) X3(signal)
0 0 1 0 0
0 1 1 0 0
1 0 1 0 1
1 1 1 1 1
(also note that
signal*condition is a shorthand for
signal + condition + signal:condition, so your initial formula is IMHO not what you want)
Does that make sense?
I did not know that
signal*condition is a shorthand… You helped me a lot! Thank you very much!
disc ~ 0 + signal + signal:condition + (0 + old + old:condition | ID )
and so I got
disc_signal - 0.21 and disc_signal:condition -0.43 as result. You already answered my question perfectly but I have another one about the parametrization.
The discrimination for
signal = 1 and condition = 1 (condition is coded as 0 and 1) would be
- 0.43 or
(-0.21 + (-0.43))?.
The discrimination for signal = 1 and condition = 0 would be therefore
If I understand you correctly, it would be
(-0.21 + (-0.43)) But don’t forget that the parameters have uncertainties. Probably the best way to get estimates of such combined quantities is to use
hypothesis in brms (something like
hypothesis(myfit, "b_disc_signal + b_disc_signal:condition > 0", group = NULL) would give you a full posterior for the combined quantity (don’t mind the
> 0 part, this is just to get the hypothesis going). Check
parnames for the correct names to use, I likely got them wrong.
I also encourage you to do some reading on design matrices and how all this stuff is actually implemented (sorry don’t have a good reference to recommend right now). I believe it will help you achieve.
Best of luck!