潜类别模型(Latent Class Modeling)
1.潜类别模型概述
潜在类别模型(Latent Class Model, LCM; Lazarsfeld & Henry, 1968)或潜在类别分析(Latent Class Analysis, LCA)是通过间断的潜变量即潜在类别(Class)变量来解释外显指标间的关联,使外显指标间的关联通过潜在类别变量来估计,进而维持其局部独立性的统计方法(见图1-1)。其基本假设是,外显变量各种反应的概率分布可以由少数互斥的潜在类别变量来解释,每种类别对各外显变量的反应选择都有特定的倾向(邱皓政,2008; Collins, & Lanza, 2010)。与潜在类别分析非常相似的是潜在剖面分析(Latent Profile Analysis, LPA),区别在于前者处理分类变量,后者分析连续变量。
图1-1 LCM示意图
LCM是根据个体在外显指标上的反应模式即不同的联合概率来进行参数估计的统计方法。例如,一份数学测验有10个判断题,数学能力高的个体可能全部正确的回答所有题目,能力低的学生只能正确回答容易的题目,能力中等的学生可能回答全部容易和部分困难的题目。不同能力水平的学生在正确回答不同难易水平的题目时表现出某种相似性,因此通过学生回答题目的情况可以将其分为不同的能力水平组。LCM分析逻辑的就是根据个体在外显项目上的反应模式将其分类。
1.1数学表达式
(1)潜类别分析模型
可以从方差分析的角度理解LCM。方差分析的特点是将方差分解成不同的来源,常见的有组间vs.组内和被试间vs.被试内。在LCM中,可以将方差分解为类别内和类别间(Sterba, 2013)。
根据局部独立性(local independence)假设,类别内的任意两个观测指标间的关联已通过潜类别变量解释,所以它们之间已没有关联。根据独立事件联合发生的概率等于单独发生概率之积的原理,在每个类别内部,多个两点计分项目的联合概率可以表示为:
上式中, 表示个体i在指标j的两个选项y=1或y=0的得分。下标j表示2点计分的指标,c为潜类别变量,有k个水平。
同时考虑多个类别水平时,上式扩展为:
表示某一类别组k所占总体的比率,亦称潜类别概率。
(2)潜剖面分析模型
当观测指标为连续型变量时,LCM称作潜在剖面分析(Latent Profile Modeling, LPM)。此时,将连续指标的方差分解为类别/剖面间和类别/剖面内方差(Lazarsfeld & Henry, 1968):
其中 和 为剖面k内指标i的均值和方差。 为类别概率,即每个类别个体占全体的比例。当满足局部独立性和同质假设时,上式简化为:
1.2 类别概率和条件概率
在LCM中,有两个非常重要的参数:潜类别概率和条件概率(Conditional Probability)。潜在类别概率类似与FA中的解释方差比例。在FA中,解释方差比例说明每个因子在解释数据时所占的分量。LCM的潜在类别概率类则用于将样本分成不同比例的类别。换句话说,潜在类别概率就是用于说明各个类别的人数比例。例如,根据1000个被试在4个观测指标上的得分情况将其分成3个潜在类别,潜在类别概率为70%,25%和5%,表示第1类有700个被试占70%,第2类有250个被试占25%,第3类有50个被试占5%。
条件概率指潜类别组内的个体在外显指标上的作答概率。例如,类别潜变量C有3个类别C1,C2和C3,外显指标A有3个选项,C1的条件概率就是计算C1内的个体在A的三个选项上的选择比例。依次类推,C2和C3也可以计算各自在A上的条件概率,共9个(每个类别有三个)。由于T1内的个体必然在A的三个不同选项的某个特定选项上选择,所以类别内的条件概率总和等于1,公式如下。
表1-2中呈现了下文探索性LCA分析时4个类别在前5个指标选项1上的条件概率和潜类别概率。
表1-2条件概率和类别概率
潜类别 |
条件概率 |
潜类别概率 |
||||
T1 |
T2 |
T3 |
T4 |
T5 |
||
C1 |
.390 |
.435 |
.276 |
.184 |
.182 |
.2054 |
C2 |
.903 |
.963 |
.951 |
.872 |
.943 |
.2946 |
C3 |
.493 |
.710 |
.468 |
.339 |
.538 |
.3357 |
C4 |
.739 |
.790 |
.883 |
.551 |
.883 |
.1643 |
注:T1-T5为五个项目;由于每个项目只有两个选项所以表中只呈现了在一个选项上的条件概率,在第二个选项上的条件概率为1减表中数值。
条件概率与因子负荷类似,表达潜变量与外显变量之间关系的强弱。各潜在类别的概率总和以及每个外显变量的条件概率总和都为1,这是LCA模型的基本限制条件;也可以根据特定研究的相关理论对参数进行限定。
一旦最优的LCA模型拟合成功,就需要将每个个体归入不同的潜在类别。换句话说,就是确定每个个体的潜类别属性(Class Membership)。在LCA中,采用的分类依据是贝叶斯后验概率(Posterior Probability),公式如下。
后验类别概率是根据个体的作答类型,在LCA拟合后估计得来,其值表示个体属于某一类别的概率。根据个体后验概率的最大值将其归入特定类别。例如,某个体X在四个类别上的后验概率分别为.80, .10, .05和.05。根据此值,X在第一类别中的概率值最高,所以应该将归入第一类。在Mplus中,后验概率和个体分类如下命令获得:
表1 LCM分类概率的Mplus语句
SAVEDATA: FILE=ptsd-lca-4.txt;(保存文件名)。 SAVE=cprob;(要求报告后验概率)。 |
潜类别模型(Latent Class Modeling)的更多相关文章
- R数据分析:潜类别轨迹模型LCTM的做法,实例解析
最近看了好多潜类别轨迹latent class trajectory models的文章,发现这个方法和我之前常用的横断面数据的潜类别和潜剖面分析完全不是一个东西,做纵向轨迹的正宗流派还是这个方法,当 ...
- mplus数据分析:增长模型潜增长模型与增长混合模型再解释
混合模型,增长混合模型这些问题咨询的同学还是比较多的,今天再次尝试写写它们的区别,希望对大家进一步理解两种做轨迹的方法有帮助. 首先,无论是LCGA还是GMM,它们都是潜增长模型的框框里面的东西: L ...
- 海量数据挖掘MMDS week4: 推荐系统之隐语义模型latent semantic analysis
http://blog.csdn.net/pipisorry/article/details/49256457 海量数据挖掘Mining Massive Datasets(MMDs) -Jure Le ...
- LFM隐语义模型Latent Factor Model
实际应用 LFM 模型在实际使用中有一个困难,就是很难实现实时推荐.经典的 LFM 模型每次训练都需要扫描所有的用户行为记录,并且需要在用户行为记录上反复迭代来优化参数,所以每次训练都很耗时,实际应用 ...
- 推荐系统--隐语义模型LFM
主要介绍 隐语义模型 LFM(latent factor model). 隐语义模型最早在文本挖掘领域被提出,用于找到文本的隐含语义,相关名词有 LSI.pLSA.LDA 等.在推荐领域,隐语义模型也 ...
- Stat3—因子分析(Factor Analysis)
题注:主成分分析分析与因子分析也有不同,主成分分析仅仅是变量变换,而因子分析需要构造因子模型.主成分分析:原始变量的线性组合表示新的综合变量,即主成分:因子分析:潜在的假想变量和随机影响变量的线性组合 ...
- PCA主成分分析 R语言
1. PCA优缺点 利用PCA达到降维目的,避免高维灾难. PCA把所有样本当作一个整体处理,忽略了类别属性,所以其丢掉的某些属性可能正好包含了重要的分类信息 2. PCA原理 条件1:给定一个m*n ...
- R语言实战(九)主成分和因子分析
本文对应<R语言实战>第14章:主成分和因子分析 主成分分析(PCA)是一种数据降维技巧,它能将大量相关变量转化为一组很少的不相关变量,这些无关变量成为主成分. 探索性因子分析(EFA)是 ...
- Latent Semantic Analysis (LSA) Tutorial 潜语义分析LSA介绍 一
Latent Semantic Analysis (LSA) Tutorial 译:http://www.puffinwarellc.com/index.php/news-and-articles/a ...
随机推荐
- HDU 1969 精度二分
Pie Time Limit: 5000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submiss ...
- 知识梳理——CSS篇
css引入方法 内嵌 <head> <meta charset="UTF-8"> <title>Document</title> & ...
- java实现的18位身份证格式验证算法
公民身份号码是特征组合码,由十七位数字本体码和一位数字校验码组成.排列顺序从左至右依次为:六位数字地址码,八位数字出生日期码,三位数字顺序码和一位数字校验码.1.地址码表示编码对象常住户口所在县(市. ...
- windows下使用python的scrapy爬虫框架,爬取个人博客文章内容信息
scrapy作为流行的python爬虫框架,简单易用,这里简单介绍如何使用该爬虫框架爬取个人博客信息.关于python的安装和scrapy的安装配置请读者自行查阅相关资料,或者也可以关注我后续的内容. ...
- Sizzle源码分析:三 筛选和编译
好了有了之前的词法分析过程,现在我们来到select函数来,这个函数的整体流程,前面也大概说过: 1. 先做词法分析获得token列表 2. 如果有种子集合直接到编译过程 3. 如果没有种子集合并且是 ...
- Xilinx Microblaze Bootloader
作者:Hello,Panda 一般而言,Xilinx Microblaze会被用来在系统中做一些控制类和简单接口的辅助性工作,比如运行IIC.SPI.UART之类的低速接口驱动,对FPGA逻辑功能模块 ...
- rabbitmq学习(三):rabbitmq之扇形交换机、主题交换机
前言 上篇我们学习了rabbitmq的作用以及直连交换机的代码实现,这篇我们继续看如何用代码实现扇形交换机和主题交换机 一.扇形交换机 1.生产者 /** * 生产者 */ public class ...
- Yocto使用小技巧
1. 借助Yocto编译模块 SRC := mytest obj-m := $(SRC).o KDIR := /media/Yocto/build/tmp/work/poky-linux/linux- ...
- flow 编写flow-typed 定义(官方文档)
此为官方文档,因为墙的问题,记录下来: Before spending the time to write your own libdef, we recommend that you look to ...
- UEditor自定义toolbar工具条
使用ueditor的同学都知道,ueditor里有很多功能,很全面,但有时候我们的编辑器不需要太多的功能,比如前台评论或者留言,就不需要这么多功能了,那我们怎么去定制自己想要的工具呢?官方给出了两个方 ...