3 主成分分析を体験
今回のアプレットは,気合が入っています.「分散・共分散行列」,「固有値・固有ベクトル」のボタンを押しておくと,変化する様子が全て分かります.一般のソフトでは,中でどのように変化しているのか,また,何をしているのか,全く見えませんが,このソフトでは,リアルタイムにどのような計算を行い,どのように変化していっているのか知ることが可能です.
自画自賛ですね.誰もほめてくれませんので,自らほめることにしました.結構,技術的にも,内容的にも面白いと思うのですが,いかがでしょうか?
では,本題に入ります.今度は,2つの教科に英語の成績を加えることにします.表3.1を用いて,前の単元と同様に入力してみてください.
Step.1 表3.1 において,行数10(人数),列数3(国語,数学,英語)として,得点を入力してください.その際,数値を入力後,必ずリターンキーを押してください.
| No | 国語 | 数学 | 英語 | 合計 |
|
| 1 | 45 | 55 | 50 | 150 | |
| 2 | 35 | 90 | 55 | 180 | |
| 3 | 15 | 80 | 85 | 18 | |
| 4 | 45 | 90 | 70 | 205 | |
| 5 | 20 | 45 | 35 | 100 | |
| 6 | 55 | 85 | 95 | 235 | |
| 7 | 5 | 95 | 30 | 130 | |
| 8 | 65 | 35 | 75 | 175 | |
| 9 | 25 | 100 | 40 | 165 | |
| 10 | 90 | 25 | 65 | 180 | |
| 平均 | 40.0 | 70.0 | 60.0 |
Step.2 すると,標準化されたデータが表3.2に表示されます.ここで,下の Step.3 の「分散・共分散行列」,「固有値・固有ベクトル」のボタンを押しておくと,数値が変化していく様子が分かります(ボタンを押したとき,2つ左上に重なって表示されますので,マウスで移動させて下さい).
Step.3 この標準化されたデータを下に,分散・共分散行列を求め,その行列を元に固有値・固有ベクトルを求めます.下の2つのボタンを押してください(フレームが左上に重なっていますので,適当なところへ移動させてください).
Step.4 固有ベクトルのグラフ,そのグラフ上に元データをプロットしたグラフが表3.2に現れます.
いかがですか? 表3.4のようなグラフが登場しましたか? 出現しないときは,「固有値・固有ベクトル」ボタンを押したかどうか確認してみてください.このボタンを押していないと,登場しません.
![]() |
![]() |
固有値・固有ベクトルの状況を見ますと,表3.4のようになります.
![]() |
表3.5の固有値を見ますと,第1主成分の値がかなり大きいことが分かります.したがって,x 軸の正の方向は国語,英語の得点が高く(言語能力が高い),負の方向は,数学の得点が高い(数理能力が高い)と言うことが分かります.
第2主成分は,[1]の国語を除き,負の方向を向いていますので,これも,総合的能力と言えるでしょう.すなわち,x 軸より下にあるデータは,総合的な能力が優れていると言え,上にあるデータは,劣っていると言えます.
固有ベクトルの符号は,その性質上求め方によって,全く正反対で求まる場合もあります.今のところ,これ以上深入りはしないことにします.
いかがでしょうか? とにかく,横に転がったまま主成分分析を理解することを目的としています(横になりながら,パソコンをいじるのは少しきついことかもしれませんが).
いろいろと,分析したいものがあれば,このアプレットを利用して,どしどし,分析してみてください.次の章からは,少し数学的に,どうして,このようなことができるのか理論的なことに重きを置きお話しすることにします.
このアプレットを製作中,何度もデータを入力し確認しましたが,リアルタイムに変化させようとしたため,PCの負荷が高くなり,唸りを上げます.今年の夏は,エコのためクーラーをかけていないので,部屋は35℃以上になっています.この温度になると,何か眠たくなる,と言ったところ,「それは,あなたが気を失っているのだ」と言われました.