計算對稱稠密矩陣求逆的對角線的最佳方法是什麼(2000 * 2000
)?目前我首先使用solve(x)
計算逆,然後提取對角線(diag(y)
)。即使它可行,但我想知道是否有更好的方法來實現它,以便代碼運行更快。我試過chol2inv()
,但它沒有用,因爲我的矩陣不是正定的。計算矩陣求逆對角線的有效方法
更新: 對於任何可能感興趣的人,我都能夠通過使用優化的數學庫英特爾MKL來加速矩陣求逆。在我的機器上反轉2000 * 2000矩陣需要3秒鐘的時間。英特爾MKL可用於Microsoft R Open。
在短的谷歌搜索我做了我發現相當一些鏈接到算法和其他實現相關的這個問題。你明確需要對角線的每個元素還是打算在另一個計算中使用它?如果你想在進一步的計算中使用它,這些知識對於加快執行速度至關重要。 – Vandenman
我在其他計算中使用對角線。具體來說,我將逆矩陣的對角線的每個元素分解到另一個向量中的每個元素,並將它們相加。 – Katherine
你怎麼知道逆的對角線的每個元素都是非零的?矩陣是否有保證這一點的一些屬性? – dmuir