我有一些数据点,每个数据点包含 5 个聚集离散结果的向量,每个向量的结果由不同的分布生成,(我不确定的具体类型,我最好的猜测是 Weibull,形状参数在指数幂附近变化规律(大致为 1 到 0)。)
我希望使用像 K-Means 这样的聚类算法,根据其 5 个分量分布的属性将每个数据点分组。我想知道是否有任何既定的距离指标可以用于这些目的。到目前为止,我已经有了三个想法,但我不是一个经验丰富的统计学家(更像是一个刚开始数据挖掘的计算机科学家),所以我不知道我离正轨有多远。
因为我不确切知道我正在处理什么样的分布,所以我解决这个问题的蛮力方法是将每个分布(我每点有 5 个)切分到其各自的离散数据值中(我填充每个对应的长度相同,最后为零)并将这些值中的每一个用作数据点本身的单独属性。对于 PDF 和 CDF,我尝试使用曼哈顿距离和欧几里得距离作为基于这些属性的度量。
同样,由于我不知道我有什么样的分布,我想如果我要测量整体分布之间的距离,我可以在分布之间成对使用某种非参数检验,例如 KS 检验,找出给定分布由不同 PDF 生成的可能性。我认为我使用曼哈顿距离的第一个选项(上图)将是我使用这种方法可能得到的一种上限(因为 KS 统计量是 CDF 差异的最大绝对值,其中曼哈顿距离是PDF中差异的绝对值之和)。然后我考虑在每个数据点内组合不同的 KS-Statistics 或 P 值,可能使用欧几里得距离,但可能只取所有这些值的最大值。
最后,为了使用我能解释的关于分布形状的一点点信息,我想我可以尝试估计分布的参数以适应 Weibull 曲线。然后,我可以根据 Weibull 分布的两个参数 lambda 和 k(比例和形状)的差异对分布进行聚类,可能根据这些参数的方差或类似参数进行归一化。这是我认为我可能对如何规范化参数有所了解的唯一情况。
所以我的问题是,你会推荐什么度量/方法来聚类分布?我什至在这些方面都走在正确的轨道上吗?K-Means 甚至是一个很好的算法吗?
编辑:澄清数据。
每个数据点(Obj
我想要聚类的每个对象)实际上都包含5 vectors
数据。我知道这些对象恰好可以处于 5 个阶段。我们会说(为了简化起见)每个向量都是length N
.
这些向量中的每一个(称为vector i
)都是一个从 1 到 N 的整数概率分布x-values
,其中每个对应的 y 值表示测量对象value x
的概率。N 是我希望在对象的任何阶段测量的最大 x 值(这实际上不是我分析中的固定数字)。phase i
Obj
我通过以下方式确定这些概率:
我拿了一个单
Obj
,把它放进去phase i
,k trials
在每次试验中测量一次。每个测量值都是一个整数。我为单个对象的 5 个阶段中的每一个执行此操作,然后依次为每个对象执行此操作。我对单个对象的原始测量数据可能如下所示:向量 1. [90, 42, 30, 9, 3, 4, 0, 1, 0, 0, 1]
向量 2. [150, 16, 5, 0, 1, 0, 0, 0, 0, 0, 0]
...
向量 5. [16, ... ..., 0]
然后,我根据给定向量中的测量总数对每个向量进行归一化。这给了我该向量中的概率分布,其中每个对应的 y 值表示在 中测量的
value x
概率phase i
。