Python sklearn谱聚类的结果是聚类数少于集合

Python sklearn谱聚类的结果是聚类数少于集合,python,scikit-learn,cluster-analysis,Python,Scikit Learn,Cluster Analysis,上面的代码生成了数组([3,3,3,3,3,3,3,3,3,1],dtype=int32),这让我感到惊讶。光谱聚类需要设置多个聚类,我做到了,但只得到两个聚类。我遗漏了什么?有时,根据初始化情况,光谱聚类(和k-means)可以找到空聚类 例如,将random_state设置为17将导致4个集群: from sklearn.cluster import SpectralClustering import numpy as np test = np.array([[63.15907836],

上面的代码生成了
数组([3,3,3,3,3,3,3,3,3,1],dtype=int32)
,这让我感到惊讶。光谱聚类需要设置多个聚类,我做到了,但只得到两个聚类。我遗漏了什么?

有时,根据初始化情况,光谱聚类(和k-means)可以找到空聚类

例如,将
random_state
设置为17将导致4个集群:

from sklearn.cluster import SpectralClustering
import numpy as np
test = np.array([[63.15907836],
       [69.67386298],
       [67.20030411],
       [66.25165771],
       [62.21031327],
       [55.09531565],
       [65.85034014],
       [52.99841912],
       [52.04523986],
       [52.09008007],
       [94.65364516]])
clustering = SpectralClustering(n_clusters = 4).fit(test)
clustering.labels_
您可以在for k-means(光谱聚类依赖于k-means)中找到它的说明:

clustering = SpectralClustering(n_clusters = 4, random_state=17).fit(test)