用語解説
多変量解析の1種。複数の変数の相関関係を、変数を合成することで得られた新たな変数(主成分)で説明しようとする分析手法。多くの変数を2つの主成分に集約することで、それぞれを軸としたグラフとして図示することができるため、変数の可視化を目的として実施されることがある。
■詳細説明
主成分分析とは
主成分分析とは、互いに相関のある多数の変数を、情報をできるだけ失うことなしにより少数の新たな変数に削減する方法である。このとき、新たな変数はもとの観測変数の線形結合で表され、この新たな変数を主成分と呼ぶ。このような縮減によって得られた複数の変数の組み合わせにより、データの中からより解釈しやすい情報を引き出すことができる。
また、高次元のデータをより少数の変数へ削減して、データの次元の削減を行うことができる。データの次元によっては、次元削減により1次元直線、2次元平面、3次元空間などの視認しやすい空間への射影でデータを表し、データ構造を視覚的に把握することができるようになるため、主成分分析は有用な視覚化の方法ととらえることもできる。さらに機械学習のモデル構築においてもデータの次元削減が有効となる場合もある。一般にモデル構築の際に用いる変数が多くなるにつれ、モデルは複雑化し過学習を起こしやすくなる。そのため、変数の個数を適当に削減する必要がある場合に、主成分分析により学習のための新たな変数を導入する手法が用いられる。
上述の通り主成分分析では、主成分はもとの観測変数の線形結合により与えられるが、複雑な構造をもつデータに関しては、より一般に観測変数と主成分が非線形な関係にある場合を考える必要がある。このとき、観測変数と主成分との変換を与える関数をカーネル関数と呼び、カーネル関数を導入した主成分分析をカーネル主成分分析と呼ぶ。代表的なカーネル関数としてはガウシアンカーネルと多項式カーネルがあり、両方とも線形結合の場合に比べて調整できるパラメータが多いため、データ構造に即した主成分を求めることができる。
因子分析との違い
主成分分析に類似した多変量解析の手法として、因子分析が挙げられる。因子分析とは、各データが潜在的には複数の因子の合成で表されると仮定し、個々の構成要素を推論する分析手法である。主成分分析では、もとの観測変数を合成して主成分を得るため、観測変数が原因、主成分が結果という関係であると言える。一方で因子分析では、因子が原因、観測変数が結果、という関係にあると考えるため、因子分析と主成分は因果関係が逆になっている、という点に注意が必要である。なお、因子分析において因子の抽出方法を適切に選ぶと、主成分と抽出された因子が一致することが知られている。
主成分の例示
主成分分析では、もとのデータの情報をできるだけ失うことなく主成分を求めるために、データ間の分散に注目する。例として、図1のような(x1,x2)平面上のデータを考える。もとの観測変数x1、x2の線形結合によって新たな変数y1、y2を導入する。その際、元のデータが射影先の軸上でなるべく散らばるように、すなわち分散が大きくなるようにy1、y2を決定する。射影軸y1、y2上での各データの分散は標本共分散行列で表すことができ、分散の最大化問題は、標本共分散行列の固有値問題に帰着させて解くことができる。
図1
分散が最大となるような変数(射影軸)を第1主成分と呼び、第1主成分に直交するという条件の下で分散が最大となるような変数(射影軸)を第2主成分と呼ぶ。これは高次元のデータ空間に拡張することができ、n次元のデータ空間ではn個の主成分(第1主成分…第n主成分)まで定義することができる。
図1の例において、元データをy1に射影した後に分散が十分に大きければ、各データを区別するのにもはやy1以外は不要となり、y2を無視してデータを評価することができる。すなわち、2次元平面上のデータを主成分分析により1次元の数直線上で評価することが可能となる。これが主成分分析を用いた次元削減の例である。
情報損失と主成分の寄与率
主成分分析を用いて高次元データの次元削減を行う場合、必ずもとの高次元データの情報の損失が生じるため、次元削減による情報損失を何らかの方法で定量的に把握しておく必要がある。この評価には、各主成分の分散の大きさと標本共分散行列の固有値の関係を用いる。n次元のデータ空間では、n個の主成分、n×nの標本共分散行列及びn個の固有値が定義される。より大きな分散を持つ射影軸が、射影後にデータを区別するためにより重要であるため、分散に対応して大きな固有値を持つ主成分ほど持っている情報量が大きいと解釈できる。そのため、(ある主成分の固有値)/(全固有値の和)によって、その主成分の相対的な情報量を表すことができ、この量を寄与率と呼ぶ。また、k個の主成分がある場合、(k個の主成分の固有値の和)/(全固有値の和)を累積寄与率と呼ぶ。主成分分析により、n次元データ空間からk次元データ空間に次元削減した場合、累積寄与率が大きいほど情報の損失の小さい次元削減になっていると言える。
主成分分析の応用
・変数選択
特定の変数からすべての変数群を最もよく再現するような主成分を抽出しようという拡張な主成分分析の考え方を利用した変数選択のアイデアが提唱されている。すなわち、すべての変数の一部から、総合指標(合成変数)あるいは主成分を得ることによって、変数削減や次元削減ができて、説明力が高まることもできる。
・クラスタリングによる顧客セグメンテーション
クラスタリングとは、類似したものが混じり合う集団を、客観的に似た性質をもつもの同士に分けることである。たとえば、DMやクーポンの配布といったマーケティング施策に応じて、すべての顧客それぞれに施策を行うことは現実的ではなく、興味/関心に応じて類似した顧客群にグループ分け(=セグメンテーション)を実施し、顧客群ごとの特徴を把握したうえで施策を行うという取り組みが効率的ではないかといわれている。
例えば、アイズファクトリーのbodaisプラットフォームの「クラスタリングエンジン」では、手軽に複雑なデータを簡単にグループ分け(セグメント分け)することが可能、かつ新しいデータからセグメント予測をすることが可能である。小売・ECのペルソナ構築、DM送付、アンケートの顧客分析など多様多種の予測に使われている。
関連キーワード
関連事例