Mon, 04/23/2012 - 11:57

I'm trying to run a CFA model, and I'm receiving some status 6 (code red) errors that I suspect may be due to starting values. I have constrained variances to be positive and have moved the starting values around, but no success.

Two things: 1) do you have any recommendations on how to determine starting values for latent variances, residual variances, covariances, factor loadings, means, etc.? 2) Do you know where I could read more about guidelines for determining starting values?

Thanks!

Does anybody have suggestions for determining starting values or have suggestions of things to read in order to determine starting values? This is the biggest difficulty I have in using OpenMx because most other SEM packages use algorithms to calculate starting values, so I'm not familiar with how to determine them, and it seems to be the reason why my model is not converging. I understand why OpenMx only takes user-specified starting values and I'm okay with that, but it would be helpful to know where to begin, as not knowing how to determine appropriate starting values makes OpenMx less accessible.

Any help or guidelines would be greatly appreciated.

First, my apologies that no one got to your earlier post.

The biggest concern with starting values is to make sure your initial model-implied covariance matrix is valid and positive definite. This means that (1) variances must (1) be positive, and (2) covariances shouldn't be greater than the product of the standard deviations of the relevant variables (i.e., correlations shouldn't exceed 1.0). The simplest way to do this is to make all of your variances 1.0 and all of your covariances/regressions either 0 or 0.5, the latter being the Mplus default.

That said, OpenMx will run faster if you pick starting values that are closer to the correct parameter estimates for your model. This is not a big concern for many users/models, because OpenMx is fairly fast anyway and the time it takes to pick smarter starting values often isn't worth the relatively tiny savings in optimization time. Picking better starting values becomes a bigger issue when you have ordinal data, lots and lots of raw data and/or lots of observed variables.

We should add this advice to the error message!

Good also to list out the possible causes on NPD.

1. Bad starts

2. Impossible constraints (like zero variance)

...

It would also be nice to report any manifests being estimated as having zero variance due to an accidental failure to add in a variance path.