非监督式机器学习:群集

聚类分析是一种非监督式机器学习形式,在此形式下,基于观察值的数据值或特征的相似性,将观察值分组到群集中。 这种就是非监督式机器学习,因为它不使用先前已知的标签值来训练模型。 在聚类分析模型中,标签是群集,仅根据该群集特征向群集分配观察结果。

示例 - 聚类分析

例如,假设一位植物学家观察花的样本,并记录每支花上的叶子和花瓣的数量:

数据集中没有已知的标签,只有两个特征。 目的不是识别花的不同类型(品种);而是根据叶子数和花瓣数将相似的花朵分组在一起。

叶子 (x1) 花瓣 (x2)

0 5

0 6

1 3

1 3

1 6

1 8

2 3

2 7

2 8

训练聚类分析模型

有多种算法可用于聚类分析。 最常使用的算法之一是 K-Means 聚类分析,其中包括以下步骤:

对特征值 (x) 进行向量化以定义 N 维坐标(其中 N 是特征数)。 在花的示例中,有两个特征:叶子数 (x1) 和花瓣数 (x2)。 因此,特征向量具有两个坐标,可用于在二维空间中以概念形式绘制数据点 ([x1,x2])

决定要使用多少个群集来给花分组,并将此值称为 k。 例如,若要创建三个群集,则 k 值为 3。 然后,在随机坐标中绘制 k 点。 这些点将成为每个群集的中心点,因此它们被称为质心。

每个数据点(在本例中为一朵花)都被分配到最近的质心。

每个质心将根据分配给它的数据点之间的平均距离,移动到这些数据点的中心。

移动质心后,数据点现在可能更接近其他质心,因此数据点将根据新的最近的质心重新分配给群集。

质心移动和群集重新分配步骤会重复执行,直到群集变得稳定或达到预定的最大迭代次数为止。

下面的动画展示了此过程:

评估聚类分析模型

由于没有可用于比较预测群集分配的已知标签,因此聚类分析模型的评估基于生成的群集彼此的分离程度。

可以使用多个指标来评估群集分离情况,包括:

距群集中心的平均距离:群集中的每个点与群集的质心的平均接近程度。

距其他中心的平均距离:群集中的每个点与所有其他群集的质心的平均接近程度。

距聚类中心的最大距离:群集中的点与其质心之间的最远距离。

剪影:介于 -1 和 1 之间的值,用于汇总同一群集中的点与不同群集中的点之间的距离比率(越接近 1,群集分离效果越好)。

相关推荐
极客学术工坊11 小时前
2023年第二十届五一数学建模竞赛-A题 无人机定点投放问题-基于抛体运动的无人机定点投放问题研究
人工智能·机器学习·数学建模·启发式算法
Theodore_102212 小时前
深度学习(9)导数与计算图
人工智能·深度学习·机器学习·矩阵·线性回归
PPIO派欧云13 小时前
PPIO上新GPU实例模板,一键部署PaddleOCR-VL
人工智能
沙威玛_LHE13 小时前
树和二叉树
数据结构·算法
py有趣15 小时前
LeetCode算法学习之两数之和 II - 输入有序数组
学习·算法·leetcode
TGITCIC15 小时前
金融RAG落地之痛:不在模型,而在数据结构
人工智能·ai大模型·ai agent·ai智能体·开源大模型·金融ai·金融rag
夏鹏今天学习了吗15 小时前
【LeetCode热题100(62/100)】搜索二维矩阵
算法·leetcode·矩阵
极客学术工坊16 小时前
2022年第十二届MathorCup高校数学建模挑战赛-D题 移动通信网络站址规划和区域聚类问题
机器学习·数学建模·启发式算法·聚类
吃着火锅x唱着歌17 小时前
LeetCode 1128.等价多米诺骨牌对的数量
算法·leetcode·职场和发展
十八岁讨厌编程17 小时前
【算法训练营 · 补充】LeetCode Hot100(中)
算法·leetcode