基于约束的聚类分析有哪些类型?
基于约束的聚类查找满足用户声明的偏好或约束的聚类。它基于约束的性质,可以采用基于约束的聚类来代替不同的方法。有几类约束,如下所示 -
对单个对象的约束- 它可以定义对要聚类的对象的约束。例如,在房地产应用程序中,人们可能只想在空间上聚集价值超过 100 万美元的豪宅。此约束限制了要聚类的对象集合。它可以简单地通过预处理(例如,使用 SQL 查询实现选择)进行管理,之后问题就归结为无约束聚类的示例。
聚类参数选择的约束- 用户可以喜欢为每个聚类参数设置所需的区域。聚类参数通常非常特定于给定的聚类算法。参数示例包含 k,k 均值算法中所需的聚类数;或 DBSCAN 算法中的 ε(半径)和 MinPts(最小点数)。
尽管此类用户声明的参数可以很好地保持聚类结果,但它们通常仅限于算法本身。因此,它们的微调和处理通常不被视为基于约束的聚类形式。
距离或相似度函数的约束- 它可以为要聚类的对象的确定属性定义多个距离或相似度函数,或者为有限的对象对定义不同的距离度量。例如,在对运动员进行聚类时,它可以对身高、体重、年龄和技能水平使用多种加权方案。
用户指定对单个集群属性的约束- 用户可以指定结果集群的所需特征,这可以强有力地保持集群过程。
考虑一个包裹递送公司,它想决定一个城市中 k 个服务站的位置。该公司有一个用户数据库,其中记录了用户的姓名、位置、客户开始使用公司服务的时间长度以及月平均价格。它可以将此位置选择问题表述为使用基于客户位置计算的距离函数的无约束聚类实例。
更聪明的方法是将客户分为两类——高价值客户(需要频繁、定期服务)和普通客户(需要偶尔服务)。它可以节省成本并支持良好的服务,经理添加了以下约束 -
每个站点必须至少为 100 名高价值客户提供服务。
每个站点必须至少为 5,000 名普通客户提供服务。基于约束的聚类将在聚类过程中考虑此类约束。
基于“部分”监督的半监督聚类- 使用一些弱监督形式可以从本质上提高无监督聚类的质量。这可以是成对约束的形式(即,标记为由相同或不同集群拥有的对象对)。这种受约束的聚类过程称为半监督聚类。