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

所述scipy.cluster.vq.kmeans(OBS,k_or_guess,ITER = 20,脱粒= 1e- 05,check_finite =真)通过执行K-means算法的一组观测向量的方法的形式k个簇。为了确定质心的稳定性,该方法使用阈值来比较观测值与其对应质心之间的平均欧几里德距离的变化。该方法的输出是一个将质心映射到代码的代码簿,反之亦然。

下面给出其参数的详细解释-

参数

  • obs - ndarray

    它是一个由 'N' 组成的 'M' 数组,其中每一行是一个观察值,列是在每次观察过程中看到的特征。在使用之前,必须使用该whiten()功能将这些特征白化。

  • k_or_guess - int 或 ndarray

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

  • iter - int,可选

    此参数表示运行 k-means 的次数,以便它返回失真最低的码本。如果您已经使用 k_or_guess 参数指定了初始质心,则应忽略此参数。

  • thresh - 浮动,可选

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

  • check_finite - 布尔值,可选

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

退货

  • 代码- ndarray

    它返回由 k 个质心组成的 N 个数组,其中第 j 个质心码本用代码 j 表示。该码本给出了所见的最低失真。

  • 失真- 浮动

    这是通过的观察向量和生成的质心之间的平均欧几里德距离。