Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/313.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python scikit学习光谱聚类的输入值是否为负值?_Python_Machine Learning_Scikit Learn_Cluster Analysis - Fatal编程技术网

Python scikit学习光谱聚类的输入值是否为负值?

Python scikit学习光谱聚类的输入值是否为负值?,python,machine-learning,scikit-learn,cluster-analysis,Python,Machine Learning,Scikit Learn,Cluster Analysis,比如说,我有一个20列和10K行的df。由于数据的值范围很广,因此我使用以下代码来规范化数据: from sklearn.preprocessing import StandardScaler min_max_scaler = preprocessing.StandardScaler() df_scaled = min_max_scaler.fit_transform(df) df_scaled现在包含负值和正值。 现在,如果我将这个标准化数据帧传递给光谱簇,如下所示 spectral = S

比如说,我有一个20列和10K行的df。由于数据的值范围很广,因此我使用以下代码来规范化数据:

from sklearn.preprocessing import StandardScaler
min_max_scaler = preprocessing.StandardScaler()
df_scaled = min_max_scaler.fit_transform(df)
df_scaled
现在包含负值和正值。 现在,如果我将这个标准化数据帧传递给光谱簇,如下所示

spectral = SpectralClustering(n_clusters = k, 
                                  n_init=30,
                                  affinity='nearest_neighbors', random_state=cluster_seed,
                                  assign_labels='kmeans')
 clusters =  spectral.fit_predict(df_scaled)
我去拿集群标签

这就是让我困惑的地方:报纸上说 “只应使用产生相似性分数(随相似性增加的非负值)的内核。群集算法不检查此属性。”

问题:
df_scaled
的标准化负值是否会影响聚类结果? 或 它是否取决于我使用的亲和性计算,例如,
预计算的
rbf
?如果是,我如何使用规范化的输入值进行光谱聚类? 我的理解是,规范化可以改善聚类结果,有利于更快的计算。 非常感谢您提供有关如何解决此问题的帮助或提示。

您传递的是数据矩阵,而不是预计算的关联矩阵

“最近邻”使用非负二进制内核

为了更好地理解内部工作原理,请查看源代码

您传递的是数据矩阵,而不是预计算的关联矩阵

“最近邻”使用非负二进制内核

为了更好地理解内部工作原理,请查看源代码