PCA
公開日:2025/05/30

主成分分析(Principal Component Analysis)による次元削減手法。多次元データの情報を保持しながら、より少ない次元で表現することで、データの可視化や計算効率の向上を実現する。
基本原理:
・データの分散を最大化する方向(主成分)を発見
・主成分は元の変数の線形結合として表現
・第1主成分が最大分散、第2主成分が第2位の分散
・主成分間は直交(無相関)
実装手順:
1. データの標準化(スケールの異なる変数がある場合)
2. PCA()でn_componentsパラメータを指定
3. fit()でモデルを学習
4. transform()またはfit_transform()でデータ変換
5. explained_variance_ratio_で寄与率を確認
主要なパラメータ:
・n_components:削減後の次元数
・svd_solver:特異値分解のアルゴリズム
・random_state:再現可能性のためのシード値
実務での活用例:
・顧客セグメンテーションでの特徴量削減
・画像データの圧縮と特徴抽出
・センサーデータの次元削減
・機械学習の前処理として過学習防止
・探索的データ分析での可視化
結果の解釈:
・寄与率:各主成分が説明する分散の割合
・累積寄与率:80-90%を目安に次元数を決定
・主成分負荷量:元変数と主成分の関係
注意点:
・元の変数の解釈可能性が失われる
・外れ値の影響を受けやすい
・線形変換のみ対応(非線形はt-SNEやUMAPを検討)