[問題] 關於計算特徵值出現Out of memory問題~已回收

看板MATLAB作者 (^^)時間15年前 (2010/10/10 19:59), 編輯推噓3(309)
留言12則, 4人參與, 最新討論串1/2 (看更多)
請問各位前輩一個計算特徵向量問題 我利用公式 [V,D] = eig(C); C為9900*9900的矩陣大小。 會出現Out of Memory的問題,我的記憶體大約2G左右。 想請問有什麼方法可以解決此問題, 我查看文章時,有提到利用先使用數學分析,調整計算順序,但是沒有相關敘述。 所以麻煩大大解答。 感恩+謝謝。 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 114.27.137.231

10/10 21:33, , 1F
先算出特徵值在個別算出特徵向量?
10/10 21:33, 1F

10/10 22:33, , 2F
null用的記憶體有比較少?
10/10 22:33, 2F

10/10 23:02, , 3F
不好意思,請問a大,算出特徵值後,怎麼個別算出特徵向量?
10/10 23:02, 3F

10/10 23:03, , 4F
因為我目前只用到這個公式,因為之前矩陣大小1400*1400
10/10 23:03, 4F

10/10 23:03, , 5F
先算一半 然後把eigenvalue=0的去掉
10/10 23:03, 5F

10/10 23:03, , 6F
後來測試的資料維度變9900*9900就出現這個問題><
10/10 23:03, 6F

10/10 23:03, , 7F
Singular value decomposition ?
10/10 23:03, 7F

10/10 23:09, , 8F
回覆m大^^",應該就是SVD,因為是做PCA分析,所以應該是~
10/10 23:09, 8F
※ 編輯: holyqoo 來自: 114.27.137.231 (10/10 23:10)

10/10 23:14, , 9F
想請問一下m大,先算一半該怎麼處理!?是把矩陣分一半嗎?!
10/10 23:14, 9F

10/10 23:37, , 10F
目的就是要做SVD 的確是要把矩陣拆開
10/10 23:37, 10F

10/10 23:37, , 11F
我只是猜作法而已 ~~
10/10 23:37, 11F

10/12 00:03, , 12F
我自己是用SVD 用NULL有時候會有數值問題
10/12 00:03, 12F
文章代碼(AID): #1CiQggUY (MATLAB)
文章代碼(AID): #1CiQggUY (MATLAB)