需要注意的是,集群分析并非单一算法作业。相反,众多算法通常承担更广泛的分析任务,并且每种算法往往与其他算法大不相同。理想情况下,聚类算法能够创建集群内相似度非常高的集群,这意味着集群内的数据之间极其相似。此外,该算法能够创建集群间相似度更低的集群,这意味着每个集群包含的信息会尽可能与其他集群的大有不同。
因为有许多概念讲述集群应是什么或者应如何定义集群,因此也出现了许多聚类算法。事实上,截止到目前,已公布的聚类算法超过了 100 种。这些算法代表着一种用于机器学习处理无监督式数据的强大技术。设置一种专为特定类型的集群模型而构建和设计的算法,将其用于处理包含不同类型的集群模型的数据集时,通常会以失败而告终。
所有聚类算法中的共同线程是一组数据对象。但是,数据科学家和编程人员使用不同的集群模型,并且每个模型要求不同的算法。聚类或集群集通常被区分为硬聚类(每个对象属于或不属于某个集群)或软聚类(每个对象在某种程度上属于每个集群)。
这与所谓的服务器聚类完全不同,因为一台服务器暂时发生故障时,另一台服务器会接管工作,因此服务器聚类通常是一组服务器协同工作,从而为用户提供更高的可用性并减少宕机时间。
聚类分析方法包括:
- K-Means 通过将几何点之间的距离均值最小化来查找集群。
- DBSCAN 使用基于密度的空间聚类。
- 频谱聚类是一种基于相似度图的算法,将数据点之间的最近邻关系建模为无向图形。
- 层次聚类将数据分组为多层次的相关图形层次树,从最精细的层次(原始层)开始,一直到最粗略的层次。
聚类用例
随着可用聚类算法数量的不断增加,聚类成为解决一系列业务和组织类型的主要方法,并且其用例各有不同,这已不足为奇。聚类用例涉及生物序列分析、人类遗传聚类、医学影像组织聚类、市场或客户分割、社交网络或搜索结果分组推荐、计算机网络异常检测、自然语言处理文本分组、犯罪集群分析和气候集群分析。下面描述了其中一些示例。
- 网络流量分类。各组织寻求各种方法来了解进入其网站的不同流量类型,特别是对于垃圾内容以及来自机器人的流量的识别。聚类用于将流量源的共同特征分组在一起,然后创建集群,对流量类型进行分类和区分。这样一来,流量阻断更加可靠,同时能够获得推动所需来源流量增长的更佳见解。
- 营销和销售。营销成功意味着以正确的方式将合适的人员或潜在客户定位为目标受众。聚类算法会可能基于购买可能性,将具有相似特征的人员分组在一起。定义这些群组或集群后,对他们进行测试营销就会变得更加有效,有助于完善信息以了解他们。
- 文档分析。任何处理大量文档的组织都能在文档生成时进行高效且快速的整理,进而从中受益。这意味着能够理解文档中的深层主题,然后将其与其他文档进行比较。聚类算法会检查文档中的文本,然后将其划分到不同主题的集群中。这样一来,可以根据实际内容快速地整理这些文档。
数据科学家和聚类
如上所述,聚类是一种无监督式机器学习方法。机器学习可以处理庞大的数据量,使数据科学家能够将时间花费在分析已处理的数据和模型上,从而获得切实可行的见解。应用聚类算法时,数据科学家可以看到数据点落入哪些分组,从而利用聚类分析从我们的数据中获得一些有价值的见解。