Presentation is loading. Please wait.

Presentation is loading. Please wait.

プログラミング論 相関 http://www.ns.kogakuin.ac.jp/~ct13140/Prog/

Similar presentations


Presentation on theme: "プログラミング論 相関 http://www.ns.kogakuin.ac.jp/~ct13140/Prog/"— Presentation transcript:

1 プログラミング論 相関

2 概要 相関 データ群とデータ群の関連性の強さを考える 話は理論的.難易度は低め. 理系として「相関係数」くらいは知っていて欲しい…

3 相関

4 相関 "相関"とは,二つのデータ列の, 関連性,連動性(一緒に動くか)のこと. 相関係数とは,二つのデータ列の相関の強さを表す統計値.
例:人間の身長と体重は関係がある. 身長が大きいと,体重が大きい(傾向にある). 相関係数とは,二つのデータ列の相関の強さを表す統計値. 相関係数は-1~1の間をとる. -1に近いと強い負の相関. 0に近いと相関が弱い. 1に近いと強い正の相関.

5 各人の身長と体重の分布 身長の値が大きい人ほど, 体重の値も大きい傾向にある. (身長と体重は連動して動く) 相関がある

6 相関の強さ 相関係数 相関の強さを 数値化した統計値が, 「身長」の値が大きいと, 「足の長さ」の値が大きい傾向にある.
「身長」と「足の長さ」には相関がある. しかも,右の方が「相関が強い」 相関の強さを 数値化した統計値が, 相関係数  

7 「平均との偏差」同士の比較 正の相関 身長偏差>0 体重偏差>0 の人たち 身長偏差<0 体重偏差>0 の人たち
身長偏差×体重偏差 =正の数×正の数 =正の数 身長偏差>0 体重偏差<0 の人たち 身長偏差<0 体重偏差<0 の人たち この分布の例では, 「偏差の積」は 正の数の例が多い. 全員の「偏差の積」を 合計したら,正となる. 正の相関 身長偏差×体重偏差 =負の数×負の数 =正の数

8 共分散 「偏差の積」の平均が「共分散」 身長偏差>0 体重偏差>0 の人たち 身長偏差<0 体重偏差>0 の人たち
身長偏差>0 体重偏差<0 の人たち 身長偏差<0 体重偏差<0 の人たち

9 共分散が正:正の相関 xが増えると, yは増える傾向がある. 「偏差の積」は, 正であるものが多い. 「偏差の積」の平均は,正である.
(偏差の積の平均=共分散)

10 共分散が負:負の相関 xが増えると, yは減る傾向がある. 「偏差の積」は, 負であるものが多い. 「偏差の積」の平均は,負である.
(偏差の積の平均=共分散)

11 共分散がゼロ:無相関 xと yは, 連動して動かない. 「偏差の積」は, 正と負が同程度. 「偏差の積」の平均は,ゼロである.
(偏差の積の平均=共分散)

12 共分散の大きさ と 相関の強さ 強い正の相関 弱い正の相関 無相関 共分散が正. 大きな正の値. 共分散は正だが, 大きな値ではない.
ゼロ. 無相関

13 共分散 共分散の大小は,相関の強さを表す. ただし,元の値が大きいと,共分散の値は大きくなる.(共分散の絶対値を理解しづらい)
共分散が大きいほど,正の相関が強い. 共分散がゼロに近いと,相関が弱い. 共分散が小さいほど,負の相関が強い. xが増えたら,yは減る傾向にある. ただし,元の値が大きいと,共分散の値は大きくなる.(共分散の絶対値を理解しづらい) 同じデータでも, 身長[cm]と体重[g]の共分散の値は大きく, 身長[m]と体重[Kg]の共分散の値は小さい.

14 相関係数 共分散の値を標準偏差(データの散らばりの大きさ)の積で割った値が,相関係数. 相関係数は,-1から+1の値となる.
-1.0 ~ -0.7 : 強い負の相関 -0.7 ~ -0.3 : ある程度(?)負の相関がある -0.3 ~ +0.3 : 相関は弱い. +0.3 ~ +0.7 : ある程度(?)正の相関がある +0.7 ~ +1.0 : 強い正の相関がある.

15 標準偏差 ただし,標準偏差とは以下のもの nは,データの個数 xの平均 xの分散 xの標準偏差

16 標準偏差とは 「平均50点の数学の試験で60点を取った」と「平均50点の英語の試験で60点を取った」は 同程度にすごいことなのか?

17 正規分布 と 標準偏差 正規分布なら, 「平均±標準偏差」 の範囲に約68%, 「平均±2×標準偏差」 の範囲に約95%の 人がいる.
この例では,40点~60点の範囲に68%の人がいる.

18 相関係数 相関係数は,一次の相関の強さを 表現する. 右図のxとyは, 密接な関係があるように 見えるが, 相関係数は,ほぼゼロとなる.
(相関係数=-0.016)

19 相関係数のプログラミング double x[100], y[100]; x[0] = 1.2; y[0] = 3.4;
: と,x[0]~x[99] と y[0]~y[99]がある. x[i] と y[i] の相関係数を求めるには?

20 x[0]~x[99]の平均

21 x[0]~x[99]の平均 double x_sum, x_avr; int i; x_sum = 0.0;
for(i=0; i<100; i++){ x_sum += x[i]; } x_avr = x_sum/100;

22 共分散 (1/2) x[i] の「平均に対する偏差」 ??? x[i]とy[i]の「偏差の積」

23 共分散 (1/2) x[i] の「平均に対する偏差」 x[i]-x_avr x[i]とy[i]の「偏差の積」
(x[i]-x_avr)*(y[i]-y_avr)

24 共分散 (2/2) x[] と y[] の共分散.

25 共分散 (2/2) x[] と y[] の共分散. double d_sum = 0.0, cov;
for(i=0; i<100; i++){ d_sum += (x[i]-x_avr)*(y[i]-y_avr); } cov = d_sum/100; /* d_sum が偏差の積の合計, cov が共分散 */

26 標準偏差 x[]の標準偏差 /* x_dis がxの分散, x_st_devがxの標準偏差 */

27 標準偏差 x[]の標準偏差 double x_ds_sum=0.0,x_dis,x_st_dev;
for(i=0; i<100; i++){  x_ds_sum +=   (x[i]-x_avr)*(x[i]-x_avr); } x_dis = x_ds_sum/100; x_st_dev = sqrt(x_dis); /* x_dis がxの分散, x_st_devがxの標準偏差 */

28 x[]とy[]の相関係数 相関係数=共分散/(x標準偏差×y標準偏差)

29 x[]とy[]の相関係数 相関係数=共分散/(x標準偏差×y標準偏差) cov / x_st_dev / y_st_dev

30 実は 分子と分母の, 1/n は消せる.


Download ppt "プログラミング論 相関 http://www.ns.kogakuin.ac.jp/~ct13140/Prog/"

Similar presentations


Ads by Google