共计 1888 个字符,预计需要花费 5 分钟才能阅读完成。
原文链接:http://tecdat.cn/?p=17808
原文出处:拓端数据部落公众号
什么是聚类?
“ 聚类是将数据集分为几组的过程,其中包含类似的数据点”。聚类是一种无监督的机器学习,在您领有未标记的数据时应用。
比方:
坐在餐馆的用餐者。假如餐厅中有两个桌子。桌子 1 中的人可能彼此相干,可能是一组家庭成员或共事。
相似的,桌子 2 中的人可能彼此相干。然而,当比拟坐在两个桌子的人时,他们是齐全不同的,可能基本没有关联。
聚类也以雷同的形式工作。一个聚类中的数据点与另一聚类中的数据点齐全不同。同一聚类中的所有点都雷同或彼此相干。
聚类具备不同的算法。最受欢迎的是 K - 均值聚类。
什么是 K 均值聚类?
K-Means 是一种聚类算法,其次要指标是将类似的元素或数据点分组为一个聚类。K- 均值中的“K”代表簇数。
间隔量度将确定两个元素之间的相似性,并将影响簇的形态。通常,欧几里得间隔将用于 K -Means 聚类
欧几里得间隔是“一般”直线。它是欧氏空间中两点之间的间隔。
K-Means 算法如何工作?
输出:样本集 D,簇的数目 k,最大迭代次数 N;
输入:簇划分(k 个簇,使平方误差最小);
算法步骤:
(1)为每个聚类抉择一个初始聚类核心;
(2)将样本集依照最小间隔准则调配到最邻近聚类;
(3)应用每个聚类的样本均值更新聚类核心;
(4)反复步骤(2)、(3),直到聚类核心不再发生变化;
(5)输入最终的聚类核心和 k 个簇划分;
SAS 中的 K - 均值聚类
让咱们来看一个驰名的 IRIS 数据集。应用 proc 检查数据集
/* 检查数据内容 */
proc means data=work.iris N Nmiss mean median max min;
run;
它具备 150 个观测值和 5 个变量。未检测到缺失值或离群值。咱们将仅应用四个变量,即 sepal\_length,sepal\_width,petal\_length 和 petal\_width。数据集以“cm”为单位。能够删除“指标”变量,因为它是类别变量。
对于鸢尾花数据集的简短介绍。这是一个多变量数据集,由英国统计学家、生物学家 罗纳德·费舍尔(Ronald Fisher)在 1936 年为他的钻研论文引入。
在剖析数据集之前理解数据。
/* 删除指标列将新数据保留为 IRIS1 */
drop target;
run;
在运行聚类分析之前,咱们须要将所有剖析变量(实数变量)标准化为均值零和标准偏差为 1(转换为 z 分数)。在这里,咱们的数据集曾经标准化。
/* 聚类分析 */
method = centroid ccc print=15 outtree=Tree;
METHOD => 确定过程应用的聚类办法。在这里,咱们应用 CENTROID 办法。
CCC 是聚类规范—它有助于找出最佳的聚类点。
须要找出最佳聚类簇。
前三个特征值约占总方差的 99.48%,因而,倡议应用三个聚类。然而,能够在 ccc 图中对其进行穿插验证。
从图中看到,聚类规范有 15 个值(如咱们在代码输入中给出的 = 15)
从下面的 CCC 图能够看出,肘部降落在 3 个聚类。因而,最佳群集将为 3。
为了将 150 个观测值中的每个观测值分类为三个聚类,咱们能够应用 proc 树。ncl = 3(咱们的最佳簇为 3)。
/* 保留 3 个聚类 */
proc tree noprint ncl=3 out=
150 个察看后果分为三类。
应用 proc candisc 和 proc sgplot 创立散点图
/* 生成散点图 */
proc sgplot data = can;
title "
咱们能够看到,剖析分明地将三个聚类簇离开。聚类簇 1 为蓝色,2 为红色,3 为绿色。
K- 均值聚类的优缺点
长处:
1)即便违反有些假如,也能很好地工作。
2)简略,易于实现。
3)易于解释聚类后果。
4)在计算成本方面疾速高效。
毛病:
1)即便输出数据具备不同的簇大小,平均成果使得后果常常会产生大小绝对统一的簇。
2)不同密度的数据可能不适用于聚类。
3)对异样值敏感。
4)在 K 均值聚类之前须要晓得 K 值。
最受欢迎的见解
1.R 语言 k -Shape 算法股票价格工夫序列聚类
2.R 语言中不同类型的聚类办法比拟
3.R 语言对用电负荷工夫序列数据进行 K -medoids 聚类建模和 GAM 回归
4.r 语言鸢尾花 iris 数据集的档次聚类
5.Python Monte Carlo K-Means 聚类实战
6. 用 R 进行网站评论文本开掘聚类
7. 用于 NLP 的 Python:应用 Keras 的多标签文本 LSTM 神经网络
8.R 语言对 MNIST 数据集剖析 摸索手写数字分类数据
9.R 语言基于 Keras 的小数据集深度学习图像分类