StepMix is an open-source Python package for the pseudo-likelihood estimation (one-, two- and three-step approaches) of generalized finite mixture models (latent profile and latent class analysis) with external variables (covariates and distal outcomes). In many applications in social sciences, the main objective is not only to cluster individuals into latent classes, but also to use these classes to develop more complex statistical models. These models generally divide into a measurement model that relates the latent classes to observed indicators, and a structural model that relates covariates and outcome variables to the latent classes. The measurement and structural models can be estimated jointly using the so-called one-step approach or sequentially using stepwise methods, which present significant advantages for practitioners regarding the interpretability of the estimated latent classes. In addition to the one-step approach, StepMix implements the most important stepwise estimation methods from the literature, including the bias-adjusted three-step methods with BCH and ML corrections and the more recent two-step approach. These pseudo-likelihood estimators are presented in this paper under a unified framework as specific expectation-maximization subroutines. To facilitate and promote their adoption among the data science community, StepMix follows the object-oriented design of the scikit-learn library and provides an additional R wrapper.
翻译:StepMix是一个开源的Python包,用于带外部变量(协变量和远端结果)的广义有限混合模型(潜在剖面分析与潜在类别分析)的伪似然估计(一步法、两步法和三步法)。在社会科学的多项应用中,主要目标不仅是对个体进行潜在类别聚类,还在于利用这些类别构建更复杂的统计模型。这些模型通常由两部分组成:将潜在类别与观测指标关联的测量模型,以及将协变量和结果变量与潜在类别关联的结构模型。测量模型和结构模型可联合估计(即所谓的一步法),或采用逐步方法顺序估计——后者在提升所估计潜在类别的可解释性方面对实践者具有显著优势。除了一步法之外,StepMix还实现了文献中最关键的逐步估计方法,包括带有BCH和ML校正的偏差调整三步法以及更新的两步法。本文在统一框架下将这些伪似然估计量定义为特定的期望最大化子程序。为促进数据科学界的采用,StepMix遵循scikit-learn库的面向对象设计,并额外提供R语言封装接口。