線形代数 · 第28回 · 動画1 · インタラクティブ教材

二つの基底をつなぐ一つの行列:特異値分解の幾何学的な核心

I重要な公式

公式 名称 説明
A=UΣVTA = U\Sigma V^T 特異値分解(SVD) どんな m×nm \times n 行列にも使える
Avi=σiuiA v_i = \sigma_i u_i SVD を特徴づける関係式 AA は正規直交な viv_i を、正規直交な uiu_i の σi\sigma_i 倍に写す
σi=λi(ATA)\sigma_i = \sqrt{\lambda_i(A^T A)} 特異値 ATAA^T A の固有値の平方根。つねに ≥0\geq 0
A=QΛQTA = Q\Lambda Q^T スペクトル定理(対称・正定値) U=V=QU = V = Q、Σ=Λ\Sigma = \Lambda となる特別な場合

II可視化1 — 回転、伸縮、回転

A=UΣVTA = U\Sigma V^T は、回転、伸縮、もう一度の回転という3つの動きで、単位円を楕円に変えます。

💡 チャレンジ:σ2=0\sigma_2 = 0 にしてみましょう。楕円がつぶれて線分になります。つまり AA の階数は 1 で、v2v_2 は零空間に入ります。

III可視化2 — 直交したままの基底

A=(210.51.5)A = \bigl(\begin{smallmatrix} 2 & 1 \\ 0.5 & 1.5 \end{smallmatrix}\bigr) では、AA で写したあとも垂直のままでいる入力側の基底はただ1つ、特異ベクトル v1,v2v_1, v_2 だけです。

💡 チャレンジ:Av1⊥Av2Av_1 \perp Av_2 となるまで b1b_1 をドラッグしましょう。そのときの入力側の角度 φ≈39.9°\varphi \approx 39.9\degree が、まさに SVD の基底です。

IV可視化3 — 特異値と固有値

特異値は像の楕円の半軸の長さで、つねに実数かつ ≥0\geq 0 です。一方、固有値は負になることも、複素数になることさえあります。

💡 試してみましょう:90° の回転 a11=0, a12=−1, a21=1, a22=0a_{11}=0,\ a_{12}=-1,\ a_{21}=1,\ a_{22}=0 では、特異値はどちらも 11 なのに、固有値は ±i\pm i です。

V確認クイズ

問1

実数の m×nm \times n 行列 AA の SVD A=UΣVTA = U\Sigma V^T について、つねに正しいのは次のうちどれですか。

✅ 正解です! これがまさに SVD の構造で、どんな実行列でも成り立ちます。

❌ 惜しい! SVD には、形にも可逆性にも制限がありません。だからこそ「最後の分解」と呼ばれるのです。

解答を見る

解答:

SVD は、正方行列でも長方行列でも、特異でも正則でも、どんな実行列 AA にも使えます。分解 A=UΣVTA = U\Sigma V^T では次のようになります。

  • UU は m×mm \times m の直交行列(したがって UTU=IU^T U = I)
  • VV は n×nn \times n の直交行列(したがって VTV=IV^T V = I)
  • Σ\Sigma は m×nm \times n の対角行列で、成分は σ1≥σ2≥⋯≥0\sigma_1 \geq \sigma_2 \geq \cdots \geq 0

AA が正方行列である必要も、可逆である必要もありません。長方行列 AA には固有値がそもそも存在しないこともありますが、特異値はいつでも存在します。

U=VU = V となるのは、対称で半正定値な行列の場合だけです。

問2

ベクトルを 90° 回転させる回転行列 A=(0−110)A = \begin{pmatrix} 0 & -1 \\ 1 & 0 \end{pmatrix} を考えます。

この行列の特異値はいくつですか。

✅ 正解です! 回転は長さを変えないので、固有値は虚数でも、特異値はどちらも 1 です。

❌ 惜しい! 思い出しましょう。特異値は λi(ATA)\sqrt{\lambda_i(A^T A)} で、つねに 0 以上の実数です。複素数になることも、負になることもありません。

解答を見る

解答:

特異値は ATAA^T A の固有値の平方根です。 ATA=(01−10)(0−110)=(1001)=I.A^T A = \begin{pmatrix} 0 & 1 \\ -1 & 0 \end{pmatrix}\begin{pmatrix} 0 & -1 \\ 1 & 0 \end{pmatrix} = \begin{pmatrix} 1 & 0 \\ 0 & 1 \end{pmatrix} = I.

II の固有値はどちらも 1 なので、σ1=σ2=1\sigma_1 = \sigma_2 = 1 です。AA の固有値が複素数(この場合は ±i\pm i)であっても、特異値はつねに 0 以上の実数です。

幾何学的には、回転は単位円をそれ自身に写すので、「楕円」の半軸はどちらも 1 になります。

問3

正しいか誤りか:どんな実行列 AA でも、右特異ベクトルは左特異ベクトルに等しい(つまり U=VU = V)。

✅ 正解です! SVD は異なる2つの正規直交基底を使います。U=VU = V となるのは、対称で半正定値な場合だけです。

❌ 惜しい! 長方行列を考えてみましょう。UU は m×mm \times m、VV は n×nn \times n です。一般には、等しくなることすらありえません。

解答を見る

解答:

誤りです。一般には U≠VU \neq V です。

  • VV の列は AA の行空間(入力空間 Rn\mathbb{R}^n)に属します。
  • UU の列は AA の列空間(出力空間 Rm\mathbb{R}^m)に属します。

長方形の m×nm \times n 行列では、UU と VV は大きさすら違います。両者が等しくなりうるのは、AA が対称で半正定値という特別な場合だけです。そのときはスペクトル定理から A=QΛQTA = Q\Lambda Q^T となり、U=V=QU = V = Q、Σ=Λ\Sigma = \Lambda が得られます。

SVD の要点は、1つの基底に二役をさせるのではなく、入力用と出力用の2つの正規直交基底が必要だということです。

問4

4×34 \times 3 行列 AA の SVD A=UΣVTA = U\Sigma V^T で、σ1=4\sigma_1 = 4、σ2=2\sigma_2 = 2、σ3=0\sigma_3 = 0 だとします。

AA の幾何学的な意味と階数について正しいのはどれですか。

✅ 正解です! 階数 = 0 でない特異値の個数です。0 の特異値が1つの次元をつぶし、楕円体を平らな楕円にします。

❌ 惜しい! 階数は0 でない特異値の個数に等しく、0 の特異値があれば、その方向は 0 につぶされます(零空間)。

解答を見る

解答:

AA の階数は 0 でない特異値の個数に等しくなります。ここでは σ1=4\sigma_1 = 4 と σ2=2\sigma_2 = 2 は 0 でなく、σ3=0\sigma_3 = 0 なので、rank(A)=2\text{rank}(A) = 2 です。

幾何学的には、AA は 3 次元の単位球を、u1u_1 と u2u_2 が張る平面内の、半軸の長さが 4 と 2 の平らな楕円に写します。3つ目の方向 v3v_3 は0 につぶされます。 Av3=σ3u3=0.A v_3 = \sigma_3 u_3 = 0.

したがって、v3v_3 は AA の零空間に属します。

注意:v3v_3 は一般には AA の固有ベクトルではありません。これは右特異ベクトルであり、Av3=0A v_3 = 0 だからといって v3v_3 が固有ベクトルになるわけではありません。4×34 \times 3 行列には固有ベクトルがありません。Av3A v_3 は R4\mathbb{R}^4 のベクトルだからです。固有ベクトルと特異ベクトルは別の概念です。

正解数:0 / 4