心理学建模基本

  • 在心理学、认知科学、神经科学中,如何构建formal理论?一份实用入门操作指南
  • 拟合-建模。当然可以选择两个或以上的模型对比,并适当调整参数,使模型效果不断优化。
  • 模型评估。模型效果的评估有两个方面:
    • 一是模型是否解决了需要解决的问题(是否还有没有注意和考虑到的潜在问题需要解决);
    • 二是模型的精确性(误差率或者残差是否符合正态分布等)。
  • 根据建模的对象:
    • 心理构建之间的建模:如常见的中介、调节、结构方程、交叉滞后等,都是对不同构建之间的关系进行建模
    • 认知过程的建模:认知计算建模,如对决策过程进行建模。

拟合(Fitting functions to data points)

  • 适用情况:已有一批观察数据,如某地气温(Y)随着月份(X)的变化数据,使用数据组建模寻找简单的因果变量之间的数量关系, 从而对未知的情形作预报(天气预报)。

拟合步骤

  1. 第一步先通过肉眼观察。具体就是先用代码画出散点图,观察数据分布的大体规律,猜测其大体符合的统计模型,例如是 简单的线性关系,还是二次元或者幂函数
  2. 第二步再通过工具包进行模型拟合。

例子:曲线拟合(curve fitting)

  • 定义:曲线拟合是指选择适当的曲线类型来拟合观测数据,并用拟合的曲线方程分析两变量间的关系。
  • 工具包:MATLAB curve fit tool (cftool),在LOOP中调用该工具包即可以得到每个被试模型的参数。
  • 命令行:https://www.mathworks.com/help/curvefit/fit.html

认知计算建模

  1. 强化学习模型(Reinforcement learning ,RL)。强化学习模型(Reinforcement Learning)是一种机器学习方法,用于训练智能体(agent)在与环境进行交互的过程中,通过试错和奖励信号来学习最优的行为策略。在强化学习中,智能体通过观察环境的状态,采取不同的行动,并通过与环境的交互获得奖励或惩罚。目标是使智能体通过学习逐步优化其行为,以最大化长期累积奖励。
    • 在一个典型的强化学习(RL)问题中,有一个学习-决策制定者(有学习和决策两个角色),称为智能体(agent)。与之相互作用的周围环境称为环境(environment)。
    • 对智能体和环境的交互进行建模,即对基于环境反馈的个体自我学习过程(intrapersonal learning)进行建模
    • 可以用之前学习试次的模型,来预测下一个试次的选择
    • https://towardsdatascience.com/introduction-to-reinforcement-learning-markov-decision-process-44c533ebf8da
  2. 影响学习模型(Influence learning models)。影响学习模型(Influence Learning Models)是一种社会学习模型,用于描述人类在群体中相互影响和学习的过程。影响学习模型关注个体之间的相互作用,以及这种相互作用如何影响和塑造个体的行为和决策。影响学习模型通常关注社会网络、信息传播和意见形成等方面的研究。
    • 对人际之间的影响进行建模(合作vs.竞争),输出(反馈)和输入可能都来自人类个体的社交信息。
    • 我决策的结果会如何影响到他人的决策?
  3. 在方法上,强化学习模型通常使用马尔可夫决策过程(Markov Decision Process,MDP)来建模环境和智能体(agent)的互动,通过值函数、策略优化等方法进行学习和决策。而影响学习模型则使用社会网络分析、信息传播模型、博弈论等方法来研究个体之间的相互作用和影响。总的来说,强化学习模型注重个体与环境的交互学习,而影响学习模型注重个体在群体中的相互作用和学习过程。两者在学习理论和方法上有所不同,但都对学习和决策的过程提供了有价值的研究视角。

常见数据模型及其心理学应用

1. 广义线性模型(Generalized Linear Model, GLM)

  1. 定义
  2. 前提假设:
  3. 公式
  4. 应用场景:fmri数据分析(个体分析+组分析)

2. 线性混合模型(Linear Mixed Model,LMM)

  1. 定义: Linear Mixed-effects Models (LMMs) are also known as hierarchical or multilevel models (Snijders & Bosker, 2011).
  2. 处理对象:连续线性因变量
  3. 数据结构(hierarchical structure): 1. Participant-level observations. 被试层次间数据之间不独立:responses from children in the same class or geographical region will be correlated) 2. Trial-level observations. 试次间数据不独立:the responses to stimuli from a given participant will be correlated)
  4. 公式
  5. 应用场景:重复测量

3. 广义线性混合模型(Generalized Linear Mixed Model,GLMM)

  1. 定义:广义线性混合模型GLMM,可以看做是线性混合模型LMM的扩展形式,使得因变量不再要求满足正态分布; 也可以看作是GLM的扩展形式,使得可以同时包含固定效应和随机效应。
  2. 处理对象:因变量可以是连续变量, 也可以是分类变量 ( 包括二项、 有序多分类、 无序多分类等) , 相关数据 ( correlated data) 、 纵向观测数据 ( longitudinal data) 、 过度离散的数据, 随机效应变量之间既可以独立的也可以相关。
  3. 数据结构(hierarchical structure):与LMM相同
  4. 应用场景:不独立的数据。除了重复测量这一主要因素之外,心理学实验的采样样本往往高度同质(如男女大学生)。 来自同一所学校甚至同一年级的学生内部必定比完全随机的样本存在着更高的内部相关。医学研究中经常会遇到不独立的数据, 例如: 生活在相同 家庭 ( 或学校) 的孩子, 在同一诊所治疗的病人, 同一社区居住的居民。在同一类中的观测, 享有相同或相似的背景使得类内观测不独立[2]。

4. 聚类(K-Means Clustering)

  • 性质:无监督学习的聚类方法,数据驱动
  • 算法思想:以空间中k个点为中心进行聚类,对最靠近他们的对象归类。通过迭代的方法,逐次更新各聚类中心的值,直至得到最好的聚类结果。
  • 心理学应用:
    • Zakharov, K. (2016). Application of k-means clustering in psychological studies. Tutorials in Quantitative Methods for Psychology, 12(2), 87-100.
    • Kmeans算法可以根据数据内部不同亚类的相似性将一组数据进行分类,经常用于人格相关问卷的编制之中。例如确定某个人格特质的维度。

5. 支持向量机(Support Vector Machine)

  • 性质:有监督学习的预测方法
  • 算法思想:利用训练集数据(training exemplar)进行练习,得出训练分类器(classifier)或者说学习机(learning machines);然后用测试集数据进行模型评估
  • 应用:认知神经科学的MVPA分析,通过多个不同体素的神经信号判断心理加工模式

交叉验证(cross-validation)

在机器学习里,通常来说我们不能将全部用于数据训练模型,否则我们将没有数据集对该模型进行验证,从而评估我们的模型的预测效果。为了解决这一问题,有如下常用的方法:

  1. The Validation Set Approach。第一种是最简单的,也是很容易就想到的。我们可以把整个数据集分成两部分,一部分用于训练,一部分用于验证,这也就是我们经常提到的训练集(training set)和测试集(test set)。
  2. 交叉验证(cross-validation)
    • LOOCV(Leave-one-out cross-validation)
    • K折交叉验证(K-fold Cross Validation)

6. 决策树(Decision Tree)

  • 性质:有监督学习的分类方法
  • 心理学应用:

7. 人工神经网络(Artificial Neural Networks)

8. 递归神经网络(recurrent neural network)

参考文献

  1. GEE、GLMM和MLM分析卫生重复测量资料的效果比较
  2. 广义线性混合效应模型及其应用
  3. Tuerlinckx, F., Rijmen, F., Verbeke, G., & De Boeck, P. (2006). Statistical inference in generalized linear mixed models: A review. British Journal of Mathematical and Statistical Psychology, 59(2), 225-255.
  4. Lo, S., & Andrews, S. (2015). To transform or not to transform: Using generalized linear mixed models to analyse reaction time data. Frontiers in psychology, 6, 1171.
  5. Meteyard, L., & Davies, R. A. (2020). Best practice guidance for linear mixed-effects models in psychological science. Journal of Memory and Language, 112, 104092.
  6. Silk, J. S., Shaw, D. S., Forbes, E. E., Lane, T. L., & Kovacs, M. (2006). Maternal depression and child internalizing: The moderating role of child emotion regulation. Journal of Clinical Child and Adolescent Psychology, 35(1), 116-126.

网络分析

  1. 探索性分析是科学研究重要第一步,通过基于网络的探索分析,我们可以更加直观地理解数据变量之间的 关系。探索性分析的三个基本步骤:
    1. 变量之间是否存在相关
    2. 变量之间的具体相关关系(中介,SEM,网络分析等等),将复杂的相关关系可视化(高斯图模型,GGM)
    3. 如果数据中包括多个分组(年龄,性别,人格等),可以分析亚组之间的差异
  2. 网络分析可以用以纵向数据,基因数据等大数据的探索性分析(exploratory analyses )。 高斯图解模型不同于基于偏相关的典型探索性分析(如结构方程模型SEM)。值得注意的是,一个高斯图形模型在一个图中显示了项目和变量之间的关系,这比一个大的部分相关表更容易解释,特别是当小的相关关系通过glasso算法被强制为零时。

理论

  1. Why do we need it? To gain insight into complex phenomena requires characterizing the relationships among a large number of variables.
  2. Gaussian graphical models explicitly capture the statistical relationships between the variables of interest in the form of a graph. 即围绕高斯分布的变量去研究各个变量的联系。A Gaussian graphical model comprises of a set of items or variables, depicted by circles, and a set of lines that visualize relationships between the items or variables (Lauritzen, 1996; Epskamp et al., 2018)
  3. Normal就是Gaussian,同义词,指正态分布,一般 我们会把很多变量假设为正态分布的

方法

  1. 基本分析方法与图论没有差别。都是基于点(nodes)和边(edges)之间的关系。主要就是点与点之间边的连接强度。相关越强,边连接越强,图中边就画得越清晰或粗大。
  2. 统计分析,需要将相关较弱(虚假相关)的边抹掉,保留相关强度达到一定阈限的边,从而得到稀疏矩阵(sparse matrix)。 在高斯图形模型中,glasso算法是获得稀疏图的常用方法(Friedman等,2008)。 该算法将较小的部分相关系数强制为零,从而引起稀疏性。图中的稀疏程度由调整参数控制,并且调整参数的不同值会导致不同的图
  3. 数据分析基本步骤:
    1. 处理数据集中的缺失数据:To handle missing data, we adopt a full information maximum likelihood (FIML) procedure using the corFIML function from the R package psych (Revelle, 2018).
    2. 求得指标之间的相关矩阵
    3. 将相关矩阵作为输入,R glasso 来做GGM估计。网络可视化:R qgraph
    4. 如果是包含时间信息的纵向数据,就用R里面的mlVAR软件包,构建时序网络。

结果解释

  1. 描述每个网络的概括。最强的效应是谁,autoregressive effects (自相关效应)?。例如纵向数据中,前测的抑郁指标跟后测的抑郁指标高度相关。 2.

类型

1. 时序网络(temporal networks)

  1. 介绍 2020年网络科学的4个前沿方向:从时序网络到高阶网络
  2. 适用于纵向数据

2. 同时网络(contemporaneous network)

  1. 适用于横向数据

3. 被试间网络

Mplus

基本术语

  1. 观察变量(item, indicator, observed, measured or manifest variables)。这些变量可以直接观察、测量,并录入到数据分析软件(SPSS)中,例如年龄、体重、大五人格神经质得分。
  2. 潜变量(dimension, latent, unobserved varibles, factor or construct)。
    • 无法直接进行测量,需要由观察变量来加以衡量,如信任、爱情、人格等抽象的心理建构。
    • 潜变量用来解释观察变量,潜变量之间的“因果关系”或“相关”则为研究的假设
  3. 误差(error),指测量变量被估计后无法解释的误差
  4. 干扰(disturbance):潜变量经过估计后,无法解释的方差。误差=干扰=残差。
  5. 外生变量(exogenous)(自变量):
    • 用来预测变量的变量(自变量),本身不具有测量误差,分为潜在和观察变量两种
    • 模型图中没有任何箭头指向的变量即为外生变量。可以理解为其为大树的主干,箭头只往外生长,所以叫外生变量。
  6. 内生变量(endogenous)(因变量):
    • 被预测的变量,本身具有测量误差的变量。
    • 模型图中被箭头指向的变量即为内生变量。
  7. 路径:外生到内生之间的路径,构成了结构。

数据导入

  • SPSS导出为dat格式。也支持.csv或者.txt格式。
  • 注意不要保存变量名。数据本身必须只有数字。变量名称在mplus语句中按照列的顺序依次指定。缺失值用-999等特殊数字来指定。
  • 怎样快速将数据文件导入Mplus?推荐使用N2MPLUS软件。

十大命令

  1. Title (optional):语句标题
  2. Data (necessary):数据文件路径
    • FILE IS D:\MPULS\example.dat
    • Type is 数据形态(一般分析不需要指定,默认即可)
    • LISTWISE=ON; 可选项
  3. Variable (necessary):
    • Names are:所有变量名称。技巧使用“-”表示连续,例如item1-item10。注意变量名称大小写敏感;而命令大小写无所谓。
    • Usevariables are:使用变量名称
    • Missing are all (-999):根据特殊数值指定缺失值
    • Useobservations is (optional): 选择分析所需的某一群体观察值
    • Categorical or NOMINAL are:指定变量为类别变量或顺序变量。该命令仅在用分类变量做因变量时才需要设置,而分类变量做协变量的时候不能设置,也不需要。注意,如果设置了此项,那么Analysis的estimator就要设置为WLSM or WLSMV。
  4. Model (necessary):描述变量之间的结构关系
    • BY 测量模型(mesurement model)用BY,主要用于定义潜变量结构construct by items。这里主要用作问卷结构分析。例如大五人格问卷,extraversion BY e1 e2 e3-e10。这样可以检验该问卷的内部效度怎么样。一般分析心理变量之间的关系,而非题目-心理变量之间关系的时候,不用BY。
    • ON 结构模型(structural model)用ON: Y ON X1 X2 …结构模型主要用来分析心理变量之间的因果关系。
    • WITH 潜在结构变量(残差)以及相关关系用WITH;X1 WITH X2。一般而言,with表示A correlate with B,反映相关关系;而ON表示Y regresses on X,反映的是具有指向性的因果关系。反映在模型图上,with是双箭头,On是单箭头。
  5. Define (optional):数据转换,也就是定义新变量。例如X3= X1 + X2
  6. Analysis (default)。主要涉及的是参数估计方法,常规分析一般默认。对于纵向研究数据,需要考虑不同的拟合算法,如:
    • TYPE = GENERAL(默认)
    • TYPE=MIXTURE (for categorical latent variable models)
    • TYPE=TWOLEVEL or THREELEVEL (for multilevel models) 注意这里的two or three level指的是层次数目,并非cluster数目。每个层次的cluster数目,一般至少20个。
    • TYPE=EFA (for 探索性因子分析)
    • Estimator,有如下几种算法: | 缩写 | 全称 | 使用因变量| |—-|—-|—-| | ML | -极大似然估计(默认) |因变量为连续变量 | | MLM | 极大似然估计伴标准误和均值矫正的卡方检验 |非正态数据 | | MLMv | 极大似然估计伴标准误和均值方差矫正的卡方检验 |非正态数据 | | MLR | 稳健极大似然估计 |适用于非正态、非独立数据.可以与TYPE=COMPLEX以及cluster命令合用(可选)。Complex适合多层数据中,某一层有至少20个数据源(cluster),例如不同的学校、公司、地区等等。以学生的嵌套数据为例,cluster is ID_Schl Id_Class ; | 其他还有MLF\MUM\WLS\WLSM(因为变量为命名或分类变量)\WLSMV(因为变量为命名或分类变量)\ULS\GLS
  7. Output (default):
    • SAMPSTAT(常用)—提供样本统计量及对应的标准误。
    • STANDARDIZED(常用)—提供标准化解,standardized总共有三种形式:stdyx stdy std。第一种stdyx是完全标准化,指(内生及外生变量)都标准化,第二种stdy是适用于外生变量(自变量或协变量)为二分类别(如性别),只有内生变量(如智商)标准化,第三种std只是潜变量标准化,不常用。我们一般使用STDYX的结果 。
      • For models without covariates use StdYX. For structural parameters, StdYX is the same as Std.
      • For models with covariates, use StdYX if the covariate is continuous, use StdY if the covariate is binary.
    • Cinterval 要求报告参数置信区间值
    • Tech1-Tech14: 14个技术报告
  8. Savedata (optional):命令用于保存分析数据,辅助数据和各种分析结果。如:SAVEDATA: File is D:\2类.txt ;
  9. Plot (optional):绘图结果在graph菜单下view graph查看。
    • plot1 绘制样本的直方图,散点图和样本均值
    • plot2 提供项目特征曲线,信息曲线等
    • plot3 潜变量条件概率
    • series = y1-y3(q); 用于纵向数据中指定绘图,否则绘图图标不亮
  10. Motecarlo (optional)命令用于指定蒙特卡罗模拟研究的详细信息

Mplus代码库

  1. 官方Mplus代码-部分配有数据
  2. Mplus中介和调节代码库-提供了96个Mplus模型可供参考。前81项除了显变量建模语句外,还提供了潜变量建模语句参考。对于每个模型,网站都提供了详细的概念图、统计模型图、结构方程式以及Mplus代码

Mplus多重插补法(multiple imputation,MI)

  • 多重插补(Multiple Imputation)由Rubin(1987)最早提出,假设在数据随机缺失情况下,用两个或更多能反映数据本身概率分布的值来填补缺失值的方法。一个完整的MI包含三步:数据填补(Imputation Phase),计算(Analysis Phase)和汇总(Pooling Phase)。数据填补是关键一步,对每一个缺失数据填补m( m > 1)次。每次填补将产生一个完全数据集,以此类推,共产生m个完全数据集。第二步,对每一个完全数据集采用标准的完全数据分析方法进行分析。第三步,将所每次分析得到的结果进行综合,得到最终的统计推断。根据数据缺失机制、模式以及变量类型,可分别采用回归、预测均数匹配( predictive mean matching, PMM )、趋势得分( propensity score, PS )、Logistic回归、判别分析以及马尔可夫链蒙特卡罗( Markov Chain Monte Carlo, MCMC) 等不同的方法进行填补。与FIML不同,MI采用填补缺失值的方法。MI要求数据缺失为MAR,如果采用ML估计同样要求数据分布符合多元正态分布假设,但研究发现违反正态性假设对MI参数精确性影响不大(Demirtas, Freels, & Yucel, 2008; Schafer, 1997)。另外一个影响估计精确性的因素是缺失率,Demirtas等(2008)的研究发现缺失率高达25%仍能得到精确的参数估计结果。
  • 多重插补(Multiple Imputation)是一种基于重复模拟的处理缺失值的方法。一个完整的多重填补法包括三步:数据填补,计算和汇总。数据填补是关键一步。
    1. 数据填补。MI从一个包含缺失值的数据集中生成一组完整的数据集。每个数据集中的缺失数据用蒙特卡洛方法来填补。
    2. 使用第一步插补的数据集估计并输出汇总结果。
  • 在具体使用MI时需要考虑m的次数,类似Bootstrapping抽样,理论上来说m的数量越多估计越精确,但太大的数量会增加计算负荷,模拟研究指出m = 20在多数情况下是合适的(Graham, Olchowski, & Gilreath, 2007)。在Mplus中执行MI需要两步,第一步数据插补,第二步使用第一步插补的数据集估计计算并输出汇总结果,两步的Mplus语句呈现在表9-6中。
  • 除了Mplus,还可以使用R语言的mice包来执行这些操作。mice包通过mice()函数填补数据,生成完整数据集(默认5个);然后通过with()函数对每个数据集应用统计模型;最后用pool()函数对不同数据集结果进行汇总。mice包
  • Mplus中的MI是通过贝叶斯估计(Bayesian estimation)来实现的。
  • Mplus中MI的代码1-官网 Mplus中MI的代码2-百度经验 Mplus中MI的代码3

参考文献

  1. Epskamp, S., et al. (2018). “The Gaussian graphical model in cross-sectional and time-series data.” Multivariate Behavioral Research 53(4): 453-480.
  2. Meng, J., Wang, X., Wei, D., & Qiu, J. (2020). State loneliness is associated with emotional hypervigilance in daily life: A network analysis. Personality and Individual Differences, 165, 110154.
  3. 高斯图模型 Gaussian Graphical Model
  4. Bhushan, N., Mohnert, F., Sloot, D., Jans, L., Albers, C., & Steg, L. (2019). Using a Gaussian graphical model to explore relationships between items and variables in environmental psychology research. Frontiers in psychology, 10, 1050.
  5. Friedman, J., Hastie, T., and Tibshirani, R. (2014). glasso: Graphical Lasso- Estimation of Gaussian Graphical Models. R package version 1.8.
  6. 交叉验证
  7. 不用翻书,MPLUS基础代码全在这里(二)