BSEM Measurement Invariance PreviousNext
Mplus Discussion > Structural Equation Modeling >
 S.Arunachalam posted on Wednesday, June 26, 2013 - 8:08 am
Sample size 300.I have totally 5 latent variables with multiple indicators (continuous): 3 independent and 2 dependent.
Both the IVs and DVs are answered by the same respondent, however with regards to three different firms i.e.) All the five variables are scales requesting the respondent to answer about Firm A, firm B and firm C. The survey looks like:
Firm AFirm BFirm B
Factor 1
1. Rate satisfaction of service with (1 to 5):
Factor 2
1. Rate you ability … (1 to 5)
Factor 5
1.. , 2… , 3….

For CFA, to account for the correlated residuals I used Bayesian SEM (BSEM) and have got robust fit indices and factor lodgings, Scales show very good fit.
Can I check measurement invariance using BSEM webnote 17; however I don't have a grouping variable, so I can't use Type=mixture & knownclass? Please advice how to use BSEM Measurement invariance for single group.
 Bengt O. Muthen posted on Wednesday, June 26, 2013 - 2:29 pm
BSEM measurement invariance for a single group is like the longitudinal example in web note 17.
 S.Arunachalam posted on Thursday, June 27, 2013 - 6:09 am
Dear Prof. Muthen. Thank you very much. I am using the same setup as in the longitudinal example. however the model is not converging. These are the steps I am following:
1.) I am using correlated CFA model as per the BSEM 2012 article. The model worked very well.
2.) I am testing BSEM measurement invariance using approximate invariance. The model is not converging for iterations 50000 and 100000.
Please advice.
 S.Arunachalam posted on Thursday, June 27, 2013 - 8:14 am
Dear Prof. Muthen: I am in touch with you on this through email. Kindly ignore the above doubt here.
 S.Arunachalam posted on Thursday, June 27, 2013 - 9:25 am
For my analysis (point 2 in my above post) I am still getting posterior probability to be 0. I first tried with DIFF variance of 0.1, then .01, and then .001. Still PPP is 0.
I having three indicators with * in the difference output though.
 Bengt O. Muthen posted on Thursday, June 27, 2013 - 9:52 am
PPP of zero can have many causes. We need to see more details to give advice - please send input, output, data and license number to support.
 Daniel Seddig posted on Sunday, February 02, 2014 - 8:05 am
Hello. Aside from considering the benefit and meaning: I am wondering if it is possible to specify approximate measurement invariance across time and groups simultaneously in Mplus Bayesian CFA? I haven't found a way to expand the label assigning feature together with type=mixture, knownclass and the do/diff options to include both types of invariance. Is there any?
 Bengt O. Muthen posted on Monday, February 03, 2014 - 9:45 am
I'll email an example to you.
 Yoonjeong Kang posted on Thursday, February 06, 2014 - 12:37 pm
Dear Drs. Muthen,

I have a question about prior distributions in testing approximate measurement invariance. In Muthen & Asparouhov article (2013), prior distributions for DIFFERENCES between parameters were used to test approximate measurement invariance.

Loading1-Loading2 ~ N(0,0.01)

Because variance of 0.01 may represent different magnitude of variability of differences depending on scales of factors’ indicators, instead of priors for differences between parameters, I think that using priors for PROPORTIONS of two parameters can be used.
So we may assign priors such as

Loading1/Loading2 ~N(1, small variance)

I tried to use this in Mplus, but Mplus gives error message.
“Unknown parameter label: Loading1/Loading2”

Q1. What do you think about using priors for proportions, not for differences in tests of approximate measurement invariance?
Q2. I don’t know why Mplus recognizes "Loading1/Loading2" as a new label although it recognizes "Loading1-Loading2" well. I also created new parameter for proportion (L1= Loading1/Loading2) under the model constraint and then assign a prior to new parameter (L1), but Mplus still gives error message (Unknown parameter label). Is there any way to use priors for proportions in this case?

Thanks a lot in advance!!!

 Bengt O. Muthen posted on Thursday, February 06, 2014 - 2:16 pm
The scale of the variables does influence the prior variance choices as you say. The size of a loading is related to the SD of the variable. Also, different variables may have very different SDs. But if you are concerned about this, I think you could transform your variables to be on a more similar scale and then check the sensitivity to prior variances.

If you want to work with ratios, you have to declare those parameters as "NEW" parameters in Model Constraint before applying priors to them.
 Yoonjeong Kang posted on Friday, February 07, 2014 - 12:10 pm
Dear Dr. Muthen,
Thank you so much for your clarification!
Yes. It would be one option to transform variables to be on a similar scale. I got it! To work with ratios, I followed your advice. I declared parameters as "New" parameters in model constraint and apply priors to those new parameters but it didn't work. Could you let me know if there is anything wrong in my code?(for simplicity, I didn't include priors for intercept terms)

F1 BY X1-X4;
F1 BY X1-X4(CG1X1-CG1X4);
F1 BY X1-X4(CG2X1-CG2X4);

LX1 ~ N(1,0.001);
LX2 ~ N(1,0.001);
LX3 ~ N(1,0.001);
LX4 ~ N(1,0.001);

*** ERROR in MODEL PRIORS command
Unknown parameter label: LX1
 Bengt O. Muthen posted on Friday, February 07, 2014 - 2:18 pm
I forgot that we don't yet have the option of giving priors for NEW parameters. One approach is to fix one lambda to 1 and let others have mean 1 and small-variance priors.
 Yoonjeong Kang posted on Friday, May 16, 2014 - 9:23 am
Dear Dr. Muthen,

When I took a look at the code in technical report regarding approximate measurement invariance, I realized that only a variance and mean of the reference group is fixed to 1 and 0. Variances and means for the other groups were freely estimated and also all parameters were freely estimated across groups.
With Maximum likelihood, this is not sufficient for model identification. In multiple group analysis, we additionally need to constrain at least one factor loading and intercept to be equal across group.

Q1. I wonder how the model is identified with Bayesian, particularly approximate measurement invariance case. My guess is that assigning strong prior distributions to the differences between factor loadings and intercepts with Bayesian works similarly to ML identification method (constraining at least one lambda and intercept). Could you let me know whether this is correct reasoning?

Q2. If my guess is correct in Q1,
with a two group CFA model with Bayesian estimation, I think that a model would be identified when (1) a variance and mean of the reference group is fixed to 1 and 0 , (2) and strong prior distributions are assigned to difference of only one factor loading and intercept (preferably of reference indicator). What do you think?
 Bengt O. Muthen posted on Saturday, May 17, 2014 - 11:23 am
Q1. Yes. If the prior is strong enough, you essentially have the case of exact invariance which we know leads to identification.

Q2. Right. Partial invariance like this is possible in BSEM as well.
 Dmitriy Poznyak posted on Tuesday, June 02, 2015 - 12:16 pm
Hi, Mplus team,

Could you please point me at the example input file for the approximate measurement invariance test for categorical indicators? I would greatly appreciate your input.

Thank you,
 Bengt O. Muthen posted on Tuesday, June 02, 2015 - 4:46 pm
Mplus Web Note 17 has that input.
 Christopher Bratt posted on Friday, June 12, 2015 - 5:27 am

I recently asked Linda M. for an advice on how to define "approximate" in approximate measurement invariance. I use Bayesian estimations for the alignment.

Linda forwarded Tihomir's response:

- I would define approximate invariance as: non-invariance which is not statistically significant or is too small to be of practical importance, i.e., the differences between the parameters are either not statistically significant or too small in magnitude to be of practical significance.

Based on my experience with models using approximate measurement invariance, I still find it difficult to have a clear understanding of what is estimated to be "too smal in magnitude to be of practical significance" (as opposed to loadings that are estimated not to be approximately equal). Also, I don't think the reviewer of my paper would be satisfied with this explanation.

Do Tihomir or Bengt have an explanation that is short/clear enough to be used in a paper?

Kind regards, Christopher
 Tihomir Asparouhov posted on Friday, June 12, 2015 - 9:51 am

The full technical definition is given in the "INVARIANCE ANALYSIS" section, page 5, in

Due to multiple testing and uncertainty about what constitutes practical significance (which of course is subjective and can vary from person to person and application to application), we have used a complicated definition based on multiple tests and low p-values.

Note however - that this is all a by product of the alignment estimation, and the estimation does not depend on that definition. You can choose to define it and use it in a different way.

Our intent however was to define it as exactly that "non-invariance which is not statistically significant or is too small to be of practical importance".

This discussion is very similar in nature to the discussion of "approximate fit" in SEM.

On the other hand, it is conceivable that we need some precise cutoff values in standardized metric (something similar to how EFA cross loadings of less than 0.3 are often considered of lesser practical importance). That would be a good research paper. I don't have a value I can recommend at this point.

 Christopher Bratt posted on Friday, June 12, 2015 - 10:25 am

thanks a lot for the detailed answer!

Keep up the good work.

 Lois Downey posted on Sunday, November 08, 2015 - 5:52 pm
I have some very elementary questions about testing for measurement invariance with BSEM. I'm testing a model with one factor, four ordered categorical indicators, and two groups.

1) Would you please explain the relationship between the "MODEL=xxx" in the ANALYSIS command and the specification of MODEL PRIORS with a DIFF instruction? It seems to be possible to indicate "MODEL=SCALAR" in the ANALYSIS command, either with or without using a MODEL PRIORS statement with a DIFF instruction (with different results, depending upon whether the MODEL PRIORS statement is used). Similarly, I can indicate "MODEL=ALLFREE" in the ANALYSIS command, either with or without a MODEL PRIORS statement with a DIFF instruction (again giving different results, depending upon the presence or absence of the MODEL PRIORS statement). Can you explain the differences between these four combinations of commands?

2) I expected a MODEL=SCALAR indication in the ANALYSIS command, to produce unstandardized loadings and thresholds that were equivalent for my two groups, but it did not. What does MODEL=SCALAR mean in BSEM?

 Bengt O. Muthen posted on Monday, November 09, 2015 - 4:36 pm
1) BSEM taken together with DIFF is a advanced technique and in early stages of learning about it I would recommend using only the input style of UG ex 5.33. This uses MODEL=ALLFREE and MODEL PRIORS with DIFF. In early learning stages I would not use Model=scalar together with DIFF.

2) We would have to see your output to say, but in early learning stages I don't recommend getting into Model=Scalar together with BSEM in the sense of using DIFF.
 Lois Downey posted on Monday, November 09, 2015 - 5:44 pm
OK. Thanks very much.

The example shows how to set the loading differences to near-zero. But I don't see that it shows how to set the threshold differences to near-zero. Is there a way to do that with ordered categorical variables? I made a feeble attempt, but got an error message indicating that the DIFF option is not available for polytomous items. I'm not sure whether to interpret that as an indication of a syntax error on my part, or an indication that it's impossible to manipulate the differences in thresholds between the groups.
 Bengt O. Muthen posted on Wednesday, November 11, 2015 - 11:17 am
Bayes with DIFF for thresholds of polytomous items has not yet been implemented in Mplus.
 Lois Downey posted on Friday, November 13, 2015 - 11:59 am
OK. Got it! Disappointing, but I know that enhancements such as this take time.

I've now used the Bayes estimator to test a two-group model (four factors, 13 ordered categorical indicators) that allows a small amount of variance around zero for the cross-loadings[~N(0,0.005)] and a small amount of variance around zero for the between-group differences of the primary loadings [Do(1,13)DIFF(lam1_#-lam2_#) ~N(0,0.0001)].

The PP p-value for this model = 0.146 (95% CI = -27.815, 93.120). Would it be reasonable to interpret these results as suggesting that the model exhibits METRIC invariance -- even if scalar invariance can't be tested with indicators of this type, using Bayesian modeling?

Thank you.
 Bengt O. Muthen posted on Friday, November 13, 2015 - 5:39 pm
 Lois Downey posted on Thursday, February 11, 2016 - 5:13 pm
In your 11/11/15 response to my 11/9/15 post (above), you indicated that it isn't currently possible to use the DIFF command to constrain between-group differences in thresholds to small non-zero values when the indicators are polytomous. I've now recoded my ordinal indicators into dichotomies and tried the model again.

I have two groups, four factors, and 13 indicators and want to test the fit of a model in which approximate scalar invariance is invoked. I used the following command to limit the size of between-group differences in thresholds:
Do(1,13)DIFF(tau1_#-tau2_#) ~N(0,0.005);

However, the resulting model produced what I would consider to be LARGE between-group differences in some of the thresholds. For example, for one indicator, one of the groups had a threshold that was 41% higher than the threshold for the other group. Would you expect a difference that great when the second parameter in the DIFF statement is 0.005? Or does this suggest that I've made an error somewhere else in the specification?

(I'm also allowing small non-zero values for cross-loadings and residual covariances, and small non-zero between-group differences in primary loadings. The estimated coefficients seem to reflect those constraints appropriately.)

Thanks for you help!
 Bengt O. Muthen posted on Friday, February 12, 2016 - 3:00 pm
The large difference can be due to the fact that you have a large sample and the data says that those thresholds are indeed different.
Back to top
Add Your Message Here
Username: Posting Information:
This is a private posting area. Only registered users and moderators may post messages here.
Options: Enable HTML code in message
Automatically activate URLs in message