4
Sklearn PCA是pca.components_的裝載?我很確定這是事實,但我試圖沿着一份研究論文來看,我從它們的裝載中得到了不同的結果。我無法在sklearn文檔中找到它。Sklearn PCA是pca.components_的裝載?
Sklearn PCA是pca.components_的裝載?我很確定這是事實,但我試圖沿着一份研究論文來看,我從它們的裝載中得到了不同的結果。我無法在sklearn文檔中找到它。Sklearn PCA是pca.components_的裝載?
pca.components_
是您投射數據的空間的正交基礎。它的形狀是(n_components, n_features)
。如果您想保留具有100個樣本和50個維度(也稱爲特徵)的數據集的前3個組件(例如,執行3D散點圖),則pca.components_
將具有形狀(3, 50)
。
我認爲你所說的「加載」是每個樣本投影到組件所跨向量空間的結果。致電pca.fit(X_train)
後,可撥打pca.transform(X_train)
獲得。結果將形成(n_samples, n_components)
,即我們前面的示例中的(100, 3)
。
變換根據文檔應用降維,所以我的矢量具有不同的形狀,然後組件。我只是試圖複製一個文件,它的這一個具體http://ftp.utdallas.edu/~herve/Abdi- rotations-pretty.pdf我需要加載來執行Varimax旋轉,所以我可以構建出具有相應變量的表格。 –
如果你不想減少維度,你可以將'n_components = n_features'傳遞給PCA構造函數(這是我認爲的默認值),並且調用變換的結果將具有形狀'(n_samples,n_features) (假設'n_samples> n_features)'。 您也可以選擇將'whiten = True'或'whiten = False'(給PCA構造函數)以決定是否要重新調整「加載」以使單元出現變化。 – ogrisel
如果您需要更多關於變換是如何工作的詳細信息,請閱讀該類的源代碼,它不是很複雜: https://github.com/scikit-learn/scikit-learn/blob/master/sklearn/decomposition/ pca.py – ogrisel