在处理实际问题中,在很多情况下,不同指标之间可能存在一定的相关性,即变量反映样本的信息有一定重叠
由于指标较多再加上信息的重叠,势必增加了问题的复杂性
希望通过克服相关性、重叠性,用较少的变量代替原来较多的变量,而这些较少的变量可以反映原来众多变量的大部分信息,这实际上是一种降维的思想
主成分分析
主成分分析是一种通过降维技术将多个变量化为少数几个主成分的统计分析方法。这些主成分通常表示为原始变量的某种线性组合,能够反映原始变量的绝大部分信息
主成分分析在几何上是一个坐标转换,在二维空间中有明显的几何意义
示例
假设共有n个样品,每个样品有两个指标
x
1
,
x
2
x_{1},x_{2}
x1,x2,在坐标系中,这n个点沿
x
1
x_{1}
x1和
x
2
x_{2}
x2方向都有较大的分量,若仅考虑其中一个分量,包含在另一分量中的信息将会损失,因此直接舍弃某个分量不是降维的有效方法
若将该坐标系按逆时针方向旋转某个角度
θ
\theta
θ编程新坐标系,变换公式为
{
Y
1
=
X
1
cos
θ
+
X
2
sin
θ
Y
2
=
−
X
1
sin
θ
+
X
2
cos
θ
\left\{\begin{matrix} Y_{1}=X_{1}\cos \theta+X_{2}\sin \theta \\ Y_{2}=-X_{1}\sin \theta+X_{2}\cos \theta \end{matrix}\right.
{Y1=X1cosθ+X2sinθY2=−X1sinθ+X2cosθ
总体主成分的数学模型
设
X
=
(
X
1
,
X
2
,
…
,
X
P
)
T
X=(X_{1},X_{2},\dots,X_{P})^{T}
X=(X1,X2,…,XP)T为P维随机向量
c
o
v
(
X
)
=
∑
=
(
σ
i
j
)
p
×
p
=
E
[
(
X
−
E
(
x
)
)
(
X
−
E
(
x
)
)
T
]
cov(X)=\sum=(\sigma_{ij})_{p\times p}=E[(X-E(x))(X-E(x))^{T}]
cov(X)=∑=(σij)p×p=E[(X−E(x))(X−E(x))T]
为其协方差矩阵,是非负定矩阵
构造的线性组合
Y
1
=
a
1
T
X
=
a
11
X
1
+
a
12
X
2
+
⋯
+
a
1
p
X
p
Y_{1}=a_{1}^{T}X=a_{11}X_{1}+a_{12}X_{2}+\dots+a_{1p}X_{p}
Y1=a1TX=a11X1+a12X2+⋯+a1pXp
确定
a
1
=
(
a
11
,
a
12
,
…
,
a
1
p
)
T
a_{1}=(a_{11},a_{12},\dots,a_{1p})^{T}
a1=(a11,a12,…,a1p)T
V
a
r
(
Y
1
)
=
C
o
v
(
a
1
T
X
,
a
1
T
X
)
=
a
1
T
∑
a
1
Var(Y_{1})=Cov(a_{1}^{T}X,a_{1}^{T}X)=a_{1}^{T}\sum a_{1}
Var(Y1)=Cov(a1TX,a1TX)=a1T∑a1
使得
V
a
r
(
Y
1
)
Var(Y_{1})
Var(Y1)达到最大
- 必须对
a
1
a_{1}
a1加以限制,否则
V
a
r
(
Y
1
)
Var(Y_{1})
Var(Y1)无界。如
a
1
T
a
1
=
1
a_{1}^{T}a_{1}=1
a1Ta1=1
如此确定的随机变量 Y 1 = a 1 T X Y_{1}=a_{1}^{T}X Y1=a1TX称为X的第一主成分
如果第一主成分在
Y
1
Y_{1}
Y1方向上的分散性还不足以反映原变量的分散性
则构造
Y
2
=
a
2
T
X
=
a
21
X
1
+
a
22
X
2
+
⋯
+
a
2
p
X
p
Y_{2}=a_{2}^{T}X=a_{21}X_{1}+a_{22}X_{2}+\dots+a_{2p}X_{p}
Y2=a2TX=a21X1+a22X2+⋯+a2pXp
限制
a
2
T
a
2
=
1
a_{2}^{T}a_{2}=1
a2Ta2=1
满足
C
o
v
(
Y
1
,
Y
2
)
=
C
o
v
(
a
1
T
X
,
a
2
T
X
)
=
a
1
T
∑
a
2
=
0
Cov(Y_{1},Y_{2})=Cov(a_{1}^{T}X,a_{2}^{T}X)=a_{1}^{T}\sum a_{2}=0
Cov(Y1,Y2)=Cov(a1TX,a2TX)=a1T∑a2=0
a
2
a_{2}
a2的模是1,
Y
1
,
Y
2
Y_{1},Y_{2}
Y1,Y2不相关
使得
V
a
r
(
Y
2
)
Var(Y_{2})
Var(Y2)达到最大
如此确定的随机变量
Y
2
Y_{2}
Y2称为
X
X
X的第二主成分
一般地
Y
1
,
Y
2
,
…
,
Y
k
−
1
Y_{1},Y_{2},\dots,Y_{k-1}
Y1,Y2,…,Yk−1还不足以反映原变量的信息
则构造
Y
k
=
a
k
T
X
=
a
k
1
T
X
1
+
a
k
2
T
X
2
+
⋯
+
a
k
p
X
p
Y_{k}=a_{k}^{T}X=a_{k1}^{T}X_{1}+a_{k2}^{T}X_{2}+\dots+a_{kp}X_{p}
Yk=akTX=ak1TX1+ak2TX2+⋯+akpXp
限制
a
k
T
a
k
=
1
a_{k}^{T}a_{k}=1
akTak=1
C
o
v
(
Y
k
,
Y
i
)
=
C
o
v
(
a
k
T
X
,
a
i
T
X
)
=
a
k
T
∑
a
i
=
0
(
i
=
1
,
2
,
…
,
k
−
1
)
Cov(Y_{k},Y_{i})=Cov(a_{k}^{T}X,a_{i}^{T}X)=a_{k}^{T}\sum a_{i}=0(i=1,2,\dots,k-1)
Cov(Yk,Yi)=Cov(akTX,aiTX)=akT∑ai=0(i=1,2,…,k−1)
使得
V
a
r
(
Y
k
)
Var(Y_{k})
Var(Yk)达到最大
如此确定的随机变量
Y
k
Y_{k}
Yk称为X的第k主成分
按照上述方法,最多可以构造出p个方差大于0的主成分
总体主成分的求法
∑
\sum
∑是
X
=
(
X
1
,
X
2
,
…
,
X
p
)
T
X=(X_{1},X_{2},\dots,X_{p})^{T}
X=(X1,X2,…,Xp)T的协方差矩阵,其特征值按大小顺序排列为
λ
1
≥
λ
2
≥
⋯
≥
λ
p
≥
0
\lambda_{1}\ge \lambda_{2}\ge \dots \ge \lambda_{p} \ge 0
λ1≥λ2≥⋯≥λp≥0,相应的正交单位化特征向量为
e
1
,
e
2
,
…
,
e
p
e_{1},e_{2},\dots,e_{p}
e1,e2,…,ep,则X的第k个主成分为
Y
k
=
e
k
T
X
=
e
k
1
X
1
+
e
k
2
X
2
+
⋯
+
e
k
p
X
p
Y_{k}=e_{k}^{T}X=e_{k1}X_{1}+e_{k2}X_{2}+\dots+e_{kp}X_{p}
Yk=ekTX=ek1X1+ek2X2+⋯+ekpXp
其中
e
k
=
(
e
k
1
,
e
k
2
,
…
,
e
k
p
)
T
e_{k}=(e_{k1},e_{k2},\dots,e_{kp})^{T}
ek=(ek1,ek2,…,ekp)T
这时
V
a
r
(
Y
k
)
=
e
k
T
∑
e
k
=
λ
k
e
k
T
e
k
=
λ
k
,
k
=
1
,
2
,
…
,
p
Var(Y_{k})=e_{k}^{T}\sum e_{k}=\lambda_{k}e_{k}^{T}e_{k}=\lambda_{k},\ k=1,2,\dots,p
Var(Yk)=ekT∑ek=λkekTek=λk, k=1,2,…,p
C
o
v
(
Y
j
,
Y
k
)
=
C
o
v
(
e
j
T
,
e
k
T
X
)
=
e
j
∑
e
k
=
λ
k
e
j
T
e
k
=
0
,
j
≠
k
Cov(Y_{j},Y_{k})=Cov(e_{j}^{T},e_{k}^{T}X)=e_{j}\sum e_{k}= \lambda_{k}e_{j}^{T}e_{k}=0,\ j\ne k
Cov(Yj,Yk)=Cov(ejT,ekTX)=ej∑ek=λkejTek=0, j=k
总体主成分的性质
主成分的协方差矩阵及总方差
记
Y
=
(
Y
1
,
Y
2
,
…
,
Y
P
)
T
Y=(Y_{1},Y_{2},\dots,Y_{P})^{T}
Y=(Y1,Y2,…,YP)T为p个主成分构成的随机向量,则
Y
=
P
T
X
Y=P^{T}X
Y=PTX
其中
P
=
(
e
1
,
e
2
,
…
,
e
p
)
P=(e_{1},e_{2},\dots,e_{p})
P=(e1,e2,…,ep)
其协方差矩阵为
C
o
v
(
Y
)
=
C
o
v
(
P
T
X
)
=
P
T
∑
P
=
Λ
=
D
i
a
g
(
λ
1
,
…
,
λ
p
)
Cov(Y)=Cov(P^{T}X)=P^{T}\sum P=\Lambda=Diag(\lambda_{1},\dots,\lambda_{p})
Cov(Y)=Cov(PTX)=PT∑P=Λ=Diag(λ1,…,λp)
各主成分的总方差为
∑
i
=
1
P
V
a
r
(
Y
1
)
=
∑
i
=
1
P
λ
i
=
t
r
(
P
T
∑
P
)
=
t
r
(
∑
P
P
T
)
=
t
r
(
∑
)
=
∑
i
=
1
P
V
a
r
(
X
i
)
\begin{array}{} \sum_{i=1}^{P}Var(Y_{1})=\sum_{i=1}^{P}\lambda_{i}=tr\left( P^{T}\sum P \right) \\ =tr\left( \sum PP^{T} \right)=tr\left( \sum \right)=\sum_{i=1}^{P}Var(X_{i}) \end{array}
∑i=1PVar(Y1)=∑i=1Pλi=tr(PT∑P)=tr(∑PPT)=tr(∑)=∑i=1PVar(Xi)
即主成分分析把p这个原始变量
X
1
,
X
2
,
…
,
X
p
X_{1},X_{2},\dots,X_{p}
X1,X2,…,Xp的总方差分解成p个不相关变量
Y
1
,
Y
2
,
…
,
Y
p
Y_{1},Y_{2},\dots,Y_{p}
Y1,Y2,…,Yp的方差和,且使得
V
a
r
(
Y
k
=
λ
k
(
k
=
1
,
2
,
…
,
p
)
Var(Y_{k}=\lambda_{k}(k=1,2,\dots,p)
Var(Yk=λk(k=1,2,…,p)
主成分的贡献率和累计贡献率
λ
k
∑
i
=
1
p
λ
i
=
V
a
r
(
Y
k
)
∑
i
=
1
p
V
a
r
(
X
i
)
\frac{\lambda_{k}}{\sum_{i=1}^{p}\lambda_{i}}=\frac{Var(Y_{k})}{\sum_{i=1}^{p}Var(X_{i})}
∑i=1pλiλk=∑i=1pVar(Xi)Var(Yk)
描述了第k个主成分提取的
X
1
,
X
2
,
…
,
X
p
X_{1},X_{2},\dots,X_{p}
X1,X2,…,Xp的总信息的份额,我们称此为第k个主成分
Y
k
Y_{k}
Yk的贡献率
前m个主成分的贡献率之和
∑
i
=
1
m
λ
i
∑
i
=
1
p
λ
i
\frac{\sum_{i=1}^{m}\lambda_{i}}{\sum_{i=1}^{p}\lambda_{i}}
∑i=1pλi∑i=1mλi
称为
Y
1
,
Y
2
,
…
,
Y
m
Y_{1},Y_{2},\dots,Y_{m}
Y1,Y2,…,Ym的累计贡献率,它表明前m个主成分综合的
X
1
,
X
2
,
…
,
X
p
X_{1},X_{2},\dots,X_{p}
X1,X2,…,Xp信息的能力
例1
解
算得
∑
\sum
∑的特征值及单位正交特征向量
λ
1
=
5.8284
,
λ
2
=
2.0000
,
λ
3
=
0.1716
e
1
=
(
−
0.3827
,
0.9239
,
0.0000
)
T
,
Y
1
=
−
0.3827
X
1
+
0.9239
X
2
e
2
=
(
0.0000
,
0.0000
,
1.0000
)
T
,
Y
2
=
X
3
e
3
=
(
0.9239
,
0.3827
,
0.0000
)
T
,
Y
3
=
0.9239
X
1
+
0.3827
X
2
\begin{array}{} \lambda_{1}=5.8284,\ \lambda_{2}=2.0000,\ \lambda_{3}=0.1716 \\ e_{1}=(-0.3827,0.9239,0.0000)^{T},Y_{1}=-0.3827X_{1}+0.9239X_{2} \\ e_{2}=(0.0000,0.0000,1.0000)^{T},Y_{2}=X_{3} \\ e_{3}=(0.9239,0.3827,0.0000)^{T},Y_{3}=0.9239X_{1}+0.3827X_{2} \end{array}
λ1=5.8284, λ2=2.0000, λ3=0.1716e1=(−0.3827,0.9239,0.0000)T,Y1=−0.3827X1+0.9239X2e2=(0.0000,0.0000,1.0000)T,Y2=X3e3=(0.9239,0.3827,0.0000)T,Y3=0.9239X1+0.3827X2
第一主成分的贡献率为
5.83
5.83
+
2.00
+
0.17
=
5.83
1
+
5
+
2
=
73
%
\frac{5.83}{5.83+2.00+0.17}=\frac{5.83}{1+5+2}=73\%
5.83+2.00+0.175.83=1+5+25.83=73%
前两个主成分的累计贡献率为
5.83
+
2.00
5.83
+
2.00
+
0.17
=
5.83
+
2.00
1
+
5
+
2
=
98
%
\frac{5.83+2.00}{5.83+2.00+0.17}=\frac{5.83+2.00}{1+5+2}=98\%
5.83+2.00+0.175.83+2.00=1+5+25.83+2.00=98%
因此,用前两个主成分代替原来的三个变量,其信息的损失仅为2%,是很小的
标准化变量的主成分
在实际问题中,不同的变量有不同的量纲,由于不同的量纲会引起各变量取值的分散性程度差异较大
各变量取值的大小也会影响其方差的大小
这时,变量的总方差主要受方差较大的变量控制,若进行主成分分析,则优先照顾了方差较大的变量
会给主成分的解释带来困难,有时还会造成不合理的结果
通常将原变量进行标准化再做主成分分析
设
μ
k
=
E
(
X
k
)
,
σ
k
k
=
V
a
r
(
X
k
)
,
k
=
1
,
2
,
…
,
p
\mu_{k}=E(X_{k}),\ \sigma_{kk}=Var(X_{k}),k=1,2,\dots,p
μk=E(Xk), σkk=Var(Xk),k=1,2,…,p
标准化变量
X
k
∗
=
X
k
−
μ
k
σ
k
k
,
k
=
1
,
2
,
…
,
p
X_{k}^{*}=\frac{X_{k}-\mu_{k}}{\sqrt{ \sigma_{kk} }},k=1,2,\dots,p
Xk∗=σkkXk−μk,k=1,2,…,p
这时一切对于
1
≤
k
≤
p
1\le k \le p
1≤k≤p均有
V
a
r
(
X
k
∗
)
=
1
Var(X_{k}^{*})=1
Var(Xk∗)=1
令
X
∗
=
(
X
1
∗
,
X
2
∗
,
…
,
X
p
∗
)
T
X^{*}=(X_{1}^{*},X_{2}^{*},\dots,X_{p}^{*})^{T}
X∗=(X1∗,X2∗,…,Xp∗)T
则其协方差矩阵
ρ
=
(
ρ
i
j
)
p
×
p
=
C
o
v
(
X
∗
)
\rho=(\rho_{ij})_{p \times p}=Cov(X^{*})
ρ=(ρij)p×p=Cov(X∗)
为X的相关系数矩阵
ρ
i
j
=
E
(
X
i
∗
,
X
j
∗
)
=
C
o
v
(
X
i
,
X
j
)
σ
i
i
σ
j
j
\rho_{ij}=E(X_{i}^{*},X_{j}^{*})=\frac{Cov(X_{i},X_{j})}{\sqrt{ \sigma_{ii}\sigma_{jj} }}
ρij=E(Xi∗,Xj∗)=σiiσjjCov(Xi,Xj)
X的第i个主成分为
Y
k
∗
=
(
e
k
∗
)
T
X
∗
=
e
k
1
∗
X
1
∗
+
⋯
+
e
k
p
∗
X
p
∗
Y_{k}^{*}=(e_{k}^{*})^{T}X^{*}=e_{k1}^{*}X_{1}^{*}+\dots+e_{kp}^{*}X_{p}^{*}
Yk∗=(ek∗)TX∗=ek1∗X1∗+⋯+ekp∗Xp∗
并且
∑
i
=
1
p
V
a
r
(
Y
i
∗
)
=
∑
i
=
1
p
λ
i
∗
=
∑
i
=
1
p
V
a
r
(
X
i
∗
)
=
p
\sum_{i=1}^{p}Var(Y_{i}^{*})=\sum_{i=1}^{p}\lambda_{i}^{*}=\sum_{i=1}^{p}Var(X_{i}^{*})=p
i=1∑pVar(Yi∗)=i=1∑pλi∗=i=1∑pVar(Xi∗)=p
其中
λ
1
∗
≥
λ
2
∗
≥
⋯
≥
λ
p
∗
\lambda_{1}^{*}\ge \lambda_{2}^{*} \ge \dots \ge \lambda_{p}^{*}
λ1∗≥λ2∗≥⋯≥λp∗为
ρ
\rho
ρ的特征值
e
i
∗
=
(
e
i
1
∗
,
e
i
2
∗
,
…
,
e
i
p
∗
)
e_{i}^{*}=(e_{i1}^{*},e_{i2}^{*},\dots,e_{ip}^{*})
ei∗=(ei1∗,ei2∗,…,eip∗)为相应于
λ
i
∗
\lambda_{i}^{*}
λi∗的单位正交特征向量
第i个主成分贡献率为
λ
i
∗
P
\frac{\lambda_{i}^{*}}{P}
Pλi∗
前m个主成分累计贡献为
∑
i
=
1
m
λ
i
∗
P
\sum_{i=1}^{m} \frac{\lambda_{i}^{*}}{P}
∑i=1mPλi∗
例2
解
算得
∑
\sum
∑的特征值及单位正交特征向量
λ
1
=
100.16
,
λ
2
=
0.84
\lambda_{1}=100.16,\lambda_{2}=0.84
λ1=100.16,λ2=0.84
e
1
=
(
0.040
,
0.999
)
T
,
Y
1
=
0.040
X
1
+
0.999
X
2
e_{1}=(0.040,0.999)^{T},Y_{1}=0.040X_{1}+0.999X_{2}
e1=(0.040,0.999)T,Y1=0.040X1+0.999X2
e
2
=
(
0.999
,
−
0.040
)
T
,
Y
2
=
0.999
X
1
−
0.040
X
2
e_{2}=(0.999,-0.040)^{T},Y_{2}=0.999X_{1}-0.040X_{2}
e2=(0.999,−0.040)T,Y2=0.999X1−0.040X2
此时,第一主成分的贡献率为
100.16
2
=
99.2
%
\frac{100.16}{2}=99.2\%
2100.16=99.2%
e
1
∗
=
(
0.707
,
0.707
)
T
e_{1}^{*}=(0.707,0.707)^{T}
e1∗=(0.707,0.707)T
Y
1
∗
=
0.707
X
1
∗
+
0.707
X
2
∗
=
0.707
(
X
1
−
μ
1
)
+
0.0707
(
X
2
−
μ
2
)
Y_{1}^{*}=0.707X_{1}^{*}+0.707X_{2}^{*}=0.707(X_{1}-\mu_{1})+0.0707(X_{2}-\mu_{2})
Y1∗=0.707X1∗+0.707X2∗=0.707(X1−μ1)+0.0707(X2−μ2)
e
2
∗
=
(
0.707
,
−
0.707
)
T
e_{2}^{*}=(0.707,-0.707)^{T}
e2∗=(0.707,−0.707)T
Y
2
∗
=
0.707
X
1
∗
−
0.707
X
2
∗
=
0.707
(
X
1
−
μ
1
)
−
0.0707
(
X
2
−
μ
2
)
Y_{2}^{*}=0.707X_{1}^{*}-0.707X_{2}^{*}=0.707(X_{1}-\mu_{1})-0.0707(X_{2}-\mu_{2})
Y2∗=0.707X1∗−0.707X2∗=0.707(X1−μ1)−0.0707(X2−μ2)
此时,第一主成分的贡献率为
1.4
2
=
70
%
\frac{1.4}{2}=70\%
21.4=70%
样本主成分
实际问题中
∑
\sum
∑或
ρ
\rho
ρ未知,需用样本估计
设
x
i
=
(
x
i
1
,
x
i
2
,
…
,
x
i
p
)
T
,
i
=
1
,
2
,
…
,
n
x_{i}=(x_{i1},x_{i2},\dots,x_{ip})^{T},\ i=1,2,\dots,n
xi=(xi1,xi2,…,xip)T, i=1,2,…,n
容量为n的样本,用样本协方差矩阵及样本相关系数矩阵
S
=
1
n
−
1
∑
k
=
1
n
(
x
k
−
x
ˉ
)
(
x
k
−
x
ˉ
)
T
S=\frac{1}{n-1}\sum_{k=1}^{n}(x_{k}-\bar{x})(x_{k}-\bar{x})^{T}
S=n−11k=1∑n(xk−xˉ)(xk−xˉ)T
R
=
(
r
i
j
)
p
×
p
=
(
S
i
j
S
i
i
S
j
j
)
=
(
S
i
j
)
p
×
p
R=(r_{ij})_{p \times p}=\left( \frac{S_{ij}}{\sqrt{ S_{ii} }\sqrt{ S_{jj} }} \right)=(S_{ij})_{p \times p}
R=(rij)p×p=(SiiSjjSij)=(Sij)p×p
估计
∑
,
ρ
\sum,\rho
∑,ρ
其中
x
ˉ
=
(
x
ˉ
1
,
x
ˉ
2
,
…
,
x
ˉ
p
)
T
,
x
ˉ
j
=
1
n
∑
i
=
1
n
x
i
j
,
j
=
1
,
2
,
…
,
p
\bar{x}=(\bar{x}_{1},\bar{x}_{2},\dots,\bar{x}_{p})^{T},\ \bar{x}_{j}=\frac{1}{n}\sum_{i=1}^{n}x_{ij}, \ j=1,2,\dots,p
xˉ=(xˉ1,xˉ2,…,xˉp)T, xˉj=n1i=1∑nxij, j=1,2,…,p
S
i
j
=
1
n
−
1
∑
k
=
1
n
(
x
k
i
−
x
ˉ
i
)
(
x
k
j
−
x
ˉ
j
)
,
i
,
j
=
1
,
2
,
…
,
p
S_{ij}=\frac{1}{n-1}\sum_{k=1}^{n}(x_{ki}-\bar{x}_{i})(x_{kj}-\bar{x}_{j}),\ i,j=1,2,\dots,p
Sij=n−11k=1∑n(xki−xˉi)(xkj−xˉj), i,j=1,2,…,p
S为样本协方差矩阵,它的特征值为
λ
^
1
≥
h
a
t
l
a
m
b
d
a
2
≥
⋯
≥
λ
^
p
≥
0
\hat{\lambda}_{1}\ge \\hat{lambda}_{2}\ge \dots \ge \hat{\lambda}_{p} \ge 0
λ^1≥hatlambda2≥⋯≥λ^p≥0,相应的正交单位化特征向量为
e
^
1
,
e
^
2
,
…
,
e
^
p
\hat{e}_{1},\hat{e}_{2},\dots,\hat{e}_{p}
e^1,e^2,…,e^p
样本主成分
Y
k
=
e
k
T
X
=
e
k
1
X
1
+
e
k
2
X
2
+
⋯
+
e
k
p
X
p
,
k
=
1
,
2
,
…
,
p
Y_{k}=e_{k}^{T}X=e_{k1}X_{1}+e_{k2}X_{2}+\dots+e_{kp}X_{p},\ k=1,2,\dots,p
Yk=ekTX=ek1X1+ek2X2+⋯+ekpXp, k=1,2,…,p
n个观测值
X
i
=
(
x
i
1
,
x
i
2
,
…
,
x
i
p
)
T
(
k
=
1
,
2
,
…
,
n
)
X_{i}=(x_{i1},x_{i2},\dots,x_{ip})^{T}(k=1,2,\dots,n)
Xi=(xi1,xi2,…,xip)T(k=1,2,…,n)代入第k个样本主成分,得
Y
i
Y_{i}
Yi得n个观测值
Y
1
i
,
Y
2
i
,
…
,
Y
n
i
Y_{1i},Y_{2i},\dots,Y_{ni}
Y1i,Y2i,…,Yni称为第k个样本主成分的得分
第k个主成分的贡献率为
λ
^
k
∑
j
=
1
p
λ
^
k
\frac{\hat{\lambda}_{k}}{\sum_{j=1}^{p}\hat{\lambda}_{k}}
∑j=1pλ^kλ^k
前m个主成分的累计贡献率为
∑
j
=
1
m
λ
^
k
∑
j
=
1
p
λ
^
k
\frac{\sum_{j=1}^{m}\hat{\lambda}_{k}}{\sum_{j=1}^{p}\hat{\lambda}_{k}}
∑j=1pλ^k∑j=1mλ^k
通常从样本相关矩阵R出发进行主成分分析,从
ρ
\rho
ρ出发求得的主样本成分称标准化样本主成分
例3
解
从样本协方差矩阵出发进行主成分分析,算得
λ
^
1
=
100.004139
e
^
1
=
(
0.559147
,
0.421287
,
0.714046
)
T
\hat{\lambda}_{1}=100.004139\ \hat{e}_{1}=(0.559147,0.421287,0.714046)^{T}
λ^1=100.004139 e^1=(0.559147,0.421287,0.714046)T
λ
^
2
=
25.324480
e
^
2
=
(
0.827674
,
−
0.333483
,
−
0.451382
)
T
\hat{\lambda}_{2}=25.324480\ \hat{e}_{2}=(0.827674,-0.333483,-0.451382)^{T}
λ^2=25.324480 e^2=(0.827674,−0.333483,−0.451382)T
λ
^
3
=
1.568048
e
^
3
=
(
0.047960
,
0.843390
,
−
0.535157
)
T
\hat{\lambda}_{3}=1.568048\ \hat{e}_{3}=(0.047960,0.843390,-0.535157)^{T}
λ^3=1.568048 e^3=(0.047960,0.843390,−0.535157)T
Y
1
=
0.559147
x
1
+
0.421287
x
2
+
0.714046
x
3
Y_{1}=0.559147x_{1}+0.421287x_{2}+0.714046x_{3}
Y1=0.559147x1+0.421287x2+0.714046x3
Y
2
=
0.827674
x
1
−
0.333483
x
2
−
0.451382
x
3
Y_{2}=0.827674x_{1}-0.333483x_{2}-0.451382x_{3}
Y2=0.827674x1−0.333483x2−0.451382x3
各样本主成分的贡献率为
100.004
136.896
=
80.36
%
25.324
136.896
=
18.52
%
1.568
136.896
=
1.15
%
\frac{100.004}{136.896}=80.36\%\ \frac{25.324}{136.896}=18.52\%\ \frac{1.568}{136.896}=1.15\%
136.896100.004=80.36% 136.89625.324=18.52% 136.8961.568=1.15%
前两个主成分的贡献率达到了98.86%,实际运用中可以只取前两个主成分
当一个学生的
y
1
y_{1}
y1较大时,可以推断他较高或较胖或又高又胖;反之,当一个学生比较魁梧时,所对应的
y
1
y_{1}
y1也比较大,所以第一成分是反映学生身材是否魁梧的综合指标,我们一般称之为大小因子
同理,第二主成分反映学生体型特征的综合指标,我们一般称之为瘦高还是胖矮因子
主成分分析中注意的问题
- 一般要求累计贡献流程达到85%,常见的情况2~3个主成分
- 一般要将各原始变量作标准化处理,也就是相关系数矩阵,通常从相关系数矩阵出发进行主成分分析
主成分分析过程
- 将原始数据标准化
- 建立相关系数矩阵
- 计算相关系数阵的特征值 λ 1 ≥ λ 2 ≥ ⋯ ≥ λ p ≥ 0 \lambda_{1}\ge \lambda_{2}\ge\dots\ge \lambda_{p}\ge 0 λ1≥λ2≥⋯≥λp≥0,对应的单位正交特征向量 a 1 , a 2 , … , a p a_{1},a_{2},\dots,a_{p} a1,a2,…,ap
- 由累计贡献率确定主成分个数m,并写出主成分
z i = a i x , i = 1 , 2 , … , m z_{i}=a_{i}x,\quad i=1,2,\dots,m zi=aix,i=1,2,…,m
主成分分析的应用
综合评价
主成分分析能从选定的指标体系中归纳出大部分信息,可以根据主成分提供的信息进行综合评价
利用主成分进行综合评价时,对主成分进行加权综合,权数根据其方差贡献率确定
z
=
ρ
1
z
1
+
ρ
2
z
2
+
⋯
+
ρ
m
z
m
z=\rho_{1}z_{1}+\rho_{2}z_{2}+\dots+\rho_{m}z_{m}
z=ρ1z1+ρ2z2+⋯+ρmzm
本质上,综合评价函数是对原始指标的线性综合,从计算主成分到加权,经过两次线性运算后得到综合评价函数
主成分回归
将各主成分作为新自变量代替原来自变量作回归分析。用主成分分析筛选变量,可用较少的计算量获得选择最佳变量子集合的效果,并且由于各主成分两两不相关,不存在由于多重共线性带来的影响
主成分聚类
主要用于样品的聚类,先构建主成分,再进行聚类
保留多少主成分取决于保留部分的累计方差在方差总和中所占百分比,它包括着前几个主成分概括信息的多少。
在实践中,粗略规定一个百分比便可以决定保留几个主成分,如果多保留一个主成分,但累计方差增加无几,便不再保留
设
λ
1
,
λ
2
,
…
,
λ
p
\lambda_{1},\lambda_{2},\dots,\lambda_{p}
λ1,λ2,…,λp为主成分的特征值,则前K个方差累计贡献率为
λ
1
+
λ
2
+
⋯
+
λ
k
∑
λ
i
\frac{\lambda_{1}+\lambda_{2}+\dots+\lambda_{k}}{\sum_{\lambda_{i}}}
∑λiλ1+λ2+⋯+λk
一般累计方差贡献率大于85%时不在增加新的主成分
因子分析法
因子分析法概述
与主成分分析法都基于统计分析法
主成分分析是通过坐标变换提取主成分,将一组具有相关性的变量变换为一组独立的变量,将主成分表示为原始观察变量的线性组合
因子分析法是要构造因子模型,将原始观察变量分解为因子的线性组合,因此因子分析法是主成分分析法的发展
因子分析法的模型
设有n个样品,每个样品观察p个指标,这p个指标有较强的相关性
为了消除由于观察量纲的差异以及数量级不同所造成的影响,对样本观察数据进行标准化处理,使标准化后的变量均值为0,方差为1
用x表示标准化后的变量向量,
F
1
,
F
2
,
…
,
F
m
F_{1},F_{2},\dots,F_{m}
F1,F2,…,Fm表示标准化的公共因子
因子模型的表达式
x
1
=
a
11
F
1
+
a
12
F
2
+
⋯
+
a
1
m
F
m
+
e
1
x_{1}=a_{11}F_{1}+a_{12}F_{2}+\dots+a_{1m}F_{m}+e_{1}
x1=a11F1+a12F2+⋯+a1mFm+e1
x
2
=
a
21
F
1
+
a
22
F
2
+
⋯
+
a
2
m
F
m
+
e
2
x_{2}=a_{21}F_{1}+a_{22}F_{2}+\dots+a_{2m}F_{m}+e_{2}
x2=a21F1+a22F2+⋯+a2mFm+e2
…
…
\dots\dots
……
x
p
=
a
p
1
F
1
+
a
p
2
F
2
+
⋯
+
a
p
m
F
m
+
e
p
x_{p}=a_{p1}F_{1}+a_{p2}F_{2}+\dots+a_{pm}F_{m}+e_{p}
xp=ap1F1+ap2F2+⋯+apmFm+ep
因子分析法的假设
X
=
(
X
1
,
X
2
,
…
,
X
p
)
′
X=(X_{1},X_{2},\dots,X_{p})'
X=(X1,X2,…,Xp)′是可观测随机向量,其均值向量
E
(
X
)
=
0
E(X)=0
E(X)=0,协方差矩阵
c
o
v
(
X
)
=
∑
cov(X)=\sum
cov(X)=∑,且协方差矩阵
∑
\sum
∑和相关矩阵
R
R
R相等
F
=
(
F
1
,
F
2
,
…
,
F
p
)
′
(
m
<
p
)
F=(F_{1},F_{2},\dots,F_{p})'(m<p)
F=(F1,F2,…,Fp)′(m<p)是不可观测随机向量,且均值向量
E
(
F
)
=
0
E(F)=0
E(F)=0,协方差矩阵
c
o
v
(
X
)
=
I
cov(X)=I
cov(X)=I,即向量
F
F
F的各分量是相关独立的
ε
=
(
ε
1
,
ε
2
,
…
,
ε
p
)
′
\varepsilon=(\varepsilon_{1},\varepsilon_{2},\dots,\varepsilon_{p})'
ε=(ε1,ε2,…,εp)′与
F
F
F相互独立,且
E
(
ε
)
=
0
E(\varepsilon)=0
E(ε)=0,其协方差矩阵为对角阵
其矩阵形式为
X
=
A
F
+
e
X=AF+e
X=AF+e
其中
A
=
(
a
i
j
)
A=(a_{ij})
A=(aij),
a
i
j
a_{ij}
aij为因子载荷。
数学上可以证明,因子载荷
a
i
j
a_{ij}
aij就是第i变量与第j因子的相关系数,反映了第i变量在第j因子上的重要性
F称为X的公共因子或潜因子,矩阵A称为因子载荷矩阵,e称为X的特殊因子
变量的共同度(公共方差)
反应全部公共因子对原有变量
x
i
x_{i}
xi总方差的解释说明比例
原有变量
x
i
x_{i}
xi的共同度为因子载荷矩阵
A
A
A的第i行元素的平方和
即
h
i
2
=
∑
j
=
1
m
a
i
j
2
h_{i}^{2}=\sum_{j=1}^{m}a_{ij}^{2}
hi2=j=1∑maij2
h
i
2
h_{i}^{2}
hi2越接近1,原有变量在标准化下的方差为1,说明公共因子解释原有变量
x
i
x_{i}
xi的信息越多
公共因子
F
j
F_{j}
Fj的方差贡献
公共因子
F
j
F_{j}
Fj的方差贡献定义为因子载荷矩阵
A
A
A中的第
j
j
j列元素的平方和
即
g
j
2
=
∑
i
=
1
p
a
i
j
2
g_{j}^{2}=\sum_{i=1}^{p}a_{ij}^{2}
gj2=i=1∑paij2
反映了公共因子
F
j
F_{j}
Fj对原有变量总方差的解释能力,其值越高说明因子的重要程度越高
因子载荷的求解
- 主成分法
- 主轴因子法
- 极大似然法
因子旋转
不管用何种方法确定的初始因子载荷矩阵,他们都不是唯一的
设
F
1
,
F
2
,
…
,
F
m
F_{1},F_{2},\dots,F_{m}
F1,F2,…,Fm是初始公共因子,则可以建立他们如下的线性组合得到一组新的公共因子
F
1
′
,
F
2
′
,
…
,
F
m
′
F_{1}',F_{2}',\dots,F_{m}'
F1′,F2′,…,Fm′
F
1
′
=
d
11
F
1
+
d
12
F
2
+
⋯
+
d
1
m
F
m
F_{1}'=d_{11}F_{1}+d_{12}F_{2}+\dots+d_{1m}F_{m}
F1′=d11F1+d12F2+⋯+d1mFm
F
2
′
=
d
21
F
1
+
d
22
F
2
+
⋯
+
d
2
m
F
m
F_{2}'=d_{21}F_{1}+d_{22}F_{2}+\dots+d_{2m}F_{m}
F2′=d21F1+d22F2+⋯+d2mFm
…
…
\dots\dots
……
F
m
′
=
d
m
1
F
1
+
d
m
2
F
2
+
⋯
+
d
m
m
F
m
F_{m}'=d_{m1}F_{1}+d_{m2}F_{2}+\dots+d_{mm}F_{m}
Fm′=dm1F1+dm2F2+⋯+dmmFm
使得
F
1
′
,
F
2
′
,
…
,
F
m
′
F_{1}',F_{2}',\dots,F_{m}'
F1′,F2′,…,Fm′彼此相互独立,同时也可以很好地解释原始变量之间的相互关系
因子旋转分为正交旋转和斜交旋转
正交旋转由初始载荷矩阵右乘一正交阵得到,经过正交旋转而得到的新的公共因子任然保持相互独立的性质
斜交旋转放弃了因子之间彼此独立这个限制,因而可能达到更为简洁的形式,实际意义也更容易解释
因子得分
当因子模型建立之后,往往需要反过来考察每一个样品的性质及样品之间的相互关系
因子得分就是公共因子
F
1
,
F
2
,
…
,
F
m
F_{1},F_{2},\dots,F_{m}
F1,F2,…,Fm在每一个样品上的得分
因子得分的计算
用回归的思想求出线性组合系数的估计值
即:建立如下公共因子为因变量,原始变量为自变量的回归方程
F
j
=
β
j
1
X
1
+
β
j
2
X
2
+
⋯
+
β
j
p
X
p
,
j
=
1
,
2
,
…
,
m
F_{j}=\beta_{j1}X_{1}+\beta_{j2}X_{2}+\dots+\beta_{jp}X_{p},\ j=1,2,\dots,m
Fj=βj1X1+βj2X2+⋯+βjpXp, j=1,2,…,m
此处因为原始变量与公共因子变量均为标准化变量,所以回归模型中不存在常数项
在最小二乘意义下,可以得到的F估计值
F
^
=
A
′
R
−
1
X
\hat{F}=A'R^{-1}X
F^=A′R−1X
A,因子载荷矩阵
R,原始变量的相关矩阵
X,原始变量向量
因子分析的步骤
- 根据研究问题选取原始变量
- 对原始变量进行标准化,并求其相关矩阵,分析变量之间的相关性
- 求解初始公共因子及其因子载荷矩阵
- 因子旋转
- 计算因子得分
- 根据因子得分进行进一步分析
Matlab
[pc, score] = princomp(x)
[pc, score, latent] = princomp(x)
[pc, latent, explain] = pcacova(covx)
pc,主成分系数
score,原x矩阵在主成分空间的表示
latent,x协方差矩阵的特征值
explain,方差贡献率