透過 MCP 連接 →

輸入計算

每一列各佔一行,元素之間以空格或逗號分隔。留空的儲存格預設為 0。

數學公式

Show calculation steps (3)
  1. L-infinity Norm (Max Row Sum)

    L-infinity Norm (Max Row Sum): 矩陣範數計算機

    Maximum absolute row sum of the matrix A.

  2. Frobenius Norm

    Frobenius Norm: 矩陣範數計算機

    Square root of the sum of squares of all entries of A.

  3. L2 Spectral Norm

    L2 Spectral Norm: 矩陣範數計算機

    Largest singular value of A, equal to the square root of the largest eigenvalue of A-transpose times A.

廣告

結果

L2/譜範數(最大奇異值)
5.4649857042
sigma_max(A) = sqrt(lambda_max(AᵀA))
範數 數值
L1 範數(最大行絕對值總和) 6
L2/譜範數(最大奇異值) 5.4649857042
Frobenius 範數 5.4772255751
L∞ 範數(最大列絕對值總和) 7

這個計算機能做什麼

本工具可針對任意 n×m 實數矩陣 \(A = \{a_{ij}\}\) 計算四種最常用的矩陣範數:L1 範數(各行絕對值總和的最大值)、L2/譜範數(最大奇異值)、Frobenius 範數(所有元素平方和開根號),以及 L∞ 範數(各列絕對值總和的最大值)。矩陣範數用來衡量一個矩陣的「大小」,也代表它能把向量拉伸的最大倍數,因此在數值線性代數、最佳化、機器學習與穩定性分析中都不可或缺。這是純數學運算,在任何國家、任何情境下結果都完全一致。

使用方式

先設定列數(n)與行數(m),接著在文字方塊中輸入矩陣,每一列各佔一行,元素之間以空格或逗號分隔。任何留空的儲存格都會視為 0。選擇要顯示的有效位數後,即可一次讀出四種範數。各公式會在需要時自動取絕對值,因此負數元素也能正確處理。

公式解析

1-範數會沿著每一行加總絕對值,並取其中最大的總和;∞-範數則對每一列做同樣的計算。Frobenius 範數把矩陣攤平成一個向量,再取其歐幾里得長度,也就是所有元素平方和的平方根。譜範數等於最大奇異值 \(\sigma_{\max}(\text{A})\),可由對稱 Gram 矩陣 \(\text{A}^{\mathsf{T}}\text{A}\) 的最大特徵值開根號求得;本工具透過冪次迭代法(power iteration)取得該特徵值。若矩陣全為零,所有範數會直接歸零。

$$\|\text{A}\|_{1} = \max_{1 \le j \le m} \sum_{i=1}^{n} |a_{ij}|$$ $$\|\text{A}\|_{\infty} = \max_{1 \le i \le n} \sum_{j=1}^{m} |a_{ij}|$$ $$\|\text{A}\|_{F} = \sqrt{\sum_{i=1}^{n} \sum_{j=1}^{m} a_{ij}^{2}}$$ $$\|\text{A}\|_{2} = \sigma_{\max}(\text{A}) = \sqrt{\lambda_{\max}\!\left(\text{A}^{\mathsf{T}}\text{A}\right)}$$
Advertisement
單位圓映射為橢圓,最長軸標示出最大奇異值
L2(譜)範數等於最大奇異值,即映射的最大拉伸係數。
矩陣網格中標示一行與一列,呈現行和與列和的方向
L1 範數是最大行和;L-無窮範數是最大列和。

實例演算

以 \(A = [[1, 2], [3, 4]]\) 為例:各行總和為 4 與 6,所以 L1 範數為 6;各列總和為 3 與 7,所以 L∞ 範數為 7。Frobenius 範數為 $$\sqrt{1+4+9+16} = \sqrt{30} = 5.4772255751$$ Gram 矩陣 \(\text{A}^{\mathsf{T}}\text{A} = [[10,14],[14,20]]\) 的特徵值由 \(\lambda^2 - 30\lambda + 4 = 0\) 解出,得到 \(\lambda_{\max} = 29.8660687473\),因此譜範數為 $$\sqrt{29.8660687473} = 5.4649857042$$

常見問題

譜範數和 Frobenius 範數一樣嗎?只有在秩為 1 的矩陣(例如單一列向量或行向量)時兩者才相等。一般而言 \(\text{norm2}\) 小於或等於 \(\text{normF}\),而 \(\text{normF}\) 最多是 \(\text{norm2}\) 的 \(\sqrt{\text{rank}}\) 倍。

複數矩陣怎麼辦?在取絕對值的部分改用各元素的模(magnitude),譜範數則改用共軛轉置。本計算機針對的是實數矩陣。

為什麼 L1 範數用行、L∞ 範數用列?它們分別是由 L1 與 L∞ 向量範數誘導出的(運算子)範數,推導後恰好對應到最大行和與最大列和。

最後更新: