1

我正在尝试绘制从模糊 C 均值聚类算法获得的聚类的可视化。使用通过 k-means 获得的清晰集群,通过正常的散点图(例如通过 matplotlib 获得的散点图)很容易可视化。是否有推荐的方法来绘制模糊集群以可视化重叠?如果是,如何?

4

1 回答 1

2

一种选择是将您的数据分为两组:属于集群的一部分且归属度 >= X 的点和小于 X 的点。将归属度 >= X 的点称为清晰组。对于那些小于 X 的人,您可以为每个不同的集群分组,称这些为模糊组。每个模糊组都将具有不在清晰组中的所有数据点。

现在,当您进行绘图时,为每个集群分配一种颜色,假设您有三个集群 A、B 和 C。为它们分配蓝色、绿色和红色颜色。以 100% 的不透明度绘制清晰组的组颜色,然后为每个模糊组查看点的归属程度,并以集群颜色的某些缩减不透明度绘制它们。

由于您必须为每个模糊组作为一个整体分配一种颜色,因此最好将它们“分类”为按归属程度的直方图,或者您可以一起跳过所有组并单独绘制每个点。

例如,假设我们有 2 个集群 A 和 B,并且

data = [(0.2,0.8),(0.5,0.5),(0.65,0.35),(0.25,0.75)]

其中 data 表示我们每个点的归属程度 (A,B)(我不会列出其坐标,但假设它们可以用 表示ptn)。那么如果 X 是 0.7 我们会做crisp_A = [pt1]and crisp_B = [pt4]。然后fuzzy_A = [pt2, pt3]fuzzy_B = [pt2,pt2]crisp_A将和绘制crisp_B为全色,然后使用 acm.hsv或类似于比例的东西fuzzy_A以及fuzzy_B它们各自的归属程度。

于 2013-07-20T00:23:39.600 回答