主成分分析(PCA)入門

ようこそ!この章では、アクチュアリーのデータ分析ツールキットの中でも特に強力なツールの1つである主成分分析(PCA:Principal Component Analysis)について学んでいきましょう。もしあなたが、何十もの列(変数)があるデータセットを前にして、どこから手をつければいいか圧倒されたことがあるなら、PCAがきっと役に立つはずです。これは、データが伝えようとしている重要なストーリーを損なうことなく、複雑なデータを「簡略化」するために使われる手法です。

PCAを例えるなら、複雑な物体の高解像度3Dスキャンを撮影し、その物体の特徴をほぼすべて判別できるような、最適な2Dの撮影角度を見つける作業に似ています。アクチュアリーの用語で言えば、これは次元の削減(dimensionality reduction)のために使用されます。つまり、多くの変数を、いくつかの本質的な変数へと変換するのです。

次元の削減とは?

多くのアクチュアリー業務では、非常に多くの説明変数を扱います。例えば、保険のプライシング(価格設定)を行う際、運転者の年齢、運転経験年数、エンジンの排気量、地域の犯罪率、さらには車の色といったデータがあるかもしれません。これが「高次元」データです。

次元の削減とは、一連の「主要な」変数を得ることによって、考慮する変数の数を減らすプロセスのことです。その目的は以下の通りです:

  • データセットを簡略化する。
  • ノイズや冗長性(相関のある変数)を取り除く。
  • データの可視化やモデリングを容易にする。

重要なポイント: PCAは、最も多くの「情報」(統計学ではこれを分散として測定します)を提供してくれる変数に注目することで、データを圧縮するのに役立ちます。

PCAの仕組み:概念的なステップ

背景にある線形代数が難しそうに感じても、心配しないでください。CS1では、この手法の「目的」と「活用方法」に焦点を当てます。PCAがどのようにデータを変換していくのか、論理的な流れを見てみましょう。

1. データの標準化

変数はそれぞれ異なる単位で測定されていることが多い(例:年齢は「歳」、年収は「万円」など)ため、通常はこれらを標準化します。これにより、絶対値が大きい変数が不当に分析を支配してしまうのを防ぎます。

2. 主成分(PC)の特定

PCAは、データのための新しい軸のセットを探します。
第1主成分(\(PC_1\))は、データの中で最大の分散を持つ方向です。
第2主成分(\(PC_2\))は、次に高い分散を持つ方向ですが、1つ重要なルールがあります。それは、\(PC_1\)と無相関(直交)でなければならないということです。

3. 変数の変換

各主成分は、元の変数の線形結合(一次結合)として表されます。元の変数を \(X_1, X_2, \dots, X_p\) とすると、主成分 \(Z_i\) は次のようになります:
\(Z_i = a_{i1}X_1 + a_{i2}X_2 + \dots + a_{ip}X_p\)

係数(\(a_{i1}, a_{i2}, \dots\))はローディング(負荷量)と呼ばれます。これらは、特定の主成分において、それぞれの元の変数がどれだけの重みを持っているかを示しています。

主成分の主な特徴

主成分には、試験問題でもよく問われるいくつかの「ゴールデンルール」があります:

  • 最大分散: \(PC_1\) は常に、データ全体の分散のうち可能な限り最大の部分を説明します。
  • 無相関: すべての主成分は、他のどの主成分とも完全に無相関です。これは、後の回帰モデリングにおいて非常に大きな利点となります!
  • 重要度の降順: 成分には順序があります。\(PC_1\) は \(PC_2\) よりも「情報量」が多く、\(PC_2\) は \(PC_3\) よりも情報量が多い、といった具合です。
  • 全分散: すべての主成分の分散の合計は、元の変数の分散の合計と等しくなります。情報を「作り出した」のではなく、単に「並べ替えた」だけだからです。

ご存知でしたか? 多くのアクチュアリーのデータセットでは、最初の2〜3個の主成分だけで全分散の80%以上を説明できることがよくあります。これにより、残りの数十個の変数を捨てても、情報の損失を最小限に抑えることができるのです!

出力結果の解釈

Paper B の試験では、R などのソフトウェアを使用して PCA を実行することになるでしょう。主に次の2つの点を解釈する必要があります:

1. 分散説明割合(PVE:Proportion of Variance Explained)

これは、各主成分が全体の「情報」の何パーセントを保持しているかを示します。
もし \(PC_1\) の PVE が \(0.60\) であれば、それはデータセット全体の分散の60%をその成分だけで説明していることを意味します。

2. 累積寄与率(Cumulative Proportion)

これは PVE の累計です。最初の3つの主成分を残すと決めた場合、\(PC_3\) の累積寄与率を見ることで、元のデータが持つストーリーのどれくらいを維持できているかがわかります。

よくある間違い: 受験生の中には、すべての成分を残さなければならないと考える人がいます。しかし、PCAの本来の目的は次元を削減することです。10個の元の変数に対して10個の主成分をすべて残してしまっては、何も簡略化できていないことになります!

主成分の数の選択

どこで止めるべきか、つまり主成分は何個あれば「十分」なのでしょうか?データ分析の文脈でよく言及される2つの一般的な方法があります:

  • スクリープロット(Scree Plot): 各主成分によって説明される分散を示す単純な折れ線グラフです。「エルボー(肘)」、つまりグラフが平坦になり始める点を探します。通常は、そのエルボーのにある成分を採用します。
  • しきい値法: 「全分散の80%または90%を説明する」といった目標を決め、その目標を達成するために必要な最小限の主成分の数を採用します。

クイックレビュー:なぜアクチュアリー業務でPCAを使うのか?

1. 簡略化: 50個の変数を扱うよりも、3個の変数を扱う方がはるかに簡単です。

2. 可視化: 10次元のデータは視覚化できませんが、2D散布図に \(PC_1\) と \(PC_2\) をプロットすれば、保険契約者データに自然なクラスター(塊)やパターンがあるかどうかを簡単に確認できます。

3. 多重共線性の回避: 回帰分析(トピック4で学習します)において、相関の高い説明変数は問題を引き起こす可能性があります。主成分は無相関であるため、それらを回帰モデルの入力として使用することで、この問題を完璧に解決できます。

まとめ: PCAは、相関のある多数の変数を、説明する分散の大きさ順に並べられた「主成分」と呼ばれる無相関な少数の変数に変換する、次元削減ツールです。