75 主成分分析と特異値分解
HTML-код
- Опубликовано: 9 янв 2025
- 「主成分分析の概要」
スライド1枚目
えーとですね、このスライドの1枚目ですけれども、「主成分分析」について説明します。現在、機械学習の前処理として多く利用されており、「次元削減」の手法の中でも特にシンプルなため、よく使われています。
左上の図では、3次元のプロットを2次元に「射影」する様子を示しています。多次元データが存在するとしても、全次元にわたって均等に広がっているわけではなく、大部分の特徴量が特定の次元に集中していることが多いです。これをより低次元の空間に「写像」することで、次元削減を行います。
次元削減の際には、まず「標準化」を行い、「固有値」と「固有ベクトル」を求めます。このスライドでは「特異値分解」と記載されていますが、共分散行列の固有値と固有ベクトルを求め、主要な2つの成分を取り出して射影する手法が示されています。
スライド2枚目
こちらはスライドの2枚目です。「共分散行列」を用いた次元削減の具体的な仕組みについて説明します。共分散行列は、データの特徴間の相関を表し、通常楕円状の形状を持つことが多いです。この楕円の中心線は、データの主な分散方向を示します。この主方向を見つけることが主成分分析の核となります。
共分散行列を解析することで、楕円の中心線やその広がりを特定できます。この場合、最も分散が大きい方向が第1主成分となり、その直交する方向が第2主成分となります。この2つの主成分を用いることで、データ全体のほぼ大部分を説明できる効率的な次元削減が可能です。
楕円の広がりは、データの分散の大きさを示しており、この分散が説明できる割合が主成分の重要性を示します。例えば、第1主成分が全データの分散の70%を説明し、第2主成分が20%を説明する場合、合計90%の分散を2次元でカバーできます。これにより、高次元データを効果的に低次元に圧縮できます。
さらに、射影後のデータは互いに直交する形で再構成され、データ分布の主要な情報を保ちながら次元削減が行われます。このように共分散行列の解析は、データの次元を削減しながらも、その本質的な特徴を失わないための重要なプロセスとなっています。
スライド3枚目
スライドの3枚目です。ここでは実際の数値例を示しています。次元が複数あるデータを処理した場合、最終的に「次元削減後」の行列が得られます。具体例として、左上の元データが「X」で、右下には2×4の行列「X'」が得られることが示されています。
データを標準化し、共分散行列を求め、さらに「特異値分解」を行います。この結果、固有値と固有ベクトルを求めることができ、固有ベクトルはデータの射影方向を示します。ここでは2次元への射影を行うため、2つの固有ベクトルを利用してデータを射影し、その結果が右下のプロジェクションデータとなります。
スライド4枚目
スライドの4枚目です。「分散最大化問題」として主成分分析を捉える視点が示されています。「直交基底」という概念を用い、データの分散を最大化する直交する基底を見つけることが目的です。第1成分と第2成分は互いに直交しています。
具体的には「特異値分解(SVD)」を用い、共分散行列の成分から固有値や固有ベクトルを求めます。これにより、直交する基底を用いてデータを効率的に表現できることが示されています。
スライド5枚目
スライド5枚目です。「SVD」を利用する利点について説明されています。SVDでは、共分散行列を直接扱わないため、大規模なデータに対しても適用可能です。一方、共分散行列を使用する場合、元のデータよりも大きな行列になることがあり、計算が不安定になることがあります。
さらに、SVDは直交変換やスケーリングを3段階に分けて処理するため、わかりやすい特徴があります。また、行列の形状に制約がないため、ランクが不足している行列にも適用可能です。このような理由から、実際の解析ではSVDがよく利用されます。
スライド6枚目
最後に、スライド6枚目は「まとめ」となっています。散らばったデータに対して2次元の行列を2次元に主成分分析すると、データを分離しやすくなる利点があります。
手順としては、まず中心化、次に正規化を行い、「特異値分解」によって固有ベクトルや固有値を求めます。得られた固有ベクトルを元データにかけて射影することで、直交する空間にデータを集約できます。これにより、次元削減が可能となり、データ処理が効率化されます。