張量與多重線性代數
張量秩
張量 T 的秩,是其和等於 T 的簡單張量的最少個數 r。對一個三階張量而言,就是分解 T = sum over k=1..r of a_k (x) b_k (x) c_k 中的最少項數。它直接推廣了如下事實:秩為 r 的矩陣是 r 個項 u_k*v_k^T 之和,每一項都是一塊秩 1 的碎片。
你對矩陣秩所信賴的一切,對三階或更高階的張量統統失效。秩可能取決於你在實數還是複數上工作:同一個實張量所需的實秩 1 項,可能多於複秩 1 項。最大秩可以超過顯然的維數界,而且秩不是下半連續的,於是一列秩 2 的張量可以收斂到一個秩 3 的張量。
最後這條失效,逼出第二個概念——邊界秩:使 T 成為秩至多為 r 的張量之極限的最小 r。邊界秩可以嚴格小於秩,它正是快速矩陣乘法演算法的主宰:削減乘法指數依賴於某個特定小張量的邊界秩。
請注意:在有理數上精確計算張量秩是 NP 困難的,即便在實數上判定它也很微妙。這是矩陣與張量之間一道真實的懸崖——對矩陣,秩離一次高斯消元只有一步之遙;對張量,秩卻躋身最難釘死的不變量之列。在你弄清指的是哪種概念之前,對任何關於三維陣列的乾淨「秩」斷言都應心存疑慮。
T = sum_{k=1}^{r} a_k (x) b_k (x) c_k , rank(T) = min such r
張量秩是精確重建 T 所需的最少秩 1(簡單)項數。
一個著名的具體例子:2x2x2 矩陣乘法張量的秩為 7(Strassen),其邊界秩也是 7;而 2x2 型張量 W = e1(x)e1(x)e2 + ... 的秩為 3、邊界秩為 2——這正是說明秩不閉合的教科書例子。
又稱
另見