特異値分解と主成分分析の練習問題
特異値分解の意味が分かり、主成分分析で次元を減らす考え方を説明できる。
考え方
どんな行列も「回転・伸び縮み・回転」に分解する特異値分解(SVD)の意味と、データのばらつきを少ない軸にまとめる主成分分析(PCA)の考え方が分かるようになります。画像の圧縮、アンケートの総合指標、レコメンドで使われます。
- 特異値
- 行列 が、ある方向のベクトルを何倍に伸ばすか。 の固有値の正の平方根。
- 特異値分解
- (, は直交行列、 は特異値を対角に並べた行列)。
- 主成分
- データのばらつきがいちばん大きい方向(第1主成分)と、それに直交する方向(第2主成分…)。
- 寄与率
- その主成分の分散が、全体の分散のうちどれだけを占めるか。
行列 で単位円(長さ 1 のベクトルの先)を変換すると、楕円になります。その楕円の長いほうの半径が最大の特異値 、短いほうが です。特異値分解 は、この変換を「回転 → 軸ごとの伸び縮み → 回転」に分けて書いたものです。
特異値は、 の固有値の正の平方根として求めます。 は対称行列なので、固有値は 0 以上の実数です。小さい特異値を 0 にして近似すると、情報を大きく失わずにデータを小さくできます(画像の圧縮)。
主成分分析では、データの分散共分散行列 の固有ベクトルが主成分の方向、固有値がその方向の分散です。いちばん大きい固有値の方向が第1主成分で、データを1つの軸にまとめるなら、この方向に射影します。
寄与率は(その主成分の分散)÷(分散の合計)です。分散の合計は固有値の和で、 の対角成分の和(各変数の分散の合計)と等しくなります。寄与率が大きいほど、軸を減らしても元のばらつきをよく保てます。
ポイント
特異値: ( は の固有値)
特異値分解:
第1主成分の寄与率 (分母は の対角成分の和に等しい)
解き方の手順
- 特異値: を計算する( の列どうしの内積を並べた対称行列)。
- を解いて固有値を求め、正の平方根をとって大きい順に とする。
- 寄与率: 分散共分散行列 の固有値を、固有方程式で求める。
- 大きいほうの固有値を、固有値の和(対角成分の和)で割る。
例
2つの質問の点数の分散共分散行列が のとき、第1主成分の寄与率を求めてください。
- 固有方程式:
- 固有値は , (第1主成分の分散が 7)
- 分散の合計は (対角成分の和 と同じ)
- 第1主成分の寄与率は 。1つの軸で、元のばらつきの約 78% を保てます。
見る
計算例
画像の圧縮やレコメンドで使う特異値分解(SVD)では、行列 の特異値が「どの方向にどれだけ引き伸ばすか(情報がどれだけあるか)」を表します。単位円を で変換すると楕円になり、特異値はその楕円の長いほうと短いほうの半径です。
問い の特異値 を求め、 の形で答えてください。
途中の式
- 特異値は の固有値の正の平方根です。
- 固有方程式: より
- 、
- 特異値が大きい方向ほど、データ(画像)の情報が多く含まれます。小さい特異値を 0 にして近似するのが、SVD による圧縮です。
答え(σ₁, σ₂)(大きい順)は
一緒にやる
小さく分けて、一緒に解く
画像の圧縮やレコメンドで使う特異値分解(SVD)では、行列 の特異値が「どの方向にどれだけ引き伸ばすか(情報がどれだけあるか)」を表します。単位円を で変換すると楕円になり、特異値はその楕円の長いほうと短いほうの半径です。
の特異値 を求め、 の形で答えてください。
小さな問いに分けて、1つずつ一緒に進めます。
ステップ 1 / 3
を計算してください。
自分でやる
練習問題
問題を準備しています…
学び直しマップ
前後の単元
この単元の前に(前提)
- 線形代数対称行列の対角化と二次形式練習問題あり
この単元を使う先
この単元を前提にする単元は、まだマップにありません。学び直しマップでほかの単元を探せます。