文章目录
本课程来自深度之眼,部分截图来自课程视频以及李航老师的《统计学习方法》第二版。
公式输入请参考: 在线Latex公式
主要内容
确定最佳聚类数初步方法:理解给定阈值法,数据点散布图法
总离差平方和的分解:SST=SSA+SSE
聚类相关统计量:
R
2
R^2
R2统计量定义与表达式理解
统计量法:半偏
R
2
R^2
R2统计量:半偏
R
2
R^2
R2统计量定义与表达式理解
统计量法:伪F统计量:伪F统计量定义与表达式理解
统计量法:伪
t
2
t^2
t2统计量:伪
t
2
t^2
t2统计量定义与表达式理解
谱系图法:根据谱系图进行分类的准则
伪F统计量案例分析:观察伪F统计量值与分类数的散点图,分析聚类树形图
确定最佳聚类数
选定某种聚类方法,按系统聚类的步骤并类后,得到谱系聚类图,反映样本(或变量)间的亲属关系。
1、给定阈值
给出合适的阀值 T T T,当类间距离 ≤ T \le T ≤T时,形成的各个类中所包含的样品间关系密切,应属于同一类;反之不并类。
2、数据点散布图
a.若考察2个指标,可通过数据点的散布图直观确定类的个数。
b.若考察3个指标,可通过绘制三维散布图,旋转三维坐标轴,由数据点的分布确定应分为几个类。
c.若考察3个以上指标,可由这些指标综合出2个或3个综合变量,绘制数据点在综合变量上的散布图。
3、根据统计量分析聚类数量
预备知识
总离差平方和(Sum of Squares Total)
残差平方和(Sum of Squared Errors)
回归平方和(Sum of Squares Regression )
组间离差平方和 (Sum of Squares for factor A)
这里关于总离差平方和的分解简单推导一下:
∑
i
=
1
n
(
y
i
−
y
ˉ
)
2
=
∑
k
=
1
K
∑
i
=
1
n
k
(
y
i
(
k
)
−
y
ˉ
(
k
)
)
2
+
∑
k
=
1
K
∑
i
=
1
n
k
(
y
ˉ
(
k
)
−
y
ˉ
)
2
\sum_{i=1}^n(y_i-\bar y)^2=\sum_{k=1}^K\sum_{i=1}^{n_k}(y_i^{(k)}-\bar y^{(k)})^2+\sum_{k=1}^K\sum_{i=1}^{n_k}(\bar y^{(k)}-\bar y)^2
i=1∑n(yi−yˉ)2=k=1∑Ki=1∑nk(yi(k)−yˉ(k))2+k=1∑Ki=1∑nk(yˉ(k)−yˉ)2
右边第一项第k类里面的第i项
y
i
(
k
)
y_i^{(k)}
yi(k)减去该类平均值
y
ˉ
(
k
)
\bar y^{(k)}
yˉ(k),然后累加该类的
n
k
n_k
nk项,累加K个类;第二项是第k类平均值
y
ˉ
(
k
)
\bar y^{(k)}
yˉ(k)减去总平均值
y
ˉ
\bar y
yˉ,然后累加该类的
n
k
n_k
nk项,累加K个类。
本来右边是:
∑
k
=
1
K
∑
i
=
1
n
k
(
y
i
(
k
)
−
y
ˉ
(
k
)
+
y
ˉ
(
k
)
−
y
ˉ
)
2
\sum_{k=1}^K\sum_{i=1}^{n_k}(y_i^{(k)}-\bar y^{(k)}+\bar y^{(k)}-\bar y)^2
k=1∑Ki=1∑nk(yi(k)−yˉ(k)+yˉ(k)−yˉ)2
两两看成一项展开:
∑
k
=
1
K
∑
i
=
1
n
k
(
y
i
(
k
)
−
y
ˉ
(
k
)
)
2
+
∑
k
=
1
K
∑
i
=
1
n
k
(
y
ˉ
(
k
)
−
y
ˉ
)
2
+
2
∑
k
=
1
K
∑
i
=
1
n
k
(
y
i
(
k
)
−
y
ˉ
(
k
)
)
(
y
ˉ
(
k
)
−
y
ˉ
)
\sum_{k=1}^K\sum_{i=1}^{n_k}(y_i^{(k)}-\bar y^{(k)})^2+\sum_{k=1}^K\sum_{i=1}^{n_k}(\bar y^{(k)}-\bar y)^2\\ +2\sum_{k=1}^K\sum_{i=1}^{n_k}(y_i^{(k)}-\bar y^{(k)})(\bar y^{(k)}-\bar y)
k=1∑Ki=1∑nk(yi(k)−yˉ(k))2+k=1∑Ki=1∑nk(yˉ(k)−yˉ)2+2k=1∑Ki=1∑nk(yi(k)−yˉ(k))(yˉ(k)−yˉ)
在计算内层累加的时候
(
y
ˉ
(
k
)
−
y
ˉ
)
(\bar y^{(k)}-\bar y)
(yˉ(k)−yˉ)不用累加(没有i),只用算前面一项:
∑
i
=
1
n
k
(
y
i
(
k
)
−
y
ˉ
(
k
)
)
=
∑
i
=
1
n
k
y
i
(
k
)
−
∑
i
=
1
n
k
y
ˉ
(
k
)
=
n
k
y
ˉ
(
k
)
−
n
k
y
ˉ
(
k
)
=
0
\sum_{i=1}^{n_k}(y_i^{(k)}-\bar y^{(k)})=\sum_{i=1}^{n_k}y_i^{(k)}-\sum_{i=1}^{n_k}\bar y^{(k)}\\ =n_k\bar y^{(k)}-n_k\bar y^{(k)}=0
i=1∑nk(yi(k)−yˉ(k))=i=1∑nkyi(k)−i=1∑nkyˉ(k)=nkyˉ(k)−nkyˉ(k)=0
所以交叉项为0.
有了这个结论,我们来看如果有一个矩阵,其每个列都是一个类:
[
x
11
x
12
⋯
x
1
p
x
21
x
22
⋯
x
2
p
⋮
⋮
⋱
⋮
x
n
1
x
n
2
⋯
x
n
p
]
x
ˉ
1
x
ˉ
2
⋯
x
ˉ
p
\begin{bmatrix} x_{11} & x_{12} &\cdots &x_{1p} \\ x_{21} & x_{22} & \cdots & x_{2p}\\ \vdots & \vdots & \ddots & \vdots\\ x_{n1} &x_{n2} &\cdots &x_{np} \end{bmatrix}\\\begin{matrix} \bar x_1 & \bar x_2 & \cdots& \bar x_p \end{matrix}
⎣⎢⎢⎢⎡x11x21⋮xn1x12x22⋮xn2⋯⋯⋱⋯x1px2p⋮xnp⎦⎥⎥⎥⎤xˉ1xˉ2⋯xˉp
那么这个矩阵的总离差平方和的分解为(各个类减去该类均值):
(
x
11
−
x
ˉ
1
)
2
+
⋯
+
(
x
n
1
−
x
ˉ
1
)
2
+
⋯
+
(
x
1
p
−
x
ˉ
p
)
2
+
⋯
+
(
x
n
p
−
x
ˉ
p
)
2
(x_{11}-\bar x_1)^2+\cdots+(x_{n1}-\bar x_1)^2+\cdots+(x_{1p}-\bar x_p)^2+\cdots+(x_{np}-\bar x_p)^2
(x11−xˉ1)2+⋯+(xn1−xˉ1)2+⋯+(x1p−xˉp)2+⋯+(xnp−xˉp)2
把总的影响平方和记为SST,它分为两个部分,一部分是由控制变量引起的离差,记为SSA(组间离差平方和),另一部分是由随机变量引起的SSE(组内离差平方和)。
即SST=SSA+SSE。
F记为
F
=
S
S
A
/
(
k
−
1
)
S
S
E
/
(
n
−
k
)
F=\cfrac{SSA/(k-1)}{SSE/(n-k)}
F=SSE/(n−k)SSA/(k−1)
那么它是服从分布
F
(
k
−
1
,
n
−
k
)
F(k-1,n-k)
F(k−1,n−k)
当数据集的F大于上面的
F
α
F_\alpha
Fα表明组间离差平方和较大(k个类的差异较大)。反之类间的差异不明显。
R 2 R^2 R2统计量
R
2
=
S
S
R
S
S
T
=
∑
i
=
1
n
(
y
^
i
−
y
ˉ
)
2
∑
i
=
1
n
(
y
i
−
y
ˉ
)
2
R^2=\cfrac{SSR}{SST}=\cfrac{\sum_{i=1}^n(\hat y_i-\bar y)^2}{\sum_{i=1}^n(y_i-\bar y)^2}
R2=SSTSSR=∑i=1n(yi−yˉ)2∑i=1n(y^i−yˉ)2
y
^
i
,
y
i
\hat y_i,y_i
y^i,yi分别是估计值和真实值,如果预测准确,二者非常接近,则
R
2
R^2
R2趋近于1。
假定数据集已将样本分为k类,
G
1
,
G
2
,
⋯
,
G
k
G_1,G_2,\cdots,G_k
G1,G2,⋯,Gk,第i类含样品数
n
i
n_i
ni,且有:
n
1
+
n
2
+
⋯
+
n
k
=
n
n_1+n_2+\cdots+n_k=n
n1+n2+⋯+nk=n,记
G
t
G_t
Gt重心为
X
ˉ
(
t
)
\bar X^{(t)}
Xˉ(t),
G
t
G_t
Gt中第i个样本为:
X
ˉ
(
i
)
(
t
)
,
(
i
=
1
,
2
,
⋯
,
n
t
)
\bar X^{(t)}_{(i)},(i=1,2,\cdots,n_t)
Xˉ(i)(t),(i=1,2,⋯,nt),所有样本的重心为
X
ˉ
\bar X
Xˉ,则
G
t
G_t
Gt类中
n
t
n_t
nt个样本的离差平方和为:
W
t
=
∑
i
=
1
n
t
(
X
ˉ
(
i
)
(
t
)
−
X
ˉ
(
t
)
)
T
(
X
ˉ
(
i
)
(
t
)
−
X
ˉ
(
t
)
)
W_t=\sum_{i=1}^{n_t}(\bar X^{(t)}_{(i)}-\bar X^{(t)})^T(\bar X^{(t)}_{(i)}-\bar X^{(t)})
Wt=i=1∑nt(Xˉ(i)(t)−Xˉ(t))T(Xˉ(i)(t)−Xˉ(t))
所有样本SST:
S
S
T
=
∑
t
=
1
k
∑
i
=
1
n
t
(
X
ˉ
(
i
)
(
t
)
−
X
ˉ
(
t
)
)
T
(
X
ˉ
(
i
)
(
t
)
−
X
ˉ
(
t
)
)
SST=\sum_{t=1}^k\sum_{i=1}^{n_t}(\bar X^{(t)}_{(i)}-\bar X^{(t)})^T(\bar X^{(t)}_{(i)}-\bar X^{(t)})
SST=t=1∑ki=1∑nt(Xˉ(i)(t)−Xˉ(t))T(Xˉ(i)(t)−Xˉ(t))
SST可以分解(上面的形式是:SST=SSA+SSE):
S
S
T
=
∑
t
=
1
k
W
t
+
B
k
=
P
k
+
B
k
SST=\sum_{t=1}^kW_t+B_k=P_k+B_k
SST=t=1∑kWt+Bk=Pk+Bk
令
R
k
2
=
B
k
S
S
T
=
1
−
P
k
S
S
T
R^2_k=\cfrac{B_k}{SST}=1-\cfrac{P_k}{SST}
Rk2=SSTBk=1−SSTPk
R
2
R^2
R2越大,则类间差异越明显。
半偏 R 2 R^2 R2统计量
半
偏
R
2
=
B
K
L
2
S
S
T
=
R
k
+
1
2
−
R
k
2
半偏R^2=\cfrac{B_{KL}^2}{SST}=R^2_{k+1}-R^2_{k}
半偏R2=SSTBKL2=Rk+12−Rk2
如果某一个步骤的半偏
R
2
R^2
R2越大,说明这一步取消一个分类后(从k+1分类变成k类)的类间差异变小了,因此上一个步骤分为k+1个分类聚类效果好。
伪F统计量
伪
F
k
=
(
S
S
T
−
P
k
)
/
(
k
−
1
)
P
k
/
(
n
−
k
)
=
B
k
P
k
n
−
k
k
−
1
伪F_k=\cfrac{(SST-P_k)/(k-1)}{P_k/(n-k)}=\cfrac{B_k}{P_k}\cfrac{n-k}{k-1}
伪Fk=Pk/(n−k)(SST−Pk)/(k−1)=PkBkk−1n−k
因为我们不知道原总体理论分布是否为正态分布,因此
F
k
F_k
Fk统计量并不精确服从F分布,若某步骤伪
F
k
F_k
Fk统计量较⼤,则表明这n个样品可显著地分为k个类
伪 t 2 t^2 t2统计量
伪
t
2
=
B
K
L
2
(
W
K
+
W
L
)
/
(
n
K
+
n
L
−
2
)
伪t^2=\cfrac{B^2_{KL}}{(W_K+W_L)/(n_K+n_L-2)}
伪t2=(WK+WL)/(nK+nL−2)BKL2
若某步骤伪
t
2
t^2
t2统计量值较大,则表明
G
K
G_K
GK和
G
L
G_L
GL合并为
G
K
L
G_{KL}
GKL后类内离差平方和增量
B
K
L
2
B^2_{KL}
BKL2比
G
K
G_K
GK和
G
L
G_L
GL合并前的类内离差平方和大,那么就说明上一步没有合并前的
G
K
G_K
GK和
G
L
G_L
GL两个类的类间差异较大,不应该合并为
G
K
L
G_{KL}
GKL。
谱系图
Bermirmen(1972)提出根据谱系图进⾏分类的准则:
a.各类重心间距离较远
b.确定的类中各类包含元素不宜多
c.分类数符合研究目的
d.若运⽤集中不同的聚类方法处理,则应在各自的聚类图中发现相同的类