矩陣乘法計算器
立即計算兩個維度相容的矩陣乘積——為線性代數與工程應用提供自動維度檢查。
在矩陣 A 和矩陣 B 中輸入內容,列用分號分隔、欄用逗號分隔,然後點擊「計算」即可求出它們的乘積。
矩陣乘法計算器
立即計算兩個維度相容的矩陣乘積——為線性代數與工程應用提供自動維度檢查。
以分號(;)分隔各列,以逗號(,)分隔欄位。對於 A × B,A 的欄數必須等於 B 的列數。
關於矩陣乘法計算器
矩陣乘法是線性代數中的核心運算之一。它不同於只會把對應元素相加的加法,乘法依循點積規則,將第一個矩陣的列與第二個矩陣的欄連結起來。其結果表達了兩個線性變換如何組合——先套用 B 再套用 A,與直接套用單一矩陣 AB 的效果相同。
要定義 A × B 的乘積,A 的欄數必須等於 B 的列數。如果 A 是一個 m×n 矩陣,而 B 是一個 n×p 矩陣,那麼乘積 C = A × B 會是一個 m×p 矩陣。C[i][j] 的值由 A 的第 i 列與 B 的第 j 欄的點積計算而得:C[i][j] = Σ(k=0 to n−1) A[i][k] × B[k][j]。這表示結果中的每一個元素都依賴 A 的整列與 B 的整欄。
矩陣乘法不具交換律:一般而言 AB ≠ BA,而且若 A 與 B 的維度不相容,BA 甚至可能沒有定義。不過它具結合律:(AB)C = A(BC),也就是說,你可以用任意方式分組一連串乘法,而不會改變最後結果。
乘上單位矩陣不會改變任何矩陣:AI = IA = A。這與一般乘法中 1 的角色相同。單位矩陣主對角線為 1,其餘位置全為 0。
在實際應用中,矩陣乘法把各式各樣的計算濃縮成簡潔的符號。電腦圖學會用矩陣乘法對 3D 座標套用旋轉、平移與透視投影。機器人學使用一連串旋轉矩陣在不同座標系之間轉換。機器學習中,神經網路層的前向傳播本質上就是一次矩陣-向量乘法:output = W × input + bias。馬可夫鏈、圖的鄰接計算,以及統計中的共變異數傳遞也都依賴矩陣乘法。因此,理解矩陣乘法是任何從事定量領域工作的人都必須具備的重要能力。
矩陣乘法範例
四個範例展示方陣與非方陣的乘積,並逐步計算各個元素。
| 輸入 | 乘積 | 備註 |
|---|---|---|
| A = [[1,2],[3,4]], B = [[2,0],[1,2]] | [[4,4],[10,8]] | C[0][0] = 1×2 + 2×1 = 4。C[0][1] = 1×0 + 2×2 = 4。C[1][0] = 3×2 + 4×1 = 10。C[1][1] = 3×0 + 4×2 = 8。 |
| A = [[1,2,3]], B = [[4],[5],[6]] | [[32]] | A 是 1×3,B 是 3×1。乘積是 1×1:1×4 + 2×5 + 3×6 = 4+10+18 = 32。這就是兩個向量的點積。 |
| A = [[1,0],[0,1]], B = [[7,3],[2,8]] | [[7,3],[2,8]] | 乘上 2×2 的單位矩陣會讓 B 保持不變。單位矩陣是矩陣乘法中的乘法單位元。 |
| A = [[1,2],[3,4],[5,6]], B = [[7,8,9],[10,11,12]] | [[27,30,33],[61,68,75],[95,106,117]] | A 是 3×2,B 是 2×3,因此乘積是 3×3。C[0][0] = 1×7 + 2×10 = 27。C[2][2] = 5×9 + 6×12 = 45+72 = 117。 |
如何使用矩陣乘法計算器
- 在第一個欄位中輸入矩陣 A。使用逗號分隔同一列的元素,使用分號分隔各列。例如,1,2;3,4 代表 [[1,2],[3,4]]。
- 在第二個欄位中以相同格式輸入矩陣 B。要讓 A × B 成立,A 的欄數必須等於 B 的列數。
- 點擊「計算」。結果矩陣 C = A × B 會顯示在下方,其維度等於(A 的列數)×(B 的欄數)。
- 如有需要,可手動驗證某個元素:選取結果中的任意位置 [i][j],計算 A 的第 i 列與 B 的第 j 欄的點積。
- 點擊「重設」可清空兩個輸入框並開始新的計算;也可以修改任一矩陣,觀察變化如何影響乘積。
常見問題
兩個矩陣什麼時候可以相乘?
只有當矩陣 A 的欄數等於矩陣 B 的列數時,A 和 B 才能相乘(即 A × B)。如果 A 是 m×n、B 是 n×p,那麼乘積存在,且結果是一個 m×p 矩陣。如果不符合這個內維度條件,乘法就沒有定義。
矩陣乘法滿足交換律嗎?
不滿足。一般來說,即使 AB 和 BA 都有定義,也有 AB ≠ BA。例如,若 A 代表旋轉、B 代表剪切,不同的套用順序會得到不同結果。這種不具交換律的特性,是矩陣代數有別於一般數值運算的標誌之一。
什麼是單位矩陣?
單位矩陣 I 是一個主對角線為 1、其餘位置為 0 的方陣。任何矩陣 A 乘以 I 都會保持不變:AI = IA = A。單位矩陣在矩陣乘法中的作用,就像數字 1 在純量乘法中的作用。
矩陣乘法在機器學習中如何使用?
在神經網路中,全連接層的前向傳播可表示為 output = W × input + bias,其中 W 是權重矩陣,而 input 是欄向量。在反向傳播中,梯度會透過轉置矩陣乘法傳遞。批次計算會將其延伸為矩陣-矩陣乘法,使 GPU 在神經網路訓練中非常高效。
逐元素乘法和矩陣乘法有什麼不同?
逐元素乘法(Hadamard 積)是將兩個同樣大小的矩陣中對應位置的元素相乘:(A ⊙ B)[i][j] = A[i][j] × B[i][j]。矩陣乘法則使用列與欄的點積:(AB)[i][j] = Σ A[i][k] × B[k][j]。它們是不同的運算,要求不同,結果也不同。
非方陣可以相乘嗎?
可以。只要內維度相符,非方陣也能相乘。例如,一個 2×3 矩陣乘上一個 3×4 矩陣,結果會是 2×4 矩陣。結果矩陣的列數來自第一個矩陣,欄數來自第二個矩陣。非方陣乘積在實務中非常常見——例如,一批輸入向量 (n×d) 乘上權重矩陣 (d×k),會得到該層的輸出 (n×k)。