什么是 scipy.cluster.vq.kmeans() 方法?


scipy.cluster.vq.kmeans(obs, k_or_guess, iter=20, thresh=1e- 05, check_finite=True) 方法通过对一组观测向量执行 k 均值算法来形成 k 个聚类。为了确定质心的稳定性,此方法使用阈值来比较观测值与其对应质心之间平均欧几里得距离的变化。此方法的输出是一个代码簿,用于映射质心到代码,反之亦然。

以下是其参数的详细说明:

参数

  • obs− ndarray

    它是一个 'M' 行 'N' 列的数组,其中每一行是一个观测值,列是在每次观测期间看到的特征。在使用之前,必须使用 whiten() 函数对这些特征进行白化处理。

  • k_or_guess− int 或 ndarray

    它是要生成的质心数量。生成后,每个质心都会被赋予一个代码。此代码也是代码簿矩阵中质心的行索引。最初,k 个质心将从观测矩阵中随机选择。

  • iter− int,可选

    此参数表示运行 k 均值算法的次数,以便它返回具有最低失真的代码簿。如果您已经使用 k_or_guess 参数指定了初始质心,则应忽略此参数。

  • thresh− float,可选

    此参数表示阈值。如果自上次迭代以来的失真变化小于或等于此阈值,则算法将默认终止。

  • check_finite− bool,可选

    此参数用于检查输入矩阵是否仅包含有限数字。禁用此参数可能会提高性能,但如果观测值确实包含无穷大,也可能导致一些问题,例如崩溃或不终止。此参数的默认值为 True

返回值

  • code− ndarray

    它返回一个 k 行 N 列的 k 个质心数组,其中第 j 个质心代码簿用代码 j 表示。此代码簿给出看到的最低失真。

  • distortion− float

    这是传递的观测向量与生成的质心之间的平均欧几里得距离。

更新于:2021年11月24日

147 次浏览

开启你的 职业生涯

通过完成课程获得认证

开始学习
广告