I'm not sure what kind of convergence problems you're experiencing with
-gllamm-. Is it just slowness? With the two-parameter model, my understanding
is that you'd be fitting 30 random effects--something that would require a great
deal of patience with -gllamm- at least with more than a few integration points
and without multiple processors.
There are some examples of these kinds of models fitted with -gllamm- in Xiaohui
Zheng & Sophia Rabe-Hesketh. (2007) Estimating parameters of dichotomous and
ordinal item response models with gllamm. _The Stata Journal_ 7(3):313-33. They
limit themselves to a relative few test items, nowhere near 30.
As far as fitting an analogous model with -xtmelogit-, couldn't you set up an
equation on the random effects side of the double-pipe for student-by-test item
interaction terms (the 30 random effects)? It would seem that the common tactic
of omitting the first test item in the random effects equation (omitting it from
the equation as the constant) identifies the model by fixing the first test
item's loading factor (allowing the variance for the random effect for students
to be free).
I think that traditionally with IRT models, the random effects for students
would be constrained to unit variance, which allows for all of the item factor
loadings to be estimated (free)--they're held to be equal for the Rasch model (a
single random effect, fitted with -xtlogit- as Jay mentions and as you show
below) and allowed to be independently estimated in the two-parameter model.
You can't impose such a unit-variance constraint with -xtmelogit-, but wouldn't
-xtmelogit- still allow for at least an analogous model to be fitted by fixing
one item's loading factor (omitted as the constant), which scales the student
random effect to it? Specifying the student-by-test item interactions would
follow the same random-effects equation syntax with -xtmelogit- as for an
analogous interaction term (fixed test item-by-random student) in a mixed-model
ANOVA fitted with -xtmixed-.
Joseph Coveney
Stas Kolenikov wrote:
I see. Since I am not really sure where I want this to get shrunk, I
probably won't be trying these quasi-Bayesian routes. (Writing
MataBUGS can be an exciting year-long project on its own though :))
I'll go over my list of questions, and restrict the parameters to be
equal if the same (low) number of students have missed those
questions. That might kill my sensitivity parameter on these questions
though.
For -xtmelogit-, it looks to me like the covariance structure you need
is the matrix of ones... which is kinda stupid to deal with. Anyway I
hope Bobby G would chime in.
The Rasch model would then be just
g byte ones = 1
eq ones : ones
gllamm Correct [question dummies], ... eq( ones )
or
xtmelogit Correct [question dummies], nocons || studentID :
so that the random factor weighs equally on all questions, right?
*
* For searches and help try:
* http://www.stata.com/help.cgi?search
* http://www.stata.com/support/statalist/faq
* http://www.ats.ucla.edu/stat/stata/