行列のフロベニウスノルムとその性質

行列のフロベニウスノルムについて,定義と3つの性質を解説します。

このページでは AA は m×nm\times n の実行列とします(正方行列とは限らない)。

フロベニウスノルムとは

行列の「大きさ」を表す量はいくつもありますが,その中の一つがフロベニウスノルムです。全成分の二乗和のルートをフロベニウスノルムと言います。行列 AA のフロベニウスノルムを ∥A∥F\|A\|_{\mathrm{F}} と書くことが多いです:

∥A∥F=∑i,jaij2\|A\|_{\mathrm{F}}=\sqrt{\displaystyle\sum_{i,j}a_{ij}^2}

フロベニウスノルムは,行列の全成分を一列に並べてベクトルとみなしたときのベクトルの長さ(2ノルム)と考えることもできます。

フロベニウスノルムとトレース

性質1

∥A∥F2=tr(AA⊤)=tr(A⊤A)\|A\|_{\mathrm{F}}^2=\mathrm{tr}(AA^{\top})=\mathrm{tr}(A^{\top}A)

A⊤A^{\top} は AA の転置行列です。

証明

∥A∥F2=tr(AA⊤)\|A\|_{\mathrm{F}}^2=\mathrm{tr}(AA^{\top}) を示す。

(∥A∥F2=tr(A⊤A)\|A\|_{\mathrm{F}}^2=\mathrm{tr}(A^{\top}A) も同様)

AA⊤AA^{\top} の iiii 成分は,∑j=1naij2\displaystyle\sum_{j=1}^na_{ij}^2

であるので,

AA⊤AA^{\top} のトレースは,∑i=1m∑j=1naij2\displaystyle\sum_{i=1}^m\sum_{j=1}^na_{ij}^2

となりフロベニウスノルムの二乗と一致する。

フロベニウスノルムと直交変換

性質2

直交行列をかけてもフロベニウスノルムは変わらない。つまり,任意の m×mm\times m の直交行列 UU と n×nn\times n の直交行列 VV に対して,

∥UAV∥F=∥A∥F\|UAV\|_{\mathrm{F}}=\|A\|_{\mathrm{F}}

成分計算でも証明できますが,性質1を使うとより簡単に導出できます。

証明

左から直交行列 UU をかけてもフロベニウスノルムが変わらないことを示す。

(右からかける場合も同様)

性質1より,

∥UA∥F2=tr((UA)⊤UA)=tr(A⊤U⊤UA)=tr(A⊤A)=∥A∥F2\|UA\|_{\mathrm{F}}^2=\mathrm{tr}((UA)^{\top}UA)\\ =\mathrm{tr}(A^{\top}U^{\top}UA)\\ =\mathrm{tr}(A^{\top}A)\\ =\|A\|_{\mathrm{F}}^2

これと,フロベニウスノルムが0以上であることから従う。

フロベニウスノルムと特異値

性質3

フロベニウスノルムの二乗は,特異値の二乗和に等しい:

∥A∥F2=∑i=1rσi2\|A\|_{\mathrm{F}}^2=\displaystyle\sum_{i=1}^r\sigma_i^2

(rr は AA のランク,σ1,⋯ ,σr\sigma_1,\cdots,\sigma_r は AA の特異値です)

これは性質2と特異値分解の定義から簡単に証明できます。

証明

AA の特異値分解: A=UΣVA=U\Sigma V について性質2を使うと,

∥A∥F2=∥Σ∥F2\|A\|^2_{\mathrm{F}}=\|\Sigma\|^2_{\mathrm{F}}

これと,Σ\Sigma の全成分の二乗和が特異値の二乗和であることから分かる。

性質1→性質2→性質3,と順々に証明できているのが気に入っています。