2016-05-09 74 views
2

在scikit學習,一些聚類算法兼得predict(X)fit_predict(X)方法,如KMEANS均值漂移,而其他人只有後者,像SpectralClustering。根據文檔:scikit學習集羣:預測(X)與fit_predict(X)

fit_predict(X[, y]): Performs clustering on X and returns cluster labels. 
predict(X): Predict the closest cluster each sample in X belongs to. 

我真的不明白兩者之間的區別,他們似乎相當於我。

回答

3

爲了使用'預測',您必須首先使用'fit'方法。因此,使用'fit()'和'predict()'與使用'fit_predict()'確實是一樣的。但是,在需要了解模型的初始化參數的情況下,而不是使用'fit_predict()'的情況下,只需使用'fit()'就可以從中獲益,在這種情況下,您只需獲取運行模型的標籤結果關於數據。

+0

這並不完全回答這個問題。他們問「爲什麼'KMeans'有一個'預測'的方法,但是'SpectralClustering'不......我實際上不能解決這個問題的答案......也許這是一個錯誤/缺失的功能?我的理解是,作爲scikit-learn API設計的一部分,所有的分類器都應該有一個「擬合」和「預測」方法...... – maxymoo

+0

是的,你說的對,我的回答更接近'我並不真的瞭解兩者之間的差異,他們似乎相當於我。「部分。 – Oer