化学や自動車メーカーなど、工程が長く大量の変数を扱う業界では大量のデータを扱うシーンが多くあります。例えば車の燃費を考えてみても、各パーツの重量、点火時期、圧力損失、バルブ長、インジェクターの性能など数百から数千の項目となります。
これら変数から、燃費の計算式を考えようとしても非常に複雑となります。
このように数百までとはいかなくとも、30や50、100変数を扱うだけでも変数の扱いは苦労するシーンが多いです。
今回はそのようなシーンで活躍する主成分分析について紹介します。
主成分分析とは
主成分分析は、解析しようとしている多次元データを、そこに含まれる情報の損失をできるだけ少なくして二次元あるいは三次元のデータに縮約する手法です。
主成分分析を活用すると、観測対象がどのような位置にあるのか視覚的に把握できるようになることがから次のような目的で利用されます。
多数の変数を統合して、新たに総合的な変数を作成する
観測対象のグループ分けをする
他の解析手法を併用して、データを別の観点から吟味する
主成分分析のイメージ
イメージしやすくするため、2変数を扱った場合で紹介します。
x1とx2をそれぞれy軸、x軸とします。
対応する点をプロットしていき、最も分散が最大となる方向に直線を引きます。(赤線)
これを第1主成分と呼びます。
分散が最大となるということは、それほど説明力を持つと考えられるからです。
次に第1主成分に直交する直線を書き、これを第2主成分とします。
このように定めた主成分の軸でみると次のようなグラフととなります。
これが新しく作られた変数となります。新たな方向を探し、その新しい変数で今までと違う方向から分析をしていくことになります。
つまり主成分分析とは、元のデータから分散を最大とする変量を合成し、より説明度の高い変数を作り出すことを言います。
主成分分析の例
例題
「ある業務において、環境変数(温度や湿度などを想定)に対してデータを習得しています。担当者はデータをグループ化して報告する最良の方法を決定するためにデータを分析しようとしています。そこで今回は8つのデータに対して主成分分析を実行して、データ分析を簡単にするために変数の数を減らします。また、管理者はデータ分散の90%を説明するのに十分な成分を必要としています。」
データは次のように保存されています。
分析のイメージとしては次のようになります。
複数ある変数から、より説明力が高く少ない変数にすることになります。
統計解析ソフトMinitabを使って主成分分析を行うと次の結果となります。
第1主成分の分散は、分散全体の44.3%を占めます。
最初の主成分(PC1)と最も相関が高い変数は、変数2(0.484)、変数4(0.466)、変数5(0.459)、変数6(0.404)となります。
最初の主成分は、これらの4つの変数すべてと正の相関が見られる。したがって、変数2,4,5,6の値が上昇すると、最初の主成分の値も上昇することを表しています。
最初の4つの主成分は、データ分散の90.7%を説明している。このため、管理者は報告のためこれら成分を使用することにしました。
主成分分析の流れ
結果の解釈は先程のように行います。
流れをおさらいしてみますと次の3つになります。
1. 主成分数の選択
固有値を使って主成分が説明する分散の総量を判断します。許容可能な水準の分散を説明する主成分を保持します。許容可能な水準は用途によって変わります。記述目的であれば、説明される分散が80%は必要となります。
2. 元の変数の観点から各主成分を解釈する
各主成分を解釈するには、元の変数の係数の大きさと方向を調べます。係数の絶対値が大きくなるほど、成分を計算するうえで対応する変数が重要となります。係数の絶対値の大きさは、主観的な情報となります。
3. 外れ値を特定する
外れ値プロットを使用して、データの外れ値を特定します。参照ラインの上にある点は外れ値とみなし、必要に応じて外れ値を削除し、再分析を行います。
今回は主成分分析の基礎を紹介しました。
今回の例は分かりやすく変数が8でしたが、20~30を超えてくる変数のときに使われるシーンが多いです。(変数が10~20程度であれば回帰分析が有効です。)
それ以上の変数を扱いたい場合は是非活用してみてください。
今回の分析で使った統計解析ソフトMinitabであれば、クリックだけで主成分分析が可能となります。
非常に便利で強力なツールですので、是非お試しください。
Comments