我試圖找出大數據集的本徵值/本徵向量,以便計算PCA的 。我可以計算出特徵向量爲2x2
,3x3
等。Matlab的本徵值
的問題是,我有一個包含451x128我計算的協方差矩陣 讓我從這個128x128的值的數據集。這一點,因此,如下所示:
A = [ [1, 2, 3,
2, 3, 1,
..........,
= 128]
[5, 4, 1,
3, 2, 1,
2, 1, 2,
..........
= 128]
.......,
128]
計算的特徵值和特徵向量128×128向量似乎真的很難和 需要佔用大量的計算能力。但是,如果我允許A中的每個塊爲二維(3xN
),則可以計算協方差矩陣,該矩陣將給出3x3
矩陣。
我的問題是這樣的:這對於求解特徵值和向量是否是一個好的或合理的假設?是這樣的:
A是含有128x451, 的foreach塊的計算的協方差矢量, 的特徵向量,像這樣的2維矢量:
Eig1 = EIG(COV (A [0])) Eig2 = EIG(COV(A [1]))
這將然後給我128個特徵值(每個塊的128×128 VECT內部或者)..
如果這不正確,MATLAB如何處理這樣的大尺寸數據?
你是什麼意思是「如果這是不正確」? MATLAB可以在幾分之一秒內找到大方陣的特徵向量和特徵值。 –
@AdarshChavakula嘿,我試圖創建一個算法(在C++中),可以計算特徵值和特徵向量,而無需使用第三方軟件..我可以計算一個'2x2','3x3',但是我很困惑如何計算大方矩陣。我不明白matlab如何做 - 這是否有意義? – Phorce