1 总体的kkk-因子模型
1.1 模型设定
x∼(μ,Σ)x\sim(\mu,\Sigma)x∼(μ,Σ),rank(Σ)=r\text{rank}(\Sigma)=rrank(Σ)=r,固定k<rk\lt rk<r,则kkk因子模型的设定为
x=Af+μ+ϵ
x=Af+\mu+\epsilon
x=Af+μ+ϵ
其中fff为kkk维随机向量,称为共同因子(common factor),AAA为d×kd\times kd×k的线性变换,称为因子载荷(factor loading)。
一般会做出这些假设:f∼(0,Ik)f\sim(0,I_k)f∼(0,Ik),ϵ∼(0,Ψ)\epsilon\sim(0,\Psi)ϵ∼(0,Ψ)(其中Ψ\PsiΨ为对角矩阵),Cov(f,ϵ)=0k×d\text{Cov}(f,\epsilon)=0_{k\times d}Cov(f,ϵ)=0k×d。
有的文献中会假设Var(f)=Φ\text{Var}(f)=\PhiVar(f)=Φ,Φ\PhiΦ为对角矩阵,在这里我们假设它是球形的。在我们的假设下,我们有
Σ=AA′+Ψ
\Sigma=AA'+\Psi
Σ=AA′+Ψ
我们可以看Σ\SigmaΣ和AA′AA'AA′的各元素的接近程度,定义AA′AA'AA′的对角线元素τjj=∑l=1kajlajl\tau_{jj}=\sum_{l=1}^{k} a_{jl} a_{jl}τjj=∑l=1kajlajl为第jjj个communality(共同性),它满足σj2=σjj=τjj+ψj\sigma^2_j=\sigma_{jj}=\tau_{jj}+\psi_jσj2=σjj=τjj+ψj,而对于Σ\SigmaΣ的非对角线元素有σjm=τjm\sigma_{jm}=\tau_{jm}σjm=τjm。
如果用一个正交k×kk\times kk×k矩阵EEE,做A~=AE\tilde A=AEA~=AE,f~=E′f\tilde f=E'ff~=E′f,那么我们依然有
x=A~f~+μ+ϵ
x=\tilde A\tilde f+\mu+\epsilon
x=A~f~+μ+ϵ
它也是xxx的一个kkk-因子模型,也同样满足上文的那些假设,这说明因子模型不是唯一的。并且,如果没有额外的信息,我们想只利用Σ\SigmaΣ就求解出因子和载荷是不可能的,下面的例子就说明了这个问题。
1.2 案例
假设有222维随机向量xxx,Σ=[1.250.50.50.5]\Sigma=\left[\begin{matrix}1.25 &0.5\\0.5&0.5\end{matrix}\right]Σ=[1.250.50.50.5],假设单因子模型为
x=[a1a2]f+[ϵ1ϵ2]
x = \left[\begin{matrix}a_1\\a_2\end{matrix}\right] f+ \left[\begin{matrix}\epsilon_1\\\epsilon_2\end{matrix}\right]
x=[a1a2]f+[ϵ1ϵ2]
这里fff为标量。
根据上文的推导,我们可以得出一些结论。如AA′AA'AA′的非对角线元素就是Σ\SigmaΣ的非对角线元素,即a1a2=0.5a_1 a_2=0.5a1a2=0.5,而AA′AA'AA′的对角线元素必定小于Σ\SigmaΣ的对角线元素,即a12<σ11=1.25a_1^2\lt \sigma_{11}=1.25a12<σ11=1.25,a22<σ22=0.5a_2^2\lt \sigma_{22}=0.5a22<σ22=0.5。
但是,我们无法得出具体的AAA,比如我们可以取[a1a2]=[10.5]\left[\begin{matrix}a_1\\a_2\end{matrix}\right]=\left[\begin{matrix}1\\0.5\end{matrix}\right][a1a2]=[10.5],也可以取[a1∗a2∗]=[3/42/3]\left[\begin{matrix}a^*_1\\a^*_2\end{matrix}\right]=\left[\begin{matrix}3/4 \\2/3\end{matrix}\right][a1∗a2∗]=[3/42/3],这些AAA都是可行的。也就是说,在没有额外信息或使用某些准则时,我们无法只利用Σ\SigmaΣ解出AAA。
2 一些选择AAA的准则
在1.21.21.2中,我们给出了一个案例,说明想要选择AAA的解,必须要借助一些准则。这里介绍两种准则。
2.1 最小化Ψ\PsiΨ准则
我们可以选择使Ψ\PsiΨ更小的AAA。由于Ψ\PsiΨ是对角矩阵,可以直接用它的迹来表示大小。
tr(Ψ)=0.25+0.25=0.5\text{tr}(\Psi)=0.25+0.25=0.5tr(Ψ)=0.25+0.25=0.5,tr(Ψ∗)=1116−118=0.7431\text{tr}(\Psi^*)=\dfrac{11}{16}-\dfrac{1}{18}=0.7431tr(Ψ∗)=1611−181=0.7431,因此,可以选择[a1a2]=[10.5]\left[\begin{matrix}a_1\\a_2\end{matrix}\right]=\left[\begin{matrix}1\\0.5\end{matrix}\right][a1a2]=[10.5]。
2.2 Varimax准则
Kaiser(1958)提出了另一个准则varimax criterion:记ajla_{jl}ajl为d×kd\times kd×k矩阵AAA的第jjj行、lll列元素,他们定义
VC(A)=∑l=1k[1d∑j=1dajl4−(1d∑j=1dajl2)2]
VC(A) = \sum_{l=1}^{k}\left[\dfrac{1}{d}\sum_{j=1}^{d} a_{jl}^4-\left(\dfrac{1}{d}\sum_{j=1}^{d}a_{jl}^2\right)^2\right]
VC(A)=l=1∑k⎣⎡d1j=1∑dajl4−(d1j=1∑dajl2)2⎦⎤
式子看起来很复杂,但我们可以理解成,先将AAA的所有元素做平方,然后计算某一列上的元素的方差,最后再对所有列加总。
对1.21.21.2的案例进行计算,可以得到VC(A)=0.1406VC(A)=0.1406VC(A)=0.1406,VC(A∗)=0.0035VC(A^*)=0.0035VC(A∗)=0.0035,如果我们需要VC越大越好的载荷矩阵,就选择[a1a2]=[10.5]\left[\begin{matrix}a_1\\a_2\end{matrix}\right]=\left[\begin{matrix}1\\0.5\end{matrix}\right][a1a2]=[10.5]。尽管在这里两种方法选出的矩阵是一样的,但它们不等价。
Varimax criterion的另一个用途是,寻找旋转后的载荷AEAEAE,即它要寻找一个正交矩阵EEE,使得
E~=argmaxVC(AE)
\tilde E=\arg\max VC(AE)
E~=argmaxVC(AE)
3 样本的kkk-因子模型
将nnn个样本排成d×nd\times nd×n的矩阵X=(x1,…,xn)X=(x_1,\ldots,x_n)X=(x1,…,xn),并将对应的每个fff排成k×nk\times nk×n矩阵F=(f1,…,fn)F=(f_1,\ldots,f_n)F=(f1,…,fn),将对应的每个ϵ\epsilonϵ排成d×nd\times nd×n矩阵N=(ϵ1,…,ϵn)\mathfrak{N}=(\epsilon_1,\ldots,\epsilon_n)N=(ϵ1,…,ϵn),我们可以得到
X=AF+xˉℓn′+N
X=AF+\bar x\ell_n' +\mathfrak{N}
X=AF+xˉℓn′+N
还是和总体情况下一样,这些变量满足F∼(0,Ik)F\sim(0,I_k)F∼(0,Ik),N∼(0,Ψ)\mathfrak{N}\sim(0,\Psi)N∼(0,Ψ),这里Ψ\PsiΨ为对角矩阵,Cov(F,N)=0k×d\text{Cov}(F,\mathfrak{N})=0_{k\times d}Cov(F,N)=0k×d。样本的协方差矩阵可写为
S=Var(X)=Var(AF)+Var(N)=AA′+Ψ
S=\text{Var}(X)=\text{Var}(AF)+\text{Var}(\mathfrak{N})=AA'+\Psi
S=Var(X)=Var(AF)+Var(N)=AA′+Ψ
参考文献
- Kaiser, H. F. (1958). The varimax criterion for analytic rotation in factor analysis. Psychometrika 23, 187–200.
1万+

被折叠的 条评论
为什么被折叠?



