1. 概述
根据所拥有的数据,可以使用三种不同的机器学习方法,包括监督学习、半监督学习和无监督学习。
在监督学习中,根据已标记数据,因此可以确定输出是关于输入的某种(隐函数)的正确值。通过半监督学习,用户将拥有一个大型数据集,其中一些数据已标记,但大部分未标记。由于涵盖了大量真实世界的数据,针对性标记每个数据点的成本可能很高,这就可以通过结合使用监督学习和非监督学习来解决这个问题。
无监督学习意味着我们拥有一个完全未标记的数据集,用户不知道数据中是否隐藏了任何模式,所以需将其留给算法去寻找它能找到的任何东西。这正是聚类算法的用武之地,它针对的是无监督学习问题。
聚类是一项无监督的机器学习任务,有时亦将其称为聚类分析。使用聚类算法意味着将为算法提供大量没有标签的输入数据,并让它在数据中找到它可以找到的任何分组。这些分组称为簇,簇是一组数据点,这些数据点基于它们与周围数据点的关系而彼此相似。聚类用于特征工程或模式发现之类的场景。
当我们从一无所知的数据入手时,聚类获得分组可能是对数据获得一些洞察或初探数据内部结构的好方法。
2.聚类方法
有不同类型的聚类算法可以处理具有各种特性的数据。通常可将聚类算法分为基于密度、基于分布、基于质心、基于层次等类别。
2.1基于密度(Density-based)
在基于密度的聚类中,数据按数据点密度低的区域包围数据点密度高的区域进行分组。基本上,该算法会找到数据点密集的地方并形成我们常说的“簇”。
簇可以是任何形状,不受预期条件的限制。这种类型的聚类算法不会尝试将异常值分配给簇,因此聚类后它们会被作为噪声点予以忽略或