Cannot estimate slope parameter of nominal model

56 views
Skip to first unread message

KK Sasa

unread,
Nov 19, 2015, 8:01:22 AM11/19/15
to mirt-package
Hi Phil,

The mirt cannot make the slope parameter estimated. Please see the attached data. The "a1" parameters in nominal class  were set to be estimated (e.g., row 151, row 159, and so on, in output$sv), but the results are 0. Following is the R syntax to run:
~~~
load("test.Rdata")
cmod <- mirt(output$data, output$cmodel, pars=output$sv, itemtype=output$itemtype, SE=FALSE,
    SE.type='crossprod', method = "EM",quadpts=40,technical=list(NCYCLES=10000))
est = coef(cmod, printSE = TRUE, as.data.frame = TRUE)
~~~
Results showed:

Item.31.a1 = 0
Item.32.a1 = 0
...
.
test.Rdata

Phil Chalmers

unread,
Nov 19, 2015, 9:48:59 AM11/19/15
to KK Sasa, mirt-package
It is estimating those parameters, but the starting values data.frame you've supplied has been modified such that slopes parameters must remain positive.

> output$sv[151:152,]
    group    item   class name parnum value lbound ubound  est prior.type prior_1 prior_2
151   all Item.31 nominal   a1    151     1      0    Inf TRUE       none     NaN     NaN
152   all Item.31 nominal   a2    152     1      0    Inf TRUE       none     NaN     NaN

So what happens is that the model tries to estimate these slopes but at some point wants the first slope to be less than 0 but it can't, therefore it just sets it equal to zero and carries on. Changing lbound back to -Inf seems to fix this issue. 

The other major reason this happens is that the model is not uniquely identified, so slopes will vary dramatically (you need some unidimensional anchors for the second dimension in order for this model to be sufficiently identified). 

Phil

--
You received this message because you are subscribed to the Google Groups "mirt-package" group.
To unsubscribe from this group and stop receiving emails from it, send an email to mirt-package...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

KK Sasa

unread,
Nov 19, 2015, 10:57:06 PM11/19/15
to mirt-package, genw...@gmail.com
Thanks, Phil. Could mirt report to us that the model may not identified, like Mplus?

Phil Chalmers於 2015年11月19日星期四 UTC+8下午10時48分59秒寫道:

Phil Chalmers

unread,
Nov 19, 2015, 11:11:31 PM11/19/15
to KK Sasa, mirt-package
This is checked when you pass SE = TRUE. A warning message will be printed indicating the information matrix couldn't be inverted, which should be similar to Mplus.

Phil
Reply all
Reply to author
Forward
0 new messages