2

行列のノルムについての雑記

4792
0
$$\newcommand{a}[0]{\alpha} \newcommand{b}[0]{\beta} \newcommand{bs}[1]{\boldsymbol{#1}} \newcommand{C}[0]{\mathbb{C}} \newcommand{d}[0]{\delta} \newcommand{diag}[0]{\operatorname{diag}} \newcommand{dis}[0]{\displaystyle} \newcommand{e}[0]{\varepsilon} \newcommand{farc}[2]{\frac{#1}{#2}} \newcommand{G}[0]{\Gamma} \newcommand{g}[0]{\gamma} \newcommand{Gal}[0]{\operatorname{Gal}} \newcommand{id}[0]{\operatorname{id}} \newcommand{Im}[0]{\operatorname{Im}} \newcommand{Ker}[0]{\operatorname{Ker}} \newcommand{l}[0]{\left} \newcommand{la}[0]{\lambda} \newcommand{Li}[0]{\operatorname{Li}} \newcommand{li}[0]{\operatorname{li}} \newcommand{N}[0]{\mathbb{N}} \newcommand{ol}[1]{\overline{#1}} \newcommand{ord}[0]{\operatorname{ord}} \newcommand{Q}[0]{\mathbb{Q}} \newcommand{r}[0]{\right} \newcommand{R}[0]{\mathbb{R}} \newcommand{rank}[0]{\operatorname{rank}} \newcommand{Re}[0]{\operatorname{Re}} \newcommand{s}[0]{\sigma} \newcommand{ul}[1]{\underline{#1}} \newcommand{vt}[0]{\vartheta} \newcommand{x}[0]{\boldsymbol{x}} \newcommand{y}[0]{\boldsymbol{y}} \newcommand{Z}[0]{\mathbb{Z}} \newcommand{z}[0]{\zeta} \newcommand{z}[0]{\boldsymbol{z}} \newcommand{ZZ}[1]{\mathbb{Z}/#1\mathbb{Z}} \newcommand{ZZt}[1]{(\mathbb{Z}/#1\mathbb{Z})^\times} $$

はじめに

 この記事では子葉が「なんとなく行列のノルムを求めたいな~」と思って書いた毒にも薬にもならない話を垂れ流します。

ノルムとは

 ノルムとは絶対値の概念を拡張したものであり、以下のように定義されます。

ノルム

 $K=\R,\C$上の線形空間$X$に対して関数$\|\cdot\|:X\to\R_{\geq0}$が以下の三つの性質を満たすとき、$\|\cdot\|$$X$ノルムという。

  • $\|x\|=0\iff x=0$
  • $\|ax\|=|a|\cdot\|x\|\quad(a\in K)$
  • $\|x+y\|\leq\|x\|+\|y\|$

また$X$とそのノルム$\|\cdot\|$の組$(X,\|\cdot\|)$、あるいは単に$X$のことをノルム空間という。

 そしてノルム空間上の線形作用素(線形写像のこと)に対しては次のように特別なノルムが定義されます。

作用素ノルム

 $(X,\|\cdot\|_X),(Y,\|\cdot\|_Y)$をノルム空間、$T:X\to Y$を線形作用素としたとき、$T$作用素ノルム
$$\|T\|=\sup_{x\neq0}\frac{\|Tx\|_Y}{\|x\|_X}$$
と定める。

行列のノルム

 $\boldsymbol x=(x_1,x_2,\ldots,x_n)\in\R^n$に対して定義される絶対値
$$\|\x\|=\sqrt{x_1^2+x_2^2+\cdots+x_n^2}$$
は明らかに$\R^n$のノルムとなります。
 それでは行列$A=(a_{i,j})_{\substack{1\leq i\leq m\\1\leq j\leq n}}$の作用素ノルム(正確には写像$T:\x\mapsto A\x$の作用素ノルム)を求めていきましょう。まずコーシー・シュワルツの不等式から
\begin{eqnarray} \|A\x\|&=&\sqrt{\sum^m_{i=1}\bigg(\sum^n_{j=1}a_{i,j}x_j\bigg)^2} \\&\leq&\sqrt{\sum^m_{i=1}\bigg(\sum^n_{j=1}a_{i,j}^2\bigg)\bigg(\sum^n_{j=1}x_j^2\bigg)} =\|\x\|\sqrt{\sum^m_{i=1}\sum^n_{j=1}a_{i,j}^2} \end{eqnarray}
なので
$$\|A\|\leq\sqrt{\sum^m_{i=1}\sum^n_{j=1}a_{i,j}^2}$$
がわかります。

あれ?

 前に
$$\|A\|_F=\sqrt{\sum^m_{i=1}\sum^n_{j=1}a_{i,j}^2}$$
で行列のノルムを定めているのを見たことがあった(これをフロベニウスノルムと言うらしい)のでこれで上手くのかと思えば$\rank A\geq2$においてはシュワルツの不等式の等号成立条件を満たすような$\x$が存在しませんね。どういうことかと思って調べてみるに$A$のノルムは$A^TA$の最大の固有値の平方になるらしいですね(ちなみに$\x^T(A^TA)\x=\|A\x\|^2\geq0$から$A^TA$の固有値は全て非負実数となります)。めんどくせ~。

計算してみる

 とりあえず本当に先の結果が出てくるのか計算してみましょう。なにやら特異値分解という手法を用いれば簡単にわかるらしいですが、知りません、ゴリ押します。
$$f(\x)=\farc{\|A\x\|}{\|\x\|}$$
とおくと
$$f'(\x)=\frac{(\|A\x\|)'\|\x\|-\|A\x\|(\|\x\|)'}{\|\x\|^2} =\frac{(Ax)^TA\|\x\|^2-\|A\x\|^2\x^T}{\|A\x\|\|\x\|^3}$$
なのでこれが$0$になるのは
$$A^TA\x=\frac{\|A\x\|^2}{\|\x\|^2}\x=f(\x)^2\x$$
のときになります。また$A^TA$の固有値$\la$と対応する固有ベクトル$\bs a$に対して
$$f(\bs a)^2=\frac{\|A\bs a\|^2}{\|\bs a\|^2} =\frac{\bs{a}^T(A^TA)\bs a}{\bs{a}^T\bs a} =\frac{\bs{a}^T(\la\bs a)}{\bs{a}^T\bs a}=\la$$
となるので
\begin{align} f(\bs a)\mbox{が最大値} &\Longrightarrow f'(\bs a)=0\\ &\iff\bs a\ \mbox{は}\ A^TA\ \mbox{の固有ベクトルで}\ f(\bs a)^2\ \mbox{は対応する固有値} \end{align}
という構図がわかります。よって$\la$の最大値$\la_{\max}$に対して$f(\bs a)=\sqrt{\la_{\max}}$$f(\x)$の最大値ということがわかりました。

改良してみる

 微分を使うのはちょっと細部がアヤしいのでもうちょっと工夫したいところです。上の計算を見てみるに$$\|A\x\|^2=\x^TA^TA\x$$
というのが肝っぽいのでそこから始めてみましょう。
 ついでにさっきまでは$A\in M_{m,n}(\R)$としていたところを$A\in M_{m,n}(\C)$と一般化して考えちゃいましょう。
 $\z=(z_1,z_2,\ldots,z_n)\in\C^n$に対してノルムは
$$\|\z\|=\sqrt{|z_1|^2+|z_2|^2+\cdots+|z_n|^2}$$
と定めます。まず$A^*A$はエルミート行列なのであるユニタリ行列$U$($U^*U=UU^*=I$)があって
\begin{align} \|A\z\|^2&=\z^*(A^*A)\z=(U\z)^*D(U\z)\\ \|\z\|^2&=\z^*(U^*U)\z=(U\z)^*(U\z) \end{align}
とできます($D=\diag\{\la_1,\la_2,\ldots,\la_n\}$は対角行列)。このとき
\begin{eqnarray} f(U^*\z)^2 &=&\frac{\la_1|z_1|^2+\la_2|z_2|^2+\cdots+\la_n|z_n|^2}{|z_1|^2+|z_2|^2+\cdots+|z_n|^2} \\&\leq&\frac{\la_\max|z_1|^2+\la_\max|z_2|^2+\cdots+\la_\max|z_n|^2}{|z_1|^2+|z_2|^2+\cdots+|z_n|^2}=\la_\max \end{eqnarray}
であってまた$\z$$\la_\max$に対応する固有ベクトルとすると上で見たように$f(\z)^2=\la_\max$と不等式の等号が成立するので
$$\|A\|=\sup_{\z\neq0}\frac{\|A\z\|}{\|\z\|}=\max f(\z)=\sqrt{\la_\max}$$
がわかりました。へー。

余談

 $\R^n$または$\C^n$には次のようなノルムも考えることができます。
$$\|\x\|_\infty=\max_{1\leq k\leq n}|x_k|$$
これに対する$A$のノルムを考えると
$$\|A\x\|_\infty=\max_{1\leq i\leq m}\l|\sum^n_{j=1}a_{i,j}x_j\r| \leq\max_{1\leq i\leq m}\sum^n_{j=1}|a_{i,j}|\cdot\|\x\|_\infty$$
なので
$$\dis\|A\|_\infty\leq\max_{1\leq i\leq m}\sum^n_{j=1}|a_{i,j}|$$
が成り立ちます。また
$$\max_{1\leq i\leq m}\sum^n_{j=1}|a_{i,j}|=\sum^n_{j=1}|a_{k,j}|$$
とし、$a_{k,j}\neq0$に対し$y_j=|a_{k,j}|/a_{k,j}$$a_{k,j}=0$に対し$y_j=1$と定めると
$$\l|\sum^n_{j=1}a_{i,j}y_j\r|\leq\sum^n_{j=1}|a_{i,j}|\leq\sum^n_{j=1}|a_{k,j}|$$
であって、また$i=k$において等号が成立するので
$$\|A\y\|_\infty=\sum^n_{j=1}|a_{k,j}|=\|\y\|_\infty\max_{1\leq i\leq m}\sum^n_{j=1}|a_{i,j}|$$
が成り立ち、以上より
$$\|A\|_\infty=\max_{1\leq i\leq m}\sum^n_{j=1}|a_{i,j}|$$
がわかります。へー。

投稿日:20211127
更新日:512

この記事を高評価した人

高評価したユーザはいません

この記事に送られたバッジ

バッジはありません。

投稿者

子葉
子葉
916
185752
主に複素解析、代数学、数論を学んでおります。 私の経験上、その証明が簡単に探しても見つからない、英語の文献を漁らないと載ってない、なんて定理の解説を主にやっていきます。 同じ経験をしている人の助けになれば。最近は自分用のノートになっている節があります。

コメント

他の人のコメント

コメントはありません。
読み込み中...
読み込み中