【ラビットチャレンジ（E資格）】応用数学

#はじめに
2021/2/19・20に実施される日本ディープラーニング協会(JDLA)Ｅ資格合格を目指して、ラビットチャレンジを受講した際の学習記録です。

###科目一覧
[応用数学](https://qiita.com/yoshikou/items/9e677e33138686f7c276)
[機械学習](https://qiita.com/yoshikou/items/bce5818c3cff72274702)
[深層学習（day1）](https://qiita.com/yoshikou/items/2d6ace77f6cdd71024c1)
[深層学習（day2）](https://qiita.com/yoshikou/items/206eb27d1a9ef3034d5f)
[深層学習（day3）](https://qiita.com/yoshikou/items/42418e9cb7a764a9ad54)
[深層学習（day4）](https://qiita.com/yoshikou/items/e7342d39d7e2c7946dc7)


#第1章：線形代数
- スカラー
 - だいたい、いわゆる普通の数
 - +-×÷の演算が可能
 - ベクトルに対する係数になれる
- ベクトル
 - 「大きさ」と「向き」をもつ
 - 矢印で図示される
 - スカラーのセットで表示される
- 行列
 - スカラーを表にしたもの
 - ベクトルを並べたもの

###単位行列と逆行列
かけても、かけられても相手が変化しない「1」のような行列を単位行列という。
$$ I = \begin{pmatrix}
1 &   & \\\
  & 1 & \\\
  &   & \ddots \\
\end{pmatrix} $$
まるで逆数のような働きをする行列を逆行列という。
$$ AA^{-1} = A^{-1}A = I $$

###行列式の特徴
ある行列が2つの横ベクトルの組み合わせだと考えたとき、
$$ \begin{pmatrix}
a & b \\\
c & d
\end{pmatrix} = \begin{pmatrix}
\vec{v_1}  \\\
\vec{v_2}
\end{pmatrix} $$
でつくられる平行四辺形の面積が逆行列の有無を判別する。
この面積を$ \begin{vmatrix}
a & b \\\
c & d
\end{vmatrix} = \begin{vmatrix}
\vec{v_1}  \\\
\vec{v_2}
\end{vmatrix} $と表し行列式と呼ぶ。
$ \vec{v_1} = (a,b,c), \vec{v_2} = (a,b,c), \vec{v_3} = (a,b,c) $のとき、
$$ \begin{vmatrix}
\vec{v_1} \\\
\vec{v_2} \\\
\vec{v_3}
\end{vmatrix} = \begin{vmatrix}
a & b & c \\\
d & e & f \\\
g & h & i
\end{vmatrix} = \begin{vmatrix}
a & b & c \\\
0 & e & f \\\
0 & h & i
\end{vmatrix} + \begin{vmatrix}
0 & b & c \\\
d & e & f \\\
0 & h & i
\end{vmatrix} + \begin{vmatrix}
0 & b & c \\\
0 & e & f \\\
g & h & i
\end{vmatrix} = a \begin{vmatrix}
e & f \\\
h & i
\end{vmatrix} - d \begin{vmatrix}
b & c \\\
h & i
\end{vmatrix} + g \begin{vmatrix}
b & c \\\
e & f
\end{vmatrix} $$

n個のベクトルからできている行列式は、次の特徴を持つ。

- 同じ行ベクトルが含まれていると行列式はゼロ
$$ \begin{vmatrix}
\vec{v_1} \\\
\vdots \\\
\vec{w} \\\
\vdots \\\
\vec{w} \\\
\vdots \\\
\vec{v_n}
\end{vmatrix} = 0 $$
- 1つのベクトルが $\lambda$ 倍されると行列式は $\lambda$ 倍される
$$ \begin{vmatrix}
\vec{v_1} \\\
\vdots \\\
\lambda\vec{v_i} \\\
\vdots \\\
\vec{v_n}
\end{vmatrix} = \lambda \begin{vmatrix}
\vec{v_1} \\\
\vdots \\\
\vec{v_i} \\\
\vdots \\\
\vec{v_n}
\end{vmatrix} $$
- 他の成分が全部同じで $i$ 番目のベクトルだけが違った場合、行列式の足し合わせになる
$$ \begin{vmatrix}
\vec{v_1}\\\
\vdots \\\
\vec{v_i} + \vec{w} \\\
\vdots \\\
\vec{v_n}
\end{vmatrix} = \begin{vmatrix}
\vec{v_1} \\\
\vdots \\\
\vec{v_i} \\\
\vdots \\\
\vec{v_n}
\end{vmatrix} + \begin{vmatrix}
\vec{v_1} \\\
\vdots \\\
\vec{w} \\\
\vdots \\\
\vec{v_n}
\end{vmatrix} $$
- 行を入れ替えると符号が変わる
$$ \begin{vmatrix}
\vec{v_1} \\\
\vdots \\\
\vec{v_s} \\\
\vdots \\\
\vec{v_t} \\\
\vdots \\\
\vec{v_n}
\end{vmatrix} = - \begin{vmatrix}
\vec{v_1} \\\
\vdots \\\
\vec{v_t} \\\
\vdots \\\
\vec{v_s} \\\
\vdots \\\
\vec{v_n}
\end{vmatrix} $$

###固有値と固有ベクトル
ある行列 $A$ に対して、以下のような式が成り立つ特殊なベクトル $\vec{x}$ と右辺の係数 $\lambda$ がある。
$$ A\vec{x} = \lambda\vec{x} $$
行列 $A$ とその特殊なベクトル $\vec{x}$ の積は、ただのスカラーの数 $\lambda$ とその特殊なベクトル $\vec{x}$ との積と同じ値になる。
この特殊なベクトル $\vec{x}$ とその係数 $\lambda$ を行列 $A$ に対する固有ベクトル、固有値という。

###固有値分解
ある実数を正方形に並べて作られた行列 $A$ が固有値 $\lambda_1,\lambda_2,…$ と固有ベクトル $\vec{v_1},\vec{v_2},…$ を持ったとする。この固有値を対角線上に並べた行列（それ以外の成分は0） 
$$ A = \begin{pmatrix}
\lambda_1 &   & \\\
  & \lambda_2 & \\\
  &   & \ddots \\
\end{pmatrix} $$
と、それに対応する固有ベクトルを並べた行列
$$ V = (\vec{v_1} \quad \vec{v_2} \quad …) $$
を用意したとき、それらは
$$ AV = VA $$
と関係付けられる。したがって
$$ A = VAV^{-1} $$
と変形できる。このように正方形の行列を上述の様な3つの行列の積に変形することを固有値分解という。この変形によって行列の累乗の計算が容易になる等の利点がある。

###特異値分解
正方行列以外でも固有値分解に似たことはできる。
$$ M \vec{v} = \sigma\vec{u} $$
$$ M^\top \vec{u} = \sigma\vec{v} $$
このような特殊な単位ベクトルがあるならば特異値分解できる。
$$ MV = US \qquad M^\top U = VS^\top $$
$$ M = USV^{-1} \qquad M^\top = VS^\top U^{-1} $$
これらの積は
$$ MM^\top = USV^{-1}VS^\top U^{-1} = USS^\top U^{-1} $$
つまり$ MM^\top $を固有値分解すれば、その左特異ベクトルと特異値の2乗が求められることがわかる。


#第2章：確率・統計
- 確率変数（random variable） $x$ ：実際に実現された値（実現値）
$\hspace{112pt}$ …サイコロを投げて出た目とすると1〜6の整数値

- 確率分布（probability distribution） $P(x)$ ：実現値$x$がどれだけ選ばれやすいか
$\hspace{145pt}$ …サイコロの例では $P(1)=…=P(6)=\frac{1}{6}$

###条件付き確率
$$ P(Y=y|X=x) = \frac{P(Y=y,X=x)}{P(X=x)} $$
ある事象X=xが与えられた下で、Y=yとなる確率。

###独立な事象の同時確率
$$ P(X=x,Y=y) = P(X=x)P(Y=y)=P(Y=y,X=x) $$
###ベイズの定理
$$ P(x|y) = \frac{P(y|x)P(x)}{\sum_x P(y|x)P(x)} $$
加法定理（全確率の法則） $P(y) = \sum_x P(x,y) = \sum_x P(y|x)P(x)$ を条件付き確率 $P(x|y) = \frac{P(x,y)}{P(y)} = \frac{P(y|x)P(x)}{P(y)}$ に用いると、得られる。

###期待値
- 期待値：その分布における確率変数の平均の値 or "ありえそう"な値
$$ E(f) = \sum_{k=1}^nP(X=x_k)f(X=x_k) $$
$\hspace{28pt}$ 連続する値なら…
$$ \int P(X=x)f(X=x)dx $$
- 分散：データの散らばり具合
$$ Var(f) = E\Bigl(\bigl(f_{(X=x)}-E_{(f)}\bigl)\^2\Bigl) =  E\bigl(f^2_{(X=x)}\bigl)-\bigl(E_{(f)}\bigl)\^2$$
- 共分散：2つのデータ系列の傾向の違い
$$ Cov(f,g) = E\Bigl(\bigl(f_{(X=x)}-E(f)\bigl)\bigl(g_{(Y=y)}-E(g)\bigl)\Bigl) = E(fg)-E(f)E(g) $$
- 標準偏差：データの散らばり具合（分散は2乗してしまっているので元のデータと単位が違うので、平方根をとり単位を元に戻したもの）
$$ \sigma = \sqrt{Var(f)} = \sqrt{E\bigl((f_{(X=x)}-E_{(f)})^2\bigl)} $$

###様々な確率分布
- ベルヌーイ分布：2種類のみの結果しか得られないような試行の結果を表した分布（コイントスのイメージ）
$$ P(x|\mu) = \mu^x(1-\mu)^{1-x} $$
- マルチヌーイ（カテゴリカル）分布：複数の種類の結果が得られるような試行の結果を表した分布（サイコロを転がすイメージ）
$$ P(x|\mu) = \prod_{k=1}^K \mu_k^{x_k} $$
- 二項分布：ベルヌーイ分布の多試行版
$$ P(x|\lambda,n) = \frac{n!}{x!(n-x)!}\lambda^x(1-\lambda)^{n-x} $$
- ガウス分布：釣鐘型の連続分布
$$ N(x;\mu,\sigma^2) = \sqrt\frac{1}{2\pi\sigma^2}\exp\bigl(-\frac{1}{2\sigma^2}(x-\mu)^2\bigl) $$

<a href="http://machine-learning.hatenablog.com/entry/2016/03/26/211106" title="ややこしい離散分布に関するまとめ" rel="nofollow noopener" target="_blank">ややこしい離散分布に関するまとめ</a>

#第3章：情報理論
###自己情報量
$$ I(x) = -\log{P(x)} $$
頻繁に起こる事象が観測されても、大した情報をもたらさない一方、珍しい事象ほど情報量は大きい。
そこで、確率の逆数 $\frac{1}{P(x)}$ が情報量の定義の候補となる。
しかし、独立な2現象 $x,y$ をそれぞれ観測して得た情報量は $\frac{1}{P(x)P(y)}$ ではなく、それぞれのもつ情報量の和となった方が自然な定義なので、対数をとる。 
対数の底が2のとき、単位はビット（bit）。
対数の底がネイピア数 $e$ のとき、単位はナット（nat）。

###シャノンエントロピー（平均情報量）
$$ H(x) = E\bigl(I(x)\bigl) = -E\Bigl(\log\bigl(P(x)\bigl)\Bigl) = -\sum_x P(x)\log\bigl(P(x)\bigl) $$
自己情報量の期待値(自己情報量をすべての観測値で平均化したもの。

###カルバックライブラーダイバージェンス（Kullback-Leibler divergence）
$$ D_{KL}(P||Q) = E_x \Bigl[log\frac{P(x)}{Q(x)}\Bigl] = \sum_x P(x)\bigl(\log{P(x)}-\log{Q(x)}\bigl)$$
$Q$ という分布から、新たな $P$ という分布を見たときにどのぐらい情報が違うのかを表す指標。
一般にKLダイバージェンスは $Q$ に関する下に凸な関数で、 $P=Q$ のときのみ最小値 $D_{KL}(P||P)=0$ になる。
したがって、確かに分布間の距離のようなものであるが、 $P$ と $Q$ を入れ替た $D_{KL}(Q||P)$ は違う値になり本当の数学的な距離とは異なる。

###交差エントロピー（cross entropy）
$$ H(P,Q) = -E_{X \sim P} \log{Q(x)} = -\sum_xP(x)\log{Q(x)} $$
Qについての自己情報量をPの分布で平均することにより、2つの確率分布がどのぐらい離れているのかを表す指標。

なお、確率分布 $P(x)$ と $Q(x)$ の交差エントロピーは、 $P(x)$ のエントロピーと $P(x)$ から見た $Q(x)$ のKLダイバージェンスを足し合わせたものになっている。
$$ \begin{align}
H(P,Q) &= -\sum_xP(x)\log{Q(x)} \\\
&= -\sum_xP(x)\log{\frac{P(x)Q(x)}{P(x)}} \\\
&= -\sum_xP(x)\bigl(\log{P(x)}+\log{Q(x)}-\log{P(x)}\bigl) \\\
&= -\sum_xP(x)\log{P(x)} + \sum_xP(x)\bigl(\log{P(x)}-\log{Q(x)}\bigl) \\\
&= H(P) + D_{KL}(P||Q) \\\
\end{align} $$