主成分分析のアルゴリズムの特徴

公開日: 2016年5月10日火曜日 データ解析

主成分分析 (principal component analysis, PCA) を実行するためのアルゴリズムはいくつかありますが、メジャーなものは固有値分解によるものとNIPALSアルゴリズムです。

固有値分解は非常に高速なものもありますので、基本的に固有値分解を用いれば良いと思います。ただ、データ数が多く、さらに変数の数 (次元の数) が多い場合は、NIPALSアルゴリズムのほうが良い場合もあります。

それは、少数の主成分のみ計算すれば良い場合です。固有値分解では、基本的にすべての主成分を計算することになりますが、NIPALSアルゴリズムでは1つずつ主成分を計算可能ですので、例えば数百万変数ある中で、第一、第二主成分のみ計算する、といったこともできます。このような場合は、固有値分解によってすべての主成分を計算するより、NIPALSアルゴリズムによって目的の成分数まで計算するほうが効率的といえます。

  • ?±??G???g???[?d????u?b?N?}?[?N???A