摘要
本文主要講述矩陣的儲存優化手段。
1. 優化手段
矩陣中零元素較多時,可以採用去零優化,具體如例a所示。
矩陣中零元素較少時,若資料有規律,則可以找相應的規律進行優化,具體如例b所示。
矩陣中零元素較少時,若資料無規律,則不再本文所考慮的優化範圍內。
例a: 去零優化儲存
假定矩陣a的大小為m×n,具有上頻寬p,即矩陣某列某值上邊非零資料的個數,但p遠遠小於n時,則可以採用去零優化的方法。
不妨令矩陣a為:
不妨將優化之後的矩陣命名為矩陣b,優化的手段是盡可能地將0去掉,同時還保證了矩陣的基本形式。一種顯然的優化結果矩陣b如下:
原始矩陣a與優化之後的矩陣b之間的對映關係如下:
其中,1 =< i, j <= n,且i, j均為整數。
例b:找規律優化儲存
假定矩陣a的資料帶有某種規律,這裡我將它構造為對角矩陣。
不妨另矩陣a為:
矩陣a的抽象形式化表示為
接下來我們可以利用對角矩陣這乙個規律對原始矩陣a進行優化,不妨令優化之後的矩陣b,一種顯然的優化結果b如下:
即,對應矩陣b的抽象形式為
為了計算矩陣a與優化之後的矩陣b之間的對映關係,我的優化變數如下:
令對角線為k,k與矩陣a之間的關係為:
對角線k上的資料的數目為:
即原始矩陣a與優化之後的矩陣b之間的對映關係如下:
這裡建議讀者自己去定義自己的優化變數,然後自己去推理總結數學公式,因為優化的結果一般差不多,但優化的過程,方案或數學公式卻千奇百怪。
2. 總結
矩陣儲存優化的方案有種種,矩陣的儲存優化是一種簡單易懂的思路,對計算機計算和儲存有著重要的作用。最後,希望我足夠虔誠,也希望讀者都能夠在本文中得到一點啟發。
矩陣 對稱矩陣及其壓縮儲存 稀疏矩陣
什麼是對稱矩陣 symmetricmatrix 對稱對稱 看 設乙個n n的方陣a,a中任意元素aij,當且僅當aij aji 0 i n 1 0 j n 1 則矩陣a是對稱矩陣。以矩陣的對角線為分隔,分為上三角和下三角。壓縮存就是矩陣儲存時只需要儲存上三角 下三角的資料,所以最多儲存n n 1 2...
矩陣計算優化
距離矩陣計算 給定m n階矩陣x,滿足x x 1 x 2 x n 這裡第i列向量是m維向量。求n n矩陣d,使得d ij x i x j 2 通過使用向量和矩陣操作,減少迴圈來優化執行時間 import numpy as np import numpy.linalg as la import tim...
矩陣連乘優化
矩陣乘法次數的計算 以兩個矩陣相乘為例,a1xa2,a1和a2為兩個矩陣,假設a1的行列數是pxq,a2的行列數是qxr。那麼對於a1xa2而言,我們需要分別執行pxr次對應a1的行元素乘以a2的列元素,根據線性代數知識,可以得到一共需要執行pxqxr次乘法。對於兩個矩陣相乘,一旦矩陣的大小確定下來...