第3章 聚类
本书前两个章节对机器学习进行了综述性的介绍,其中包括大量与机器学习相关的主题,从第3章开始,书中的内容将对一些机器学习模型的实现过程进行详细讲解。
在第3章,本章将探索一些有效且简单的方法来自动实现有趣的数据聚合,并开始研究数据产生自然分组的原因。
本章将包括以下几个主题的内容。
- 逐行实现K-means算法的示例,并解释数据结构和程序的实现。
- 对k近邻(K-Nearest Neighbors,K-NN)算法的详细解释,并使用代码示例来解释整个过程。
- 确定表示一组样本的最佳分组数量的方法。
3.1 分组—— 一种人类行为
人类通常倾向于将日常生活中的元素聚合到具有相似特征的组里,人类思维的这一特征也可以通过算法复现,与之相对,有一个可应用于任何无标签数据集的简单操作,即围绕共同特征对元素进行分组。
正如我们所描述的,机器学习发展到现阶段,聚类作为教学中的入门级主题,适用于处理简单的数据集分类。
对此,作者建议读者还是需要对这个领域进行详细的研究,因为就目前理论研究的趋势来看,在AI可完成的任务全面推广前,当前模型的性能将达到一个稳定的水平,而推动跨越边界迈向人工智能下一阶段的动力会是什么呢?我们认为会是本章所介绍的聚类方法的复杂的变化形式——无监督学习方法。
下面回归到本章的主题,从简单的分组标准开始,即到公共中心的距离,这被称为K-means。
3.2 自动化聚类过程
所有聚类信息分组方法都遵循一个的通用模式:首先是初始化阶段,然后在迭代过程中加入新的元素,并对新的组间关系进行更新,重复以上过程直到组的特征形成,满足停止更新的标准为止,图3.1说明了此流程。
图3.1 一般聚类算法过程
对整个过程有了清晰的了解后,我们将学习几个案例,它们都使用了以上模式,我们从K-means开始。 ...
Get 机器学习开发者指南 now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.