ディープラーニング講座「応用数学」要点まとめ


私は、2020年7月に<font color="red">__「G検定（2020 #2）」__</font>に合格した。
次は、2021年2月実施の「E資格（2021 #1）」受験資格である__JDLA認定プログラム「３カ月で現場で潰しが効くディープラーニング講座」__に2020年8月から挑戦中。


本記事では、__JDLA認定プログラム「3カ月で現場で潰しが効くディープラーニング講座」__の課題であり、ディープラーニング実装に必要な知識__「応用数学」__の要点をまとめる。


##第１章：線形代数

###１－１．固有値・固有ベクトル

ある正方行列$A$とベクトル$\vec{x}$の積が、ただのスカラーの数$\lambda$とベクトル$\vec{x}$の積となる特殊な$\vec{x}$のことを行列$A$に対する__固有ベクトル__といい、係数$\lambda$を__固有値__という。

```math
A\vec{x}＝\lambda\vec{x}
```

__その他特徴__

* 行列$A$は正方行列である
* 固有ベクトル$\vec{x}$は特定の比率を示すため、複数存在する<br>
　　例：(1 1)や(2 2)は同じ固有ベクトル　
* 固有値$\lambda$はただの係数のため、固有値、固有ベクトルを求める際は単位行列_I_を利用して求める<br>
　　求め方：　行列式　|$A$-$\lambda$_I_|=0より固有値$\lambda$を算出した後、固有ベクトルを求める

###１－２．固有値分解

　ある実数を正方形に並べた行列$A$が固有値$\lambda_1$,$\lambda_2$,…と固有ベクトル$\vec{v}_1$,$\vec{v}\_2$,…を持っているとする。
この固有値$\lambda\_1$,$\lambda\_2$,…を対角線上に並べ、それ以外の成分を0にした行列を行列$\Lambda$とし、その固有値に対応した固有ベクトルを並べた行列を行列$V$とする。

```math
\Lambda＝
\left(
\begin{array}{cc}
\lambda_1 & 0 & \cdots \\ 
0 & \lambda_2 & \cdots \\
\vdots & \vdots & \ddots \\
\end{array}
\right)
,V=
\left(
\begin{array}{cc}
\vec{v}_1 & \vec{v}_2 & \cdots \\ 
\end{array}
\right)
```
すると、以下のような行列式が成り立ち、これを行列$A$の__固有値分解__という。

```math
A=V\Lambda\:V^{\mathrm{-1}}

```

__その他特徴__

* 行列$A$は正方行列でなければ固有値分解できない
* 固有値は基本的には$n×n$行列であれば$n$個存在する
* $\Lambda$は固有値$\lambda$の大きい数字から並べるのが一般的だが、順番に制約はない
* メリットは正方行列$A$を複数回かける際に計算が容易になること<br>
　　例1：$AA$=$V$$\Lambda$$V^{\mathrm{-1}}$$V$$\Lambda$$V^{\mathrm{-1}}$=$V$$\Lambda$$\Lambda$$V^{\mathrm{-1}}$,<br>
　　例2： $AAA$=$V$$\Lambda$$V^{\mathrm{-1}}$$V$$\Lambda$$V^{\mathrm{-1}}$$V$$\Lambda$$V^{\mathrm{-1}}$=$V$$\Lambda$$\Lambda$$\Lambda$$V^{\mathrm{-1}}$<br>
$\Lambda$は0が多く、$\lambda$の累乗で計算が楽
* 固有値分解により固有値、固有ベクトルから行列$A$の特徴が推測できる

###１－３．特異値・特異値分解

　正方行列ではなくても分解できる方法がある。<br>
ある実数の長方行列$M$に対し、特殊な単位ベクトル$U,V$を使用した以下のような式が成り立つ分解を__特異値分解__という。$S$は、__特異値__を対角に並べた行列。

```math
M\vec{v}=\sigma\vec{u}\\
M^{\mathrm{T}}\vec{u}=\sigma\vec{v}\\
\:\\
M=USV^{\mathrm{-1}}

```

__その他特徴__

* 固有値分解できるには以下の式が成り立つ
* 長方行列$M$と転置行列$M^{\mathrm{T}}$をかけると正方行列となる<br>
* 特異値分解は正方行列となる$M$$M^{\mathrm{T}}$と$M^{\mathrm{T}}$$M$、つまり$M$の2乗の行列に対する固有値分解を用いて行う<br>
　$MM^{\mathrm{T}}$=$USV^{\mathrm{-1}}$\*$VS^{\mathrm{T}}U^{\mathrm{-1}}$=$USS^{\mathrm{T}}U^{\mathrm{-1}}$<br>
　$M^{\mathrm{T}}M$=$VS^{\mathrm{T}}U^{\mathrm{-1}}$\*$USV^{\mathrm{-1}}$=$VS^{\mathrm{T}}SV^{\mathrm{-1}}$<br>
* 特異値分解はデータ量の多い画像を圧縮できる方法として利用される<br>
　具体的には・・・特異値分解後、小さい特異値を減らすことでぼやかした画像（圧縮した画像）を作ることが可能
* 特異値分解することで、機械学習前のデータ処理段階で特異値が似ている（画像が似ている）という特徴が見いだせる

###演習問題
----
___★問題1___

```math
A=
\left(
\begin{array}{cc}
8 & 1  \\ 
4 & 5\\
\end{array}
\right)
の固有値を求めよ。\\
\:\\
(a)\lambda =9,4 \:\:\:(b)\lambda =8,4 \:\:\:(c)\lambda =9,3 \:\:\:(d)\lambda =8,1
\:\\
\:\\
```
<details><summary>解答</summary><div>


```math

行列式　|A-\lambda I|=0より\\
\begin{vmatrix}
8-\lambda & 1 \\
4 & 5-\lambda
\end{vmatrix}=0 \\
\:\\
(8-\lambda)(5-\lambda)-1*4=0 \\
\:\\
\lambda ^2-13 \lambda +36=0 \\
\:\\
(\lambda-4)(\lambda-9)=0 \\
\:\\
固有値(a)\lambda = 9,4\\

```
</div></details>

----
___★問題2___

```math
A=
\left(
\begin{array}{cc}
8 & 1  \\ 
4 & 5
\end{array}
\right)
の一次独立な固有ベクトルの組み合わせとして正しいものはどれか。\\
\:\\
(a)
\begin{pmatrix}
1  \\
-4 
\end{pmatrix} ,
\begin{pmatrix}
1  \\
1 
\end{pmatrix}  \:\:\:
(b)
\begin{pmatrix}
1  \\
-4 
\end{pmatrix} ,
\begin{pmatrix}
1  \\
-1 
\end{pmatrix}  \:\:\:
(c)
\begin{pmatrix}
1  \\
4 
\end{pmatrix} ,
\begin{pmatrix}
1  \\
1 
\end{pmatrix}  \:\:\:
(d)
\begin{pmatrix}
-1  \\
-4 
\end{pmatrix} ,
\begin{pmatrix}
1  \\
1 
\end{pmatrix} 
\:\\
\:\\
```
<details><summary>解答</summary><div>


```math

\begin{pmatrix}
8-\lambda & 1 \\
4 & 5-\lambda
\end{pmatrix}
\begin{pmatrix}
x_1 \\
x_2
\end{pmatrix}
=
\begin{pmatrix}
0 \\
0
\end{pmatrix} 
に固有値\lambda =9,4を代入する\\
\:\\
\:\\
\lambda=4のとき\\

\begin{pmatrix}
4 & 1 \\
4 & 1
\end{pmatrix}
\begin{pmatrix}
x_1 \\
x_2
\end{pmatrix}
=
\begin{pmatrix}
0 \\
0
\end{pmatrix} より\\
4x_1 + x_2 = 0 となり\\
固有ベクトルは
\begin{pmatrix}
1 \\
-4
\end{pmatrix} となる
\:\\
\:\\
\lambda=9のとき\\

\begin{pmatrix}
-1 & 1 \\
4 & -4
\end{pmatrix}
\begin{pmatrix}
x_1 \\
x_2
\end{pmatrix}
=
\begin{pmatrix}
0 \\
0
\end{pmatrix} より\\
-x_1 + x_2 = 0 となり\\
固有ベクトルは
\begin{pmatrix}
1 \\
1
\end{pmatrix} となる
\:\\
\:\\
解答 (a)

```
</div></details>




##第２章：確率・統計

###２－１．確率
####確率の種類
　確率には発生する頻度を表す__頻度確率__と、信念の度合いを表す__ベイズ確率__の2種類が存在する。本記事では、頻度確率に関する要点をまとめる。

* 頻度確率（客観確率）・・・発生する頻度<br>
　例：10本のうち1本あたりが出る　__確率10%__
* ベイズ確率（主観確率）・・・信念の度合い<br>
　例：医者に「あなたは__40%の確率__でインフルエンザです」と言われる

####確率の定義
　すべての事象の数を$n(U)$、事象$A$が起こる数を$n(A)$で表すと、すべての事象に対する、事象$A$が起こる確率は以下のように表される。
__・事象$A$が起こる確率__

```math
P(A)=\frac{n(A)}{n(U)}=\frac{事象Aが起こる数}{すべての事象の数}

```
また、その他の確率の定義にも順に示す。<br>
__・事象$A$が起こらない確率__

```math
P(\bar{A})=\frac{事象Aが起こらない数}{すべての事象の数}=\frac{すべての事象の数-事象Aが起こる数}{すべての事象の数}\\
=\frac{n(U)-n(A)}{n(U)}=\frac{n(U)}{n(U)}-\frac{n(A)}{n(U)}=1-P(A)\\

```

__・条件付き確率__
　　ある事象$B$が与えられた下で、$A$となる確率

```math
P(A|B)=\frac{P(A \cap B)}{P(B)}=\frac{n(A \cap B)}{n(B)}\\

```

__・事象$A$、$B$が同時に起こる確率__

```math
P(A \cap B)=P(A)P(B|A)=P(B)P(A|B)\\

```


__・事象$A$か$B$が起こる確率__

```math
P(A \cup B)=P(A)+P(B)-P(A \cap B)\\

```

####ベイズ則（ベイズの定理）

　__ベイズ則（ベイズの定理）__とは、「ある事象$A$が起こったという条件の下での事象$B$となる確率__$P(B|A)$__」を下に、「ある事象$B$が起こったという条件の下での事象$A$となる確率__$P(A|B)$__」が求められる法則のことで、式で表すと以下のようになる。


```math
P(A|B)=\frac{P(B|A)P(A)}{P(B)}\\

```
この法則を利用することで、実際に起こっていない確率（上記では__$P(A|B)$__）を簡単に求めることができる。

###２－２．統計
####統計の種類
　統計には__記述統計__と、__推測統計__という種類がある。それぞれの意味は以下の通り。

* 記述統計：集団の性質を要約し記述する統計
* 推測統計：集団から一部を取り出し元の集団（母集団）の性質を推測する統計

母集団は多くのデータが集まっており、全てのデータを見てどのような性質かを調べることは難しい。そこで、一部のデータを標本として抽出し、その標本のデータの性質を調べ、母集団の性質を推測する（推測統計）。今回学ぶディープラーニングは、母集団に位置づけられるビッグデータそのもののデータを調べることができる手法である。

####統計学で用いられる専門用語

　統計学ではデータの特徴を表現するため、多くの分布や専門用語を扱う。その代表例を以下に示す。

* 期待値：分布における、平均の値 or 「ありえそうな値」

```math
期待値E(f)=\sum_{k=1}^{n} P(X=x_k)f(X=x_k)\qquad※離散値\\
期待値E(f)=\int  P(X=x)f(X=x)dx\qquad※連続値\\ 

```
* 分散：データの散らばり具合　データの各々の値が、期待値からどれだけズレているのか平均したもの

```math
分散Var(f)=E((f_{(X=x)}-E_{(f)})^2)=E(f^2_{(X=x)})-(E_{(f)})^2

```
* 標準偏差：データの散らばり具合であり、分散の平方根<br>
　元データを2乗している分散は元の単位と異なるため、分散を平方根して単位を合わしている

```math
標準偏差\sigma=\sqrt{Var(f)}=\sqrt{E((f_{(X=x)}-E_{(f)})^2)}

```
* ベルヌーイ分布：表裏のみがでるコイントス時の確率をイメージする分布<br>
　表と裏の出る割合が等しくなくても扱える分布

```math
P(x|\mu)=\mu^x(1-\mu)^{1-x}
```
* マルチヌーイ（カテゴリカル）分布：さいころを振った際の確率をイメージする分布<br>
　各面の出る割合が等しくなくても扱える分布
* 二項分布：ベルヌーイ分布の多試行版

```math
P(x|\lambda ,n)=\frac{n!}{x!(n-x)!}\lambda^x(1-\lambda)^{n-x}
```
* ガウス分布：釣鐘型の連続分布

```math
N(x,\mu ,\sigma^2)=\sqrt{\frac{1}{2\pi\sigma^2}}exp\Bigl(-\frac{1}{2\sigma^2}(x-\mu)^2\Bigr)
```
* 推定：母集団を特徴づける母数を推測すること<br>
　・点推定：平均値などの1つの値を推定すること<br>
　・区間推定：平均値などが存在する範囲（区間）を推定すること
* 推定量（estimator）：パラメーターを推定するために利用する数値の計算方法や計算式や推定関数のこと
* 推定値（estimate）：実際に試行を行った結果から計算した値のこと
* 標本平均：母集団から取り出した標本の平均値のこと
* 標本分散：母集団から取り出した標本の分散のこと
* 不偏分散：より母集団に近づけため、標本分散を修正した分散のこと


###演習問題
----
___★問題1___

以下の選択肢から正しいものを選べ。

| name       | score       |
|:----------:|:-----------:|
| A          | 90          |
| B          | 80          |
| C          | 70          |
| D          | 40          |

4人の平均点はいくつか。

```math
\:\\
(a)65 \:\:\:(b)70 \:\:\:(c)75 \:\:\:(d)80
\:\\
\:\\
```

<details><summary>解答</summary><div>


```math
\frac{90+80+70+40}{4}  \\
= 70
\:\\
\:\\
解答 (b)


```

</div></details>

----
___★問題2___

分散はいくつか。

```math
\:\\
(a)340 \:\:\:(b)350 \:\:\:(c)360 \:\:\:(d)370
\:\\
\:\\
```

<details><summary>解答</summary><div>


```math
\frac{(90-70)^2+(80-70)^2+(70-70)^2+(40-70)^2}{4}  \\
= \frac{1400}{4} =350
\:\\
\:\\
解答 (b)


```

</div></details>

----
___★問題3___

標準偏差はいくつか。

```math
\:\\
(a)\sqrt{340} \:\:\:(b)\sqrt{350} \:\:\:(c)\sqrt{360} \:\:\:(d)\sqrt{370}
\:\\
\:\\
```

<details><summary>解答</summary><div>


```math
標準偏差 = \sqrt{分散}  \\
 =\sqrt{350}
\:\\
\:\\
解答 (b)


```

</div></details>


----

##第３章：情報理論
###３－１．自己情報量・エントロピー
####自己情報量
　情報量は、増加した情報量そのものではなく、元のデータ量に対する情報量の比率で表すことができる。

```math
情報量\frac{\Delta w}{w}を積分すると、\\
\int \frac{1}{w}dw=\log w\\
```
 以上より、__自己情報量$I(x)$__は、以下のように表せる。

```math

I(x)=\log \bigl(W(x)\bigr)=-\log \bigl(P(x)\bigr)\\

```

$W(x)$は情報量（事象）の数、$P(x)$は情報量（事象）の数の逆数と考えられることができる。
また、自己情報量の単位は、対数の底が2のとき__ビット($bit$)__、底がネイピア$e$のとき__ナット($nat$)__となる。

####シャノンエントロピー

　__シャノンエントロピー__とは、自己情報量の期待値のことである。

```math

H(x)=E\bigl(I(x)\bigr)=-E \Bigl( \log \bigl(P(x)\bigr)\Bigr)\\
=-\sum_{}^{} \Bigl(P(x) \log \bigl(P(x)\bigr)\Bigr)\\

```
####カルバック・ライブラー　ダイバージェンス

　__カルバック・ライブラー　ダイバージェンス__とは、同じ事象・確率変数における異なる確率分布$P,Q$の違いを表す。元からわかっていた確率分布$Q$の自己情報量に対し、あとでわかった確率分布$P$の自己情報量を引いたものの$P$に対する期待値で示すことができる。

```math
I\bigl(Q(x)\bigr)-I\bigl(P(x)\bigr)=\Bigl(-\log \bigl(Q(x)\bigr)\Bigr)-\Bigl(-\log \bigl(P(x)\bigr)\Bigr)\\
=\log \frac{P(x)}{Q(x)}\\
\:\\
D_{KL}(P||Q)=E_{x～P}\;\Bigl[\log \frac{P(x)}{Q(x)}\Bigr]=E_{x～P}\;[\log P(x) -\log Q(x)]\\
=\sum_{}^{} P(x)\bigl(\log P(x) -\log Q(x)\Bigr)=\sum_{}^{} P(x)\log \frac{P(x)}{Q(x)}\\

```

####交差エントロピー
　__交差エントロピー__とは、カルバック・ライブラー　ダイバージェンスの一部分を切り出したもの。確率分布$P$のシャノンエントロピー$H(P)$とカルバック・ライブラー　ダイバージェンス$D_{KL}$からも求められる。

```math
H(P,Q)=H(P)+D_{KL}(P||Q)\\
=-\sum_{x}^{} P(x)\log P(x)+\sum_{x}^{} P(x)\bigl(\log P(x) -\log Q(x)\bigr)\\
=-\sum_{x}^{} P(x)\log Q(x)
```

###演習問題
----
___★問題___

シャノンエントロピーは自己情報量の平均である。ある離散的な事象の確率分布を$P(x)$としたとき、シャノンエントロピーとしてふさわしいものは、次のうちどれか。

```math
(a)\sum \frac{1}{P(x)}\log \bigl(P(x)\bigr)  \:\:\:(b)-\sum P(x)\log \bigl(P(x)\bigr)  \:\:\:(c)\sum P(x)+\log \bigl(P(x)\bigr)
\:\\
\:\\
```
<details><summary>解答</summary><div>

シャノンエントロピーとは、自己情報量の期待値のことである。

```math

H(x)=E(I(x))=−E(log(P(x))) \\
=-\sum P(x)\log \bigl(P(x)\bigr)
\:\\
\:\\
解答 (b)

```
</div></details>

----

###関連ページ

* ディープラーニング講座「応用数学」要点まとめ＜本記事＞
* [ディープラーニング講座「機械学習」要点まとめ](https://qiita.com/Shinji333/items/0ecd7270e1adee2dbe94)
* [ディープラーニング講座「機械学習」実装演習](https://qiita.com/Shinji333/items/42e820362fb2169c9f8a)
* [ディープラーニング講座「深層学習：Day1」要点まとめ＆実装演習](https://qiita.com/Shinji333/items/b4ea4c4d6047bb0255f4)
* [ディープラーニング講座「深層学習：Day2」要点まとめ＆実装演習](https://qiita.com/Shinji333/items/e55f0183e1214cde16dc)
* [ディープラーニング講座「深層学習：Day3」要点まとめ＆実装演習](https://qiita.com/Shinji333/items/b8d9c10ce66733bd78f3)
* [ディープラーニング講座「深層学習：Day4」要点まとめ＆実装演習](https://qiita.com/Shinji333/items/56a289a0e198b735fd47)