IT技术博客大学习 共学习 共进步
全部 移动开发 后端 数据库 AI 算法 安全 DevOps 前端 设计 开发者

标签:K-Means

共 2 篇相关文章

IT 累计浏览 3,332

聚类算法之ISODATA

聚类算法中的K-Means虽然经典,但需要预先设定簇数K且对初始中心敏感。这篇讲的是ISODATA算法,它作为一种迭代自组织数据分析方法,核心改进在于让聚类过程能够动态调整簇的数量。 文章指出,ISODATA在K-Means基础上引入了“合并”与“分裂”两个关键操作:当两个簇中心过于接近时进行合并,而当一个簇内部样本过于分散或数量过多时则尝试将其分裂。算法需要用户提供几个关键参数,如预期的初始簇数、允许的最小样本数、方差阈值等,这些参数共同划定了簇数量最终可能变化的范围(通常在初始设定值的半倍到两倍之间)。 作者也点明了ISODATA的一个现实困境:虽然原理直观地解决了“K值设定”难题,但由于需要调整的参数较多,且部分阈值难以准确指定,这使得它在实际应用中反而不如更简单的K-Means受欢迎。文章通过对比K-Means,清晰阐述了ISODATA的机制与适用边界。

IT 累计浏览 2,820

K-Means算法之K值的选择

这篇讲的是K-Means聚类中一个经典又棘手的问题:当数据维度高、无法肉眼观察时,该如何确定聚类数K? 作者从最简单的“拍脑袋法”开始,比如用样本量估算,快速过渡到更可靠的方法。重点介绍了两种实用技术:一是直观的“肘部法则”,通过绘制K值与误差平方和的关系曲线,寻找拐点来确定最佳K值;但作者也指出,当拐点不明显时,这个方法就失效了。因此,文章引入了斯坦福大学提出的“间隔统计量”方法,它通过蒙特卡洛采样构建参考分布,进行更严谨的统计推断来选择K值。 文章不仅清晰解释了原理和公式,还直接附上了两种方法的Python实现代码。整体来看,它把从经验法则到统计方法的演进路径讲得很清楚,并且提供了实操性强的工具,帮助你在面对不同数据时,做出更合理的选择。