機械学習のための数学超入門(標準偏差・分散・共分散・相関)【HokurikuAIMeetup)】
- 1. https://haim.connpass.com/ HAIM ( 北陸AI&MeetUp )
機械学習のための数学超入門
HAIM ( 北陸AI&MeetUp )
HAIM ( 北陸AI&MeetUp ) 上野 友裕
注意
本資料に使われている文献、図は勉強会や教育目的のために引用しています。
各文献、図は著作者に帰属します。
- 2. https://haim.connpass.com/ HAIM ( 北陸AI&MeetUp )
自己紹介 分散・共分散 まとめ相関はじめに
自己紹介
2
Tomohiro Ueno
HAIM ( 北陸AI&MeetUp ) 共同発起人
経歴:修士(情報工学) 現在はエンジニアをやっております。
卒業研究:骨格座標推定を用いた手話動画の分類
得意なこと: 画像認識、強化学習、積読
趣味: テニス、バイオリン(初心者)、囲碁、オセロ、釣り、
機械学習や数学の勉強
Email: kanazawaaimeetup@gmail.com(個人用アドレスです)
Facebook: https://www.facebook.com/tomoueno.AiLab
Twitter: はなかみ王子 @DataNinjapan
- 3. https://haim.connpass.com/ HAIM ( 北陸AI&MeetUp )
自己紹介 分散・共分散 まとめ相関はじめに
3
1
はじめに
2
1. 分散とは
2. 分散の考え方
3. 標準偏差とは
4. 標準偏差の考え方
5. 共分散とは
6. 共分散のイメージ① 一般的なケース
7. 共分散のイメージ② 共分散が0に近づく
8. 共分散のイメージ③ 共分散が0に近づく
9. 分散共分散行列
10. まとめ
3 4
全体の構成
分散・共分散
1. 相関とは
2. 正の相関
3. 負の相関
4. 相関なし
5. しかし相関の大きさまではわからない
6. そこで相関係数の登場
7. 相関係数の考え方
8. 相関係数がなぜ-1.0〜1.0の値しかとら
ないか(相関係数が1.0のとき)
9. 相関係数がなぜ-1.0〜1.0の値しかとら
ないか(相関係数が0.333のとき)
10. 相関係数がなぜ-1.0〜1.0の値しかとら
ないか(相関係数が-1.0のとき)
11. まとめ
相関 まとめ
1. なぜ機械学習のために
数学の知識が必要か?
2. 今日のプレゼンの参考資料
1. まとめ
- 5. https://haim.connpass.com/ HAIM ( 北陸AI&MeetUp )
はじめに 分散・共分散 相関自己紹介 まとめ
なぜ機械学習のために数学の知識が必要か?
5
ü モデルの精度をさらに上げるために必要
ü 機械学習では、数式の解釈を間違えてしまうが故に実装を間違えてしまうことがある
ü 最新の手法を論文から取り入れたくても、数学がわからないと読めない ...etc
(もちろん数学の知識があまり無くても実装を行ったり、データサイエンスのコンペティションに取り組むことはできるが)
数学、特に基礎の部分が一番大事
+
丸暗記できなくてもイメージで理解することが大事
- 6. https://haim.connpass.com/ HAIM ( 北陸AI&MeetUp )
はじめに 分散・共分散 相関自己紹介 まとめ
今日のプレゼンの参考資料
6
参考文献:
八谷大岳. ゼロからつくるPython機械学習プログラミング入門. 株式会社 講談社, 2020年.
今回のプレゼン資料は、
「ゼロからつくるPython機械学習プログラミング入門」
(講談社, 八谷大岳)を参考に作成させていただきました。
画像:“ゼロからつくるPython機械学習プログラミング入門.” Www.Kspub.Co.Jp,
www.kspub.co.jp/book/detail/5206126.html. Accessed 13 Dec. 2020.
- 8. https://haim.connpass.com/ HAIM ( 北陸AI&MeetUp )
自己紹介 はじめに 分散・共分散 相関 まとめ
分散とは
8
• データのばらつき具合を示すもの
• !は確率変数のこと( ≒ 母集団の全てのサンプル)
• Var(!)は!を用いた分散(分散は英語でvarianceという)
• #$
%は!の分散を別の書き方で表したもの (標準偏差#$を二乗したもの)
• Nは標本数(サンプル数)
• ̅!は標本平均(本当の母集団の平均かどうかはわからない)
• !'は各標本(サンプルのこと)
- 9. https://haim.connpass.com/ HAIM ( 北陸AI&MeetUp )
自己紹介 はじめに 分散・共分散 相関 まとめ
分散の考え方
9
(考え方)
データの各値と平均との差(偏差と呼ぶ)を単純に足し合わせてしまうと、打ち消し
あってしまい正しく計算できない。そこで、偏差を二乗してサンプル数で割ることで、
データのばらつき具合を正しく表すことができる。
!" − 2.5
こんなデータがあった場合、単純に平均との差を足し合わせてしまうと、±0
になってしまう。
偏差を二乗することで、正の数となるので正しく計算できる。
サンプル数で割るのは、サンプル数の違いで分散が大きくなったり
小さくなったりしないようにするため。
!" − 2.5 !" + 1.0 !" + 2.0!"
データは一切バラつ
いていないのか...?
- 10. https://haim.connpass.com/ HAIM ( 北陸AI&MeetUp )
自己紹介 はじめに 分散・共分散 相関 まとめ
標準偏差とは
10
• 分散の平方根をとったもの。
• 各標本の平均値からのばらつき具合を表す。
• 分散だけではわかりづらかったスケール感を、適切に表せる
!"
#
= !"
参考文献: “統計学の分散と標準偏差を図でわかりやすく解説.” 気づき村, 27 Jan. 2019,
kidukimura.com/variance-standard-deviation/. Accessed 19 Dec. 2020.
- 11. https://haim.connpass.com/ HAIM ( 北陸AI&MeetUp )
自己紹介 はじめに 分散・共分散 相関 まとめ
標準偏差の考え方
11
• 分散を計算するために偏差を2乗したものを、元に戻すイメージ
• A大学の入試の全員分の数学の点数のばらつき具合を求めたい時、標準偏
差(仮に15.4だとする)を求めることで「概ね受験者の点数は平均から15.4点程
度ばらついている」と解釈可能になる
• 分散のままだと「oo点」のように単位をつけられない
• 平均の取り方には様々な手法があり、今回は幾何平均をとる手法と似ている。
(詳しくは「算術平均」、「幾何平均」、「調和平均」などで検索)
!"
#
= !"
参考文献: “統計学の分散と標準偏差を図でわかりやすく解説.” 気づき村, 27 Jan. 2019,
kidukimura.com/variance-standard-deviation/. Accessed 19 Dec. 2020.
(再掲)
分散の計算式
標準偏差の計算式
- 12. https://haim.connpass.com/ HAIM ( 北陸AI&MeetUp )
自己紹介 はじめに 分散・共分散 相関 まとめ
共分散とは
12
• 2組の対応するデータ同士の関係を表す数値。
• 2つの変数の相関を測るために用いられる場合が多い。
• 英語でcovarianceという。
• (補足)同じ変数同士、例えば共分散を表す!"# $, $ は通常の$の分散と等価。
参考文献 “共分散の意味と簡単な求め方 | 高校数学の美しい物語.” Mathtrain.Jp, mathtrain.jp/covariance. Accessed 13 Dec. 2020.
- 13. https://haim.connpass.com/ HAIM ( 北陸AI&MeetUp )
自己紹介 はじめに 分散・共分散 相関 まとめ
共分散のイメージ① 一般的なケース
13
"
#
{("%, #%), "(, #( , … . , "+, #+ }の "%, #% が
6, 3 で ̅" = 3、1# = 2のとき、 "% − ̅" , #% − 1# =
(3,1)となるので("% − ̅")(#% − 1#)の項は3になる。
̅" = 3
1# = 2
6
3
偏差
偏差
0
- 14. https://haim.connpass.com/ HAIM ( 北陸AI&MeetUp )
自己紹介 はじめに 分散・共分散 相関 まとめ
共分散のイメージ② 共分散が0に近づく
14
"
# {("%, #%), "(, #( , … . , "+, #+ }の "%, #% が
(6, 2)で ̅" = 3、2# = 2のとき、 "% − ̅" , #% − 2# =
(3,0)となるので("% − ̅")(#% − 2#)の項は0になる。
̅" = 3
2# = 2
6
偏差
0
- 15. https://haim.connpass.com/ HAIM ( 北陸AI&MeetUp )
自己紹介 はじめに 分散・共分散 相関 まとめ
共分散のイメージ③ 共分散が0に近づく
15
"
#
{("%, #%), "(, #( , … . , "+, #+ }の "%, #% が
3, 4 で ̅" = 3、1# = 2のとき、 "% − ̅" , #% − 1# =
(0,2)となるので("% − ̅")(#% − 1#)の項は0になる。
̅" = 3
1# = 2
6
4
偏差
0
- 16. https://haim.connpass.com/ HAIM ( 北陸AI&MeetUp )
自己紹介 はじめに 分散・共分散 相関 まとめ
分散共分散行列
16
数式の引用元:
Contributors to Wikimedia projects. “ベクトル要素間の共分散の行列.” Wikipedia.org, Wikimedia Foundation, Inc.,
16 May 2008, ja.wikipedia.org/wiki/%E5%88%86%E6%95%A3%E5%85%B1%E5%88%86%E6%95%A3%E8%A1%8C%E5%88%97. Accessed 19 Dec. 2020.
• 以下は今回用いた数学記号の使い方とは異なりますが、分散共分散行列は以下のようになりま
す。
• 今までの例だと、!"は#"に相当し、 !"は$"に相当します。%&は#に関する母平均に相当し、 %&
は$に関する母平均に相当します。
• 今までの例だと、登場する記号が#と$だけだったので、2行2列の行列になります
左上からの右下までの対角線上は通常の分散を表し、それ以外の場所は共分散を表します。
いままで一個ずつ見てきた分散や共分散をまとめて可視化したいときに便利です。
- 19. https://haim.connpass.com/ HAIM ( 北陸AI&MeetUp )
自己紹介 はじめに 分散・共分散 相関 まとめ
相関とは
19
《名・ス自》二つ以上の事物の、一方が変われば他方もそれに連れて変わるとか、
あるものの影響を受けてかかわり合っているとかいうように、互いに関係を持つこと。また、そういう関係。
引用元:
“Oxford Languages and Google - Japanese | Oxford Languages.” Languages.Oup.com, languages.oup.com/google-dictionary-ja/.
要するに比例関係を表すもの
- 20. https://haim.connpass.com/ HAIM ( 北陸AI&MeetUp )
自己紹介 はじめに 分散・共分散 相関 まとめ
正の相関
2020
!
"
̅! = 3
&" = 2
6
4
0
5つのデータが存在し、赤丸でプロットした。
(1)の式のように5つのデータで
共分散をとると共分散は正になる。
ゆえに、正の相関があると言える。
・・・ (1)
- 21. https://haim.connpass.com/ HAIM ( 北陸AI&MeetUp )
自己紹介 はじめに 分散・共分散 相関 まとめ
負の相関
21
!
"
̅! = 3
&" = 2
6
4
0
5つのデータが存在し、赤丸でプロットした。
(1)の式のように5つのデータで
共分散をとると共分散は負になる。
ゆえに、負の相関があると言える。
・・・ (1)
- 22. https://haim.connpass.com/ HAIM ( 北陸AI&MeetUp )
自己紹介 はじめに 分散・共分散 相関 まとめ
相関なし
22
!
"
̅! = 3
&" = 2
6
4
0
5つのデータが存在し、赤丸でプロットした。
(1)の式のように5つのデータで
共分散をとると共分散は0に近い値となる。
ゆえに、相関がほとんどないと言える。
・・・ (1)
- 23. https://haim.connpass.com/ HAIM ( 北陸AI&MeetUp )
自己紹介 はじめに 分散・共分散 相関 まとめ
しかし相関の大きさまではわからない
23
先ほど紹介した共分散を見るだけでは、相関の大きさまでは見ることができない。
(共分散が正か、負かの情報しか参考にならない)
例:
身長を!"#とし、体重を$%&とした場合
単位が違うので、単純に共分散を求めただ
けの値を比較することに意味がない
参考文献:“相関係数を図でわかりやすく解説【統計学を目で学習する】.” 気づき村, 3 Feb. 2019,
kidukimura.com/correlation/. Accessed 19 Dec. 2020.
- 24. https://haim.connpass.com/ HAIM ( 北陸AI&MeetUp )
自己紹介 はじめに 分散・共分散 相関 まとめ
そこで相関係数の登場
24
!"# =
%"#
%"" %##
共分散を標準偏差の平方根で割ったもの
相関係数(相関の大きさを表す値)は−1.0~1.0までの値をとる。
• 1.0に近いほど正の相関がある
• -1.0に近いほど負の相関がある
• 0.0に近い場合はほとんど相関がない
共分散"#
標準偏差"標準偏差#( と等価
)
- 25. https://haim.connpass.com/ HAIM ( 北陸AI&MeetUp )
自己紹介 はじめに 分散・共分散 相関 まとめ
相関係数の考え方
25
なぜ共分散を標準偏差で割り算するか?
→標準偏差で割ることで、正規化のようなことを行わなければならないから
参考文献:
“相関係数を図でわかりやすく解説【統計学を目で学習する】.” 気づき村, 3 Feb. 2019,
kidukimura.com/correlation/. Accessed 19 Dec. 2020.
詳しくはこちらのサイトがとてもわかりやすいので、参考にしてください。
- 26. https://haim.connpass.com/ HAIM ( 北陸AI&MeetUp )
自己紹介 はじめに 分散・共分散 相関 まとめ
相関係数がなぜ-1.0〜1.0の値しかとらないか
2626
!
"
̅! = 3
&" = 2
6
4
0
*+ = 3.0, */ = 2.0だとします。(*+, */は標準偏差)
また、*+/
0
123 !, " のこと 6.0だとします。
(偏差を2乗すると分散になります。また、xの偏差と
yの偏差を掛け合わせても共分散になります。データが完全に
相関する場合、xの標準偏差とyの標準偏差を掛け合わせたものは
共分散と等しくなり、左の図のような面積で表せます)
標準偏差を掛け合わせた青枠の面積は3.0×2.0 = 6.0になります。
今回は共分散もたまたま6だったので、正の方向に完全に
相関していることになります。
つまり、相関係数は6 ÷ 6 = 1.0となります。
標準偏差標準偏差
相関係数が1.0のとき
標本
- 27. https://haim.connpass.com/ HAIM ( 北陸AI&MeetUp )
自己紹介 はじめに 分散・共分散 相関 まとめ
相関係数がなぜ-1.0〜1.0の値しかとらないか
2727
!
"
̅! = 3
&" = 2
6
4
0
*+ = 3.0, */ = 2.0だとします。(*+, */は標準偏差)
また、*+/
0
(234(!, ")のこと)は2だとします。
標準偏差を掛け合わせた青枠の面積は3.0×2.0 = 6.0になります。
今回は共分散は2だったので、相関係数は2.0 ÷ 6.0 = 0.333と
なります。
相関が最大の時、青で示された面積を1.0とすると、
今回の面積は桃色で示された0.333となります。
よって、正の方向に少し相関しているものの、反対方向に
ばらついているサンプルもあることがわかります。
標準偏差
標準偏差
相関係数が0.333のとき
反対方向にばらついた標本
- 28. https://haim.connpass.com/ HAIM ( 北陸AI&MeetUp )
自己紹介 はじめに 分散・共分散 相関 まとめ
相関係数がなぜ-1.0〜1.0の値しかとらないか
2828
!
"
̅! = 3
&" = 2
6
4
0
*+ = 3.0, */ = 2.0だとします。(*+, */は標準偏差)
また、*+/
0
123 !, " のこと は − 6.0だとします。
(偏差を2乗すると分散になります。また、xの偏差とyの偏差を
掛け合わせても共分散になり、完全に負の相関がある場合
左の図のような面積で表せます)
標準偏差を掛け合わせた青枠の面積は3.0×2.0 = 6.0になります。
今回は共分散は-6.0だったので、相関係数は −6.0 ÷ 6.0 = −1.0と
なります。
よって、負の方向に完全に相関していることがわかります。
偏差
偏差
相関係数が-1.0のとき
標本
- 29. https://haim.connpass.com/ HAIM ( 北陸AI&MeetUp )
自己紹介 はじめに 分散・共分散 相関 まとめ
まとめ
29
• 分散は正か負かを表す符号の部分が重要
• 相関係数は、分散をわかりやすい形や単位に変換することで比較可能にしたもの
• 相関係数は−1.0~1.0の間の値しかとらない
- 32. https://haim.connpass.com/ HAIM ( 北陸AI&MeetUp )
参考文献・引用元(一部省略)
八谷大岳. ゼロからつくるPython機械学習プログラミング入門. 株式会社 講談社, 2020年.
Contributors to Wikimedia projects. “ベクトル要素間の共分散の行列.” Wikipedia.org, Wikimedia Foundation, Inc., 16 May 2008,
ja.wikipedia.org/wiki/%E5%88%86%E6%95%A3%E5%85%B1%E5%88%86%E6%95%A3%E8%A1%8C%E5%88%97. Accessed 19 Dec. 2020.
“Oxford Languages and Google - Japanese | Oxford Languages.” Languages.Oup.com, languages.oup.com/google-dictionary-ja/.
“ゼロからつくるPython機械学習プログラミング入門.” Www.Kspub.Co.Jp, www.kspub.co.jp/book/detail/5206126.html. Accessed 13 Dec. 2020.
“共分散の意味と簡単な求め方 | 高校数学の美しい物語.” Mathtrain.Jp, mathtrain.jp/covariance. Accessed 13 Dec. 2020.
“統計学の分散と標準偏差を図でわかりやすく解説.” 気づき村, 27 Jan. 2019,
kidukimura.com/variance-standard-deviation/. Accessed 19 Dec. 2020.
“相関係数を図でわかりやすく解説【統計学を目で学習する】.” 気づき村, 3 Feb. 2019, kidukimura.com/correlation/. Accessed 19 Dec. 2020.
“統計学の分散と標準偏差を図でわかりやすく解説.” 気づき村, 27 Jan. 2019, kidukimura.com/variance-standard-deviation/. Accessed 19 Dec. 2020.