确定最佳聚类数初步方法:理解给定阈值法,数据点散布图法
总离差平方和的分解: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统计量值与分类数的散点图,分析聚类树形图
选定某种聚类方法,按系统聚类的步骤并类后,得到谱系聚类图,反映样本(或变量)间的亲属关系。
给出合适的阀值 T T T,当类间距离 ≤ T \le T ≤T时,形成的各个类中所包含的样品间关系密切,应属于同一类;反之不并类。
a.若考察2个指标,可通过数据点的散布图直观确定类的个数。
b.若考察3个指标,可通过绘制三维散布图,旋转三维坐标轴,由数据点的分布确定应分为几个类。
c.若考察3个以上指标,可由这些指标综合出2个或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 = 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 = 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 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 = 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.若运⽤集中不同的聚类方法处理,则应在各自的聚类图中发现相同的类