其他分享
首页 > 其他分享> > 九-1.聚类分析

九-1.聚类分析

作者:互联网

聚类通常作为其他数据挖掘或建模的前奏

一.特征认知

1.有监督无监督

分类: 有监督学习(有标签学习)

数据特征

聚类: 无监督学习(没有标签)

数据特征

2.聚类概念

3.聚类要求

二.相似度衡量

度量关键: 距离

1.变量分类

2.相似系数

简单匹配系数: SMC=匹配的属性个数/属性个数
Jaccard系数:
余弦相似系数: 文本度量

3.示例

x=(1,0,0,0,0,0,0,0,0,0)
y=(0,0,0,0,0,0,1,0,0,1)

f00 =7 (x取0并且y取0的属性个数)
f01 =2 (x取0并且y取1的属性个数)
f10 =1 (x取1并且y取0的属性个数)
f11 =0 (x取1并且y取1的属性个数)

简单匹配系数:SMC =(f11 +f00) / (f01 + f10 + f11 + f00)=(0+7)/(2+1+0+7)=0.7

Jaccard系数:J = (f11) / (f01 + f10 +f11) =0/2+1+0 =0

三.常用聚类算法

1.K-均值聚类

2.实例

2.K-中心点聚类

3.密度聚类

4.层次聚类

5.期望最大化聚类

四.性能衡量

1.参数认知

名称定义例子
样本集:D={x1,…xn}1245
样本实际类比:C={c1,…c*n}0011
聚类结果:C={c1,…cn}1000
SSSDDSDD
{4,5}{2,4}{2,5}{1,2}{1,4}{1,5}
1212

2.外部指标

聚类结果与实际结果进行比较

① jaccard系数

$$
jc=\frac{SS}{SS+SD+DS}

$$

j c = 1 1 + 2 + 1 jc=\frac{1}{1+2+1} jc=1+2+11​ = 1 4 \frac{1}{4} 41​

②Fm系数

$$
FM=\sqrt{\frac{SS}{SS+SD}*\frac{SS}{SS+DS}}

$$

F M = 1 1 + 2 ∗ 1 1 + 1 FM=\sqrt{\frac{1}{1+2}*\frac{1}{1+1}} FM=1+21​∗1+11​ ​ = 1 3 \sqrt{\frac{1}{3}} 31​

③Rand系数

$$
RD=\frac{2(SS+SD)}{m(m-1)}

$$

R D = 2 ( 1 + 2 ) 4 ( 4 − 1 ) RD=\frac{2(1+2)}{4(4-1)} RD=4(4−1)2(1+2)​ = 1 2 \frac{1}{2} 21​

3.内部指标

不依赖标签

五.sklearn函数

from sklearn.cluster import KMeans
参数名意义接收默认
n_clusters簇数设定int8
init初始化方法‘k-means++’:选取平均值为中心点
‘random’:随机选取中心点
‘k-means++’
max_iter两次迭代之间的聚类中心的差异声明收敛int (!==0)300
precompute_distances预计算距离‘auto’:如果n个样本n_samples * n_clusters > 1200万,不预先计算距离。这相当于使用双精度的每个作业大约100 MB的开销。
True :总是预先计算距离
False:永远不要预先计算距离。
’auto’
verbose详细模式int0
random_state确定用于质心初始化的随机数生成intNone
copy_x是否复杂并修改使用该数据boolTrue
n_jobs用于计算的OpenMP线程数intNone
algorithm表示K-means要使用的算法“elkan”变化更为有效。但是,由于分配了一个额外的形状数组(n_samples, n_clusters),所以内存更多。
“auto”(为向后兼容而保留)选择了“Elkan”,但它将来可能会改变,以获得更好的启发式。
”auto”

六.评估指标

sklean.clusrer.

标签:系数,frac,SS,样本,聚类,f11,聚类分析
来源: https://blog.csdn.net/tyh751734196/article/details/116998808