1
Singular value decomposition矩陣的大小M
(M,N)
手段融通如何用sklearn獲得所有三個SVD矩陣?
如何從scikit-learn
和numpy
包獲得全部三個矩陣?
我想我可以得到Sigma
與PCA
model:
import numpy as np
from sklearn.decomposition import PCA
model = PCA(N, copy=True, random_state=0)
model.fit(X)
Sigma = model.singular_values_
Sigma = np.diag(singular_values)
那其他矩陣?
當數據有噪音時,這與PCA等效嗎? ''np.linalg.svd'只會拋出一個異常,而'PCA'估計器仍然會運行? – Dims
我不明白爲什麼它應該是等效的。 GitHub中的PCA代碼也使用numpy.linalg.svd(這在我在答案中提供的鏈接中顯示)。唯一的區別是在PCA代碼中它們使用full_matrices = False,並且它們在分解之前居中數據,但它仍然是相同的函數。 –