G検定対策!「次元削減と可視化のうた」でPCA・SVD・t-SNEを覚える

次元削減と可視化のうたのアイキャッチ。下段はPCAとt-SNEの2区画。PCAは楕円と散布に主成分方向を示す矢印で「線形・分散最大の射影」を表現。t-SNEは小さなクラスタで「局所構造重視の可視化」を示す。 AI
この記事は約4分で読めます。

はじめに

G検定の試験では、PCA(主成分分析)、SVD(特異値分解)、t-SNE(t-分布確率的近傍埋め込み)といった次元削減と可視化の手法が出題されます。
しかし、それぞれの意味や特徴、違いを正確に覚えるのはなかなか難しいです。
そこで今回は、音楽のリズムに合わせて試験に出る用語の意味を暗記できる楽曲を作成しました。
歌詞は生成AI(ChatGPT)で作成し、音楽はAI作曲ツール(Suno AI)を使用しました。


AIを活用した楽曲制作

今回の楽曲は、教育用のエレクトロポップスタイルで、男女混声ボーカル、早めのテンポに合わせた高速暗記リズムにしています。
このテンポとリズムは、PCA・SVD・t-SNEの定義や特徴を短く正確に記憶するのに最適化しました。


タイトル・歌詞の紹介

曲タイトル

次元削減と可視化のうた

歌詞

PCAは主成分分析 線形で分散最大射影
共分散行列 固有ベクトル 全体の分散保持に優れる
固有値と寄与率で主成分 重要度 判断
SVDは特異値分解 固有空間にきちんと分解
SVD任意の行列 固有空間に分解する
特異値は主成分分散の 平方根にあたる
SVDはPCA計算の基盤 任意の形の行列に適用できる
t-SNE 非線形次元削減 確率的近傍埋め込みで局所構造保存
高次元と低次元の近傍点差 確率分布を最小化
t-SNEはクラスタ可視化に優れてる
PCAは線形分散最大 SVDはその計算の基盤
t-SNEは非線形 次元削減手法

楽曲の視聴

  • youtube

歌詞の解説

PCA(主成分分析)

PCAは「分散が最大となる方向」にデータを射影する線形次元削減手法です。
データを中心化して共分散行列を求め、その固有ベクトルと固有値から主成分を得ます。
主成分の重要度は寄与率で判断します。

寄与率(第i主成分)

\(\text{寄与率}=\frac{\lambda_i}{\sum_{j=1}^{p}\lambda_j}\)

累積寄与率(上位m成分)

\(\text{累積寄与率}(m)=\frac{\sum_{i=1}^{m}\lambda_i}{\sum_{j=1}^{p}\lambda_j}\)

ここで、\(\lambda_i\) は第i主成分の固有値、\(p\) は元の次元数です。
どの主成分まで残すかは累積寄与率の閾値(例:80%や90%)で判断します。


SVD(特異値分解)

SVDは任意の形の行列を、直交基底(特異ベクトル)と特異値で表す分解手法です。
数式で表すと次のようになります。

\(A=U \Sigma V^{\mathrm{T}}\)

PCAをデータ行列\(X\)(サイズ\(n\times p\))から計算する場合、\(X\)を中心化してSVDを適用します。
このとき、共分散行列の固有値\(\lambda_i\)と特異値\(\sigma_i\)の間には次の関係があります。

\(\lambda_i=\frac{\sigma_i^2}{n-1}\)

特異値の二乗は主成分の分散に比例し、PCA計算の基盤として広く使われます。


t-SNE(t-分布確率的近傍埋め込み)

t-SNEは非線形次元削減手法で、確率的近傍埋め込みを使って局所構造を保存します。
高次元と低次元での近傍点の確率分布差を最小化します。
コスト関数の例は次の通りです。

\(C=\sum_{i\neq j}p_{ij}\log\frac{p_{ij}}{q_{ij}}\)


ここで\(p_{ij}\)は高次元空間での近傍確率、\(q_{ij}\)は低次元空間での近傍確率です。

注意点:t-SNEはクラスタの可視化に優れますが、クラスタ間の距離や密度の違いは定量的な意味を持ちません
また、perplexityは「どの程度の近傍を重視するか」を決めるパラメータです。


楽曲に込めたメッセージ

難しい数理的な定義や式も、短いフレーズで繰り返し歌うことで記憶に定着します。
特にG検定のような用語暗記型試験では、正しい定義をそのまま記憶することが重要です。


まとめ

今回の「次元削減と可視化のうた」は、PCA・SVD・t-SNEの定義・特徴・違いを正確に覚えることを目的に作られています。
YouTubeやSuno AIで実際に聴いて、音楽のリズムとともに反復学習することで、試験本番でも迷わず選択肢を選べる知識が身につくはずです。

コメント

タイトルとURLをコピーしました