張量積計算器

計算兩個向量的張量積(外積),並以矩陣或扁平向量形式顯示結果。

輸入兩個向量,支援以逗號或空格分隔的數字,選擇輸出格式後按下計算。

張量積計算器
計算兩個向量的張量積(外積),並以矩陣或扁平向量形式顯示結果。

關於張量積計算器

張量積在向量語境中也稱為外積,是線性代數中的基本運算。它接收兩個向量並產生一個矩陣。若向量 u 有 m 個分量,向量 v 有 n 個分量,則它們的張量積 u ⊗ v 會得到一個 m × n 矩陣,其中第 i 列第 j 行(原文此處為行列概念)對應的元素等於 uᵢ 乘以 vⱼ。這與點積形成鮮明對比,點積會把兩個向量縮減成一個純量;也不同於叉積,叉積只適用於三維向量並會得到另一個向量。 從數學上來說,若 u = [u₁, u₂, …, uₘ] 且 v = [v₁, v₂, …, vₙ],那麼對所有有效的 (i, j) 都有 (u ⊗ v)ᵢⱼ = uᵢvⱼ。其計算時間複雜度為 O(mn),即使向量不算太小也十分有效率。張量積是雙線性的——將任一向量按同樣倍數縮放,結果也會按相同倍數縮放,而且它對向量加法滿足分配律。 張量積不是交換律成立的:u ⊗ v 和 v ⊗ u 通常是不同的矩陣(一個是 m × n,另一個是 n × m),除非 m = n 且存在某些特殊關係。第一個向量永遠決定列,第二個永遠決定行。這種非對稱性在物理或機器學習中特別重要,因為順序本身就帶有物理或語意上的意義。 在量子力學中,張量積是描述複合系統不可或缺的工具。當兩個量子系統結合時,複合系統的態空間就是各自態空間的張量積。例如,雙量子位元系統具有 4 維態空間,而這正是兩個 2 維量子位元空間的張量積。量子糾纏正是在複合態無法寫成各自單獨狀態的簡單張量積時出現。 在機器學習與資料科學中,張量積(以及更高階的推廣形式「張量」)支撐了 Transformer 模型中的注意力機制、推薦系統中的特徵交叉運算,以及影像處理中的可分離卷積。例如,高斯模糊核可以視為一維水平高斯濾波器與一維垂直高斯濾波器的張量積,進而實現高效率的可分離計算。 在訊號處理中,將多維濾波器表示為一維濾波器的張量積可大幅節省運算量。此計算器產生的扁平向量表示特別適合後續需要一維輸入的運算,例如全連接神經網路層。

張量積範例

四個完整範例,展示不同的向量維度與輸出格式。

向量結果說明
u = [1, 2], v = [3, 4][[3, 4], [6, 8]]2 × 2 矩陣。第 (1,1) 項 = 1×3 = 3;第 (2,2) 項 = 2×4 = 8。
u = [1, 2, 3], v = [4, 5][[4, 5], [8, 10], [12, 15]]3 × 2 矩陣,顯示兩個向量可以有不同長度。
u = [1, 0], v = [0, 1][[0, 1], [0, 0]] | flattened: [0, 1, 0, 0]標準基底向量的外積。非零項只出現在第 1 列第 2 行。
u = [2, 3], v = [1, 4][[2, 8], [3, 12]]一般的 2 × 2 情況。結果的每一列都是 v 依 u 的對應分量縮放而成。

如何使用張量積計算器

  1. 將第一個向量 u 的分量輸入為以逗號或空格分隔的數字,例如:1, 2, 3。
  2. 以相同格式輸入第二個向量 v。兩個向量的分量數可以不同。
  3. 選擇輸出格式:'Matrix Format' 會以行列網格顯示結果;'Flattened Vector' 會以單行顯示所有元素。
  4. 按下計算。結果矩陣(或扁平列表)會連同矩陣維度一併顯示。
  5. 按下重設可清除所有欄位並開始新的計算。

張量積計算器常見問題

張量積和點積有什麼差別?
點積要求兩個向量長度相同,並透過將對應分量相乘後加總,回傳一個數值(純量)。張量積可以接受任意長度的兩個向量,並回傳一個矩陣:第一個向量的每個分量都會與第二個向量的每個分量相乘。張量積保留了兩個向量的全部資訊,而點積會把它們縮減成一個數字。
兩個向量一定要一樣長嗎?
不需要。兩個向量可以有不同的分量數。若 u 有 m 個分量、v 有 n 個分量,結果就是一個 m × n 矩陣。這也是張量積比點積等運算更通用的原因之一,因為點積要求長度相等。
張量積具有交換律嗎?
不具有。u ⊗ v 通常不同於 v ⊗ u。第一個向量始終對應列,第二個向量始終對應行,因此交換順序會轉置並可能改變結果矩陣的形狀。
扁平向量格式代表什麼?
扁平向量就是把 m × n 的結果矩陣依照列順序展開成一個包含 mn 個數字的清單。當你需要把張量積作為一維輸入傳遞給其他運算時,它非常有用,例如輸入到需要固定長度特徵向量的機器學習模型。
張量積在量子運算中有什麼用途?
在量子力學中,多粒子系統的狀態由各粒子狀態的張量積來描述。對於兩個量子位元,如果它們分別處於 [a, b] 和 [c, d] 狀態,那麼組合系統的狀態就是它們的張量積,一個 4 分量向量。這種形式化描述正是量子電腦狀態空間指數成長的原因。
它和克羅內克積有什麼關係?
克羅內克積是矩陣版張量積的推廣。當輸入是向量(視為列矩陣)時,u ⊗ v 等於列向量 u 與行向量 vᵀ 的克羅內克積,得到相同的 m × n 矩陣。對一般矩陣而言,克羅內克積會建立區塊矩陣。