多変量解析について、主成分分析

情報処理H : 第9回目(12/13/96)

これまでに、データの概要の把握方法や基本的な統計手法について修得してきた。
今回はより発展的な手法として多変量解析というものを紹介し、 その一つとして主成分分析を詳しく説明する。

  1. 多変量解析について

    対象とする変量数が少ない場合には、今までも学んできたように、 単変量ごとに特性を把握することにより ある程度、データの構造を把握することができた。 また、2変量までなら、平面に図示することもできるので、 視覚的に捉えることも可能であった。
    しかし、もう少し大きくなって、3変量以上を同時に把握しようとすると いささかやっかいである。

    多変量解析法(Multivariate Analysis)は、いくつかの項目間の関連性を 統計的に分析し現象を要約して簡潔な表現を与えたり、現象の背後に潜む 構造を浮き彫りにしたり、あるいは特定の項目を他のいろいろの要因から 説明したりする方法である。複雑な現象を解明するための有力な方法論として いろいろな分野で幅広く応用されている。 特に、近年の計算機の発展・普及により、計算量に対しての苦労が 大幅に軽減されたのも広範に利用されだした一つの要因であろう。

    代表的な多変量解析として以下のようなものが挙げられる。

  2. 主成分分析(Principal Component Analysis)

    いくつか(p個)の変量の値をできるだけ情報の損失なしに、 少数変量(m個)の総合的指標(主成分)で代表させる方法である。 いくつかのテストの成績を総合した総合的成績、 いろいろな症状を総合した総合的な重症度、 種々の財務指標に基づく企業の評価... を求めたいといった場合に用いられる。
    p変量(p次元)の観測値をm個(m次元)の主成分に縮約させるという意味で、 次元を減少させる方法と言うこともでき、 多変量データを要約する一つの有力な方法である。

  3. 2変量の場合の主成分分析
    1. 定式化 : 配布資料 54ページ〜
      • 重み(係数) : a1、a2
      • 合成変量(線形結合) : z
      • よく代表するように、a1 と a2 を決める。
      • より広がって測定できる軸が情報量が多い。
      • 全測定値の分散を最大化する軸を決定する。

    2. 数学と英語の総合指標を求めよう : 例1(61 ページ)
       /* Lesson 9-1 */
       /*    File Name = prin01.sas   12/13/96   */
      
      data tyuuni;
        infile 'seiseki.dat';
        input koku sya suu rika eigo;
                                                    :
      proc print data=tyuuni;                       : データの表示
      run;                                          :
      proc princomp cov data=tyuuni out=out_prin;   : 主成分分析(分散共分散行列)
        var suu eigo;                               : 2変量
      run;                                          :
      proc print data=out_prin;                     : 結果の出力
      run;                                          :
      proc plot data=out_prin;                      : 散布図
        plot suu*eigo;                              : 元の変量のプロット
        plot prin2*prin1/vref=0 href=0;             : 主成分得点のプロット
      run;                                          :
                                                    :
      proc sort data=out_prin;                      : 説明のためにソートする
        by prin1;                                   :
      proc print data=out_prin;                     : 数学が効いていることの確認
      run;                                          :
      
    3. 出力結果 : prin01.out
      • 各変量の平均、分散、分散共分散行列
      • 固有値、比率(寄与率)、累積寄与率 : 解釈に使う
      • 固有ベクトル(係数a1とa2) : 解釈に使う
      • 主成分得点 : 各個人の得点(z)、2つある
      • 数学と英語の得点の散布図
      • 第1軸と第2軸の主成分得点の散布図

    4. 解釈方法
      • 寄与率 : その軸がどの程度説明力を持っているか : 第1軸だけで十分
      • 固有ベクトル : その軸の特徴を示している : 数学が効いている
      • 主成分得点と散布図 : 各個人がどこに付置されているか

  4. 3変量以上の主成分分析
    1. 定式化 : 資料 71ページ〜
      • 2変量の拡張
      • 合成変量(線形結合) : z
      • 合成変量の分散を最大化する軸を決定する。

    2. 全教科での総合指標を求めてみよう
       /* Lesson 9-2 */
       /*    File Name = prin02.sas   12/13/96   */
      
      data tyuuni;
        infile 'seiseki.dat';
        input koku sya suu rika eigo;
      
      proc print data=tyuuni;
      run;
      proc princomp cov data=tyuuni out=out_prin;
        var koku sya suu rika eigo;
      run;
      proc print data=out_prin;
      run;
      proc plot data=out_prin;
        plot prin2*prin1/vref=0 href=0;
        plot prin3*prin2/vref=0 href=0;
        plot prin3*prin1/vref=0 href=0;
      run;
      
    3. 出力結果 : prin02.out
      • 各変量の平均、分散、共分散行列
      • 固有値、比率(寄与率)、累積寄与率
      • 固有ベクトル
      • 主成分得点
      • 第1軸〜第3軸の散布図

    4. 解釈方法
      • 寄与率 : 2軸まで取れば十分のようだ(85.7%)。
      • 第1軸 : 全体的な総合点。だが、英語は低い(分散が低いから)
      • 第2軸 : 文系的特性かな? <=== 若干苦しい

  5. 相関行列を使う理由

    1. 相関行列を用いて全教科での総合指標を求めてみよう
       /* Lesson 9-3 */
       /*    File Name = prin03.sas   12/13/96   */
      
      data tyuuni;
        infile 'seiseki.dat';
        input koku sya suu rika eigo;
      
      proc print data=tyuuni;
      run;                                          :
      proc princomp data=tyuuni out=out_prin;       : 相関係数を使って
        var koku sya suu rika eigo;                 :
      run;                                          :
      proc print data=out_prin;
      run;
      proc plot data=out_prin;
        plot prin2*prin1/vref=0 href=0;
        plot prin3*prin2/vref=0 href=0;
        plot prin3*prin1/vref=0 href=0;
      run;
      
    2. 出力結果 : prin03.out
      • 各変量の平均、分散、相関行列
      • 固有値、比率(寄与率)、累積寄与率
      • 固有ベクトル
      • 主成分得点
      • 第1軸〜第3軸の散布図

    3. 解釈方法
      • 寄与率 : 2軸まで取れば十分のようだ(84.2%)。
      • 第1軸 : 全体的な総合点。
      • 第2軸 : 理系的特性かな?(not 文系的) <=== 若干苦しい
      • 分散共分散行列を使ったときとそれほど解釈に違いはない。その理由は全ての変量が試験の点数という同じ単位(正確ではないが)で測定されているので。

  6. その他のデータを主成分分析に適用して、解釈してみよう
    1. 中学1年生の身体検査データ : shintai.dat
       /* Lesson 9-4 */
       /*    File Name = prin04.sas   12/13/96   */
      
      data tyuuichi;
        infile 'shintai.dat';
        input shintyou taijyuu kyoui zakou;
      
      proc print data=tyuuichi;
      run;
      proc princomp data=tyuuichi out=out_prin;
      run;
      proc print data=out_prin;
      run;
      proc plot data=out_prin;
        plot prin2*prin1/vref=0 href=0;
        plot prin3*prin2/vref=0 href=0;
        plot prin3*prin1/vref=0 href=0;
      run;
      
    2. 解釈方法 : 出力結果 : prin04.out
      • 寄与率 : 1軸でほぼ十分のようだ(88.5%)。
      • 第1軸 : 全体的な総合の体格
      • 第2軸 : 太っている度合い
      • 第1軸と第2軸の主成分得点の散布図 : 太っていて大きいとか、痩せていて小さいとか

    3. 皆さんのデータ : all.dat
       /* Lesson 9-5 */
       /*    File Name = prin05.sas   12/13/96   */
      
      data gakusei;
        infile 'all.dat';
        input seibetsu $ shintyou taijyuu kyoui kozukai jitaku $ daigaku $;
      
      proc print data=gakusei(obs=10);
      run;
      proc princomp data=gakusei out=out_prin;
         var shintyou taijyuu kyoui;
      run;
      proc print data=out_prin(obs=10);
      run;
      proc plot data=out_prin;
        plot prin2*prin1/vref=0 href=0;
        plot prin3*prin2/vref=0 href=0;
        plot prin3*prin1/vref=0 href=0;
      run;
      
    4. 解釈方法 : 出力結果 : prin05.out
      • 寄与率 : 1軸で十分のようだ(87.9%)。
      • 第1軸 : 全体的な総合の体格
      • 第2軸 : 太っている度合い
      • 第1軸と第2軸の主成分得点の散布図 : 平均的な体格の人は痩せている人が多そう。小さい体格の人は太っている人が多そう。

  7. 主成分の数の決定基準 : 配布資料 80ページ

    明確に決まっているわけではないが、以下のような基準が一般的に 用いられている。また、結果の解釈の都合上、多少増減させることもある。

  8. 次回は、...

  9. 参考 : 手頃な読みもの、正月休みにでも如何? [DIR]講義のホームページへ戻ります