當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


Python sklearn MDS用法及代碼示例


本文簡要介紹python語言中 sklearn.manifold.MDS 的用法。

用法:

class sklearn.manifold.MDS(n_components=2, *, metric=True, n_init=4, max_iter=300, verbose=0, eps=0.001, n_jobs=None, random_state=None, dissimilarity='euclidean')

多維縮放。

在用戶指南中閱讀更多信息。

參數

n_components整數,默認=2

將差異浸入其中的維度數。

metric布爾,默認=真

如果 True ,執行度量 MDS;否則,執行非度量 MDS。

n_init整數,默認=4

SMACOF 算法將以不同的初始化運行的次數。最終結果將是運行的最佳輸出,由最終應力最小的運行確定。

max_iter整數,默認=300

SMACOF 算法單次運行的最大迭代次數。

verbose整數,默認=0

詳細程度。

eps浮點數,默認=1e-3

關於宣布收斂的應力的相對容差。

n_jobs整數,默認=無

用於計算的作業數。如果使用多個初始化 (n_init),則算法的每次運行都是並行計算的。

None 表示 1,除非在 joblib.parallel_backend 上下文中。 -1 表示使用所有處理器。有關詳細信息,請參閱詞匯表。

random_stateint、RandomState 實例或無,默認=無

確定用於初始化中心的隨機數生成器。傳遞 int 以獲得跨多個函數調用的可重現結果。請參閱術語表。

dissimilarity{‘euclidean’, ‘precomputed’},默認='歐幾裏得'

要使用的差異度量:

  • ‘euclidean’:

    數據集中點之間的成對歐幾裏得距離。

  • ‘precomputed’:

    預先計算的差異直接傳遞給 fitfit_transform

屬性

embedding_ndarray 形狀(n_samples,n_components)

將數據集的位置存儲在嵌入空間中。

stress_浮點數

應力的最終值(視差的平方距離與所有約束點的距離之和)。

dissimilarity_matrix_ndarray 形狀(n_samples,n_samples)

點之間的成對差異。對稱矩陣:

  • 或者通過將dissimilarity設置為‘precomputed’來使用自定義相異矩陣;
  • 或使用歐幾裏得距離從數據構造相異矩陣。
n_features_in_int

擬合期間看到的特征數。

feature_names_in_ndarray 形狀(n_features_in_,)

擬合期間看到的特征名稱。僅當 X 具有全為字符串的函數名稱時才定義。

n_iter_int

最佳應力對應的迭代次數。

參考

“現代多維尺度——理論與應用”Borg, I.; Groenen P. Springer 統計係列(1997 年)

“非度量多維標度:一種數值方法”Kruskal, J. Psychometrika, 29 (1964)

“通過優化非度量假設的擬合優度來進行多維縮放” Kruskal, J. Psychometrika, 29, (1964)

例子

>>> from sklearn.datasets import load_digits
>>> from sklearn.manifold import MDS
>>> X, _ = load_digits(return_X_y=True)
>>> X.shape
(1797, 64)
>>> embedding = MDS(n_components=2)
>>> X_transformed = embedding.fit_transform(X[:100])
>>> X_transformed.shape
(100, 2)

相關用法


注:本文由純淨天空篩選整理自scikit-learn.org大神的英文原創作品 sklearn.manifold.MDS。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。