その他

E資格 学習内容まとめ(応用数学)

はじめに

今回の記事は、私が受講しているE資格 JDLA認定プログラムの「ラビットチャレンジ」のレポート記事です。
機械学習エンジニアとして網羅的に学習しておきたい、また知識の裏付けが欲しいということで勉強をはじめました。
この記事で要点をまとめることで、知識として定着させることも目的の1つです。

今回のテーマは応用数学です。
項目は大きくわけて下記の3つとします。
・線形代数
・確率、統計
・情報理論

参考文献として以下の書籍を使用しました。

人工知能プログラミングのための数学がわかる本

線形代数

ベクトル

スカラーとは異なり、向きを表します。
以下の2種類の表記方法があり、
前者を行ベクトル、後者を列ベクトルと呼びます。
$$
( a_1, a_2, \ldots, a_n )
$$
$$\left(
\begin{array}{c}
b_{1} \\
b_{2} \\
\vdots \\
b_{n} \\
\end{array}
\right)
$$

スカラー

いわゆる普通の数のこと。大きさを表します。
ベクトルに対して係数となれます。

足し算・引き算・スカラー倍

ベクトルの対応する成分ごとに足し算・引き算を行います。
スカラー倍はベクトルの全ての成分に同じ数をかけます。
ベクトルの次元が異なる場合は足し算・引き算ができないことに注意が必要です。

・e.g. ベクトルの足し算
$$
\left(
\begin{array}{c}
1 \\
2 \\
3 \\
\end{array}
\right)
+
\left(
\begin{array}{c}
4 \\
5 \\
6 \\
\end{array}
\right)
=
\left(
\begin{array}{c}
5 \\
7 \\
9 \\
\end{array}
\right)
$$
・e.g. スカラー倍
$$
2
\left(
\begin{array}{c}
1 \\
2 \\
3 \\
\end{array}
\right)
=
\left(
\begin{array}{c}
2 \\
4 \\
6 \\
\end{array}
\right)
$$

行列の足し算・引き算

行列とは、同じ次元のベクトルを集めて長方形状に並べたものです。
行列の足し算と引き算はベクトルと似ています。

・e.g. 下記の行列は2×3行列。2行3列です。
$$
\left(
\begin{array}{ccc}
1 & 2 & 3 \\
4 & 5 & 6 \\
\end{array}
\right)
$$

ベクトルと同様、足し算・引き算も可能です。
・e.g.
$$
\left(
\begin{array}{ccc}
1 & 2 & 3 \\
4 & 5 & 6 \\
\end{array}
\right)
+
\left(
\begin{array}{ccc}
1 & 2 & 3 \\
4 & 5 & 6 \\
\end{array}
\right)
=
\left(
\begin{array}{ccc}
2 & 4 & 6 \\
8 & 10 & 12 \\
\end{array}
\right)
$$

行列の掛け算

行列同士も掛け算をすることができます。
ベクトルの内積の概念を拡張することでイメージできるかと思います。
$$
\left(
\begin{array}{cc}
-1 & 2 \\
1 & 1 \\
\end{array}
\right)
\left(
\begin{array}{cc}
3 & 1 \\
2 & 3 \\
\end{array}
\right)
=
\left(
\begin{array}{c}
-1×1+2×3 \\
1×1+1×3 \\
\end{array}
\right)
=
\left(
\begin{array}{c}
5 \\
4 \\
\end{array}
\right)
$$

また、行列の掛け算、積には交換法則は成り立ちません。
$$
(AB ≠ BA)
$$

零行列

すべての成分が0であるような行列。
行列・ベクトルに零行列を掛けると零行列・零ベクトルになります。
しかし、行列式が0となるような行列を2乗しても零行列になります。
・e.g.
$$
\begin{pmatrix}
0 & 0 \\
1 & 0
\end{pmatrix}
^2
=
\begin{pmatrix}
0 & 0 \\
0 & 0
\end{pmatrix}
$$

単位行列

右下がりの対角線上成分のみ1で、その他が0であるような正方行列を単位行列といいます。
・e.g.
$$
\begin{pmatrix}
1 & 0 \\
0 & 1
\end{pmatrix}
$$
正方行列とは、行数と列数が等しい正方形のような行列のことです。
単位行列には、どんな行列・ベクトルに掛けても元の行列・ベクトルから変化しないという性質があります。
・e.g.
$$
\begin{pmatrix}
1 & 0 \\
0 & 1
\end{pmatrix}
\begin{pmatrix}
4 & 7 \\
1 & 7
\end{pmatrix}
=
\begin{pmatrix}
4 & 7 \\
1 & 7
\end{pmatrix}
$$
このような、ある操作を加えてもその前後で何も変化しないような操作(写像)を恒等写像と呼びます。

逆行列

行列には割り算の概念はありませんが、代わりに逆行列という似た概念があります。
逆行列とは、分数でいうところの逆数のポジションにあります。
行列\(A\)とその逆行列\(A^{-1}\)の積が単位行列\(E\)になるように、下記の式が定義されます。
$$
AA^{-1} = A^{-1}A = E
$$
行列\(A\)、\(A^{-1}\)の積が定義できるためには、まず正方行列であることが必要です。
さらに、正方行列であっても、行列\(A\)の行列式が0であった場合は逆行列は存在しないことに注意が必要です。
行列式は、\(detA\)もしくは\(|A|\)と表されます。
\(A=\begin{pmatrix}a & b \\c & d\end{pmatrix}\)の行列式は次の公式で計算されます。
$$
|A| = detA = ad-bc
$$

固有値・固有ベクトル

与えられた正方行列\(A\)に対して、次の式を満たすような列ベクトル\(x(≠0)\)が存在するとき、
\(λ\)を行列\(A\)の固有値、\(x\)を固有ベクトルと呼びます。\(E\)は単位行列。
$$
Ax = λEx
$$
この式の右辺を左辺に移項すると、次の式が得られます。
$$
(A-λE)x = 0
$$
仮に\((A-λE)\)が逆行列\((A-λE)^{-1}\)を持ったとすると、
$$
x = (A-λE)^{-1}0 = 0
$$
となり、この連立方程式は自明な解\(x=0\)しか持たなくなります。
それは、固有ベクトル\(x(≠0)\)が存在しないことになります。
したがって、固有ベクトルを持つ条件は、\(A-λE\)が逆行列\(A-λE)^{-1}\)を持たないことです。
つまり、
$$
det(A-λE) = 0
$$
を満たすことです。
この\(λ\)の方程式を行列\(A\)の固有方程式と呼びます。

固有値・固有ベクトルは、
「ベクトルが回転せず、拡大・縮小のみで表現できる場合のベクトルの長さの比と長さの向き」
といえます。

・e.g. 以下の行列\(A\)の固有値と固有ベクトルを求めてみます。
$$
A
=
\begin{pmatrix}
2 & 4 \\
-1 & -3
\end{pmatrix}
$$
まず、固有方程式に行列\(A\)を代入して固有値λを求めます。
$$
\begin{eqnarray}
det\left(
\begin{pmatrix}
2 & 4 \\
-1 & -3
\end{pmatrix}

λ
\begin{pmatrix}
1 & 0 \\
0 & 1
\end{pmatrix}
\right)
& = &
0 \\
det
\begin{pmatrix}
2-λ & 4 \\
-1 & -3-λ
\end{pmatrix}
& = &
0 \\
(2-λ)(-3-λ)-4(-1) & = & 0 \\
λ^2+λ-2 & = & 0 \\
(λ+2)(λ-1) & = & 0
\end{eqnarray}
$$
ゆえに、行列\(A\)の固有値\(λ\)は、\(-2, 1\)となります。
次に、式に固有値\(λ\)を代入して、それぞれの固有値に対応する固有ベクトル\(x\)を求めます。

(ⅰ) \(λ=1\)に対応する固有ベクトル
$$
(A-(-2)E)x
=
\begin{pmatrix}
2-(-2) & 4 \\
-1 & -3-(-2)
\end{pmatrix}
x
=
\begin{pmatrix}
4 & 4 \\
-1 & -1
\end{pmatrix}
x
=
0
$$
の解となります。
ここで、\(x = \begin{pmatrix} α \\ β \end{pmatrix} \)と置き、\(\begin{pmatrix} 4 & 4 \\ -1 & -1 \end{pmatrix} \begin{pmatrix} α \\ β \end{pmatrix} = \begin{pmatrix} 0 \\ 0 \end{pmatrix} \)を解くと、
\(α + β = 0 \)が導出されます。
そこで、\(α=t, β=-t\)と置きます。
すると、\(x = \begin{pmatrix} 1 \\ -1 \end{pmatrix}t\)と表現できます。
すなわち、固有ベクトル\(x\)は\(\begin{pmatrix} 1 \\ -1 \end{pmatrix}\)の定数倍と求められます。

(ⅱ) \(λ=1\)に対応する固有ベクトル
$$
(A-E)x
=
\begin{pmatrix}
2-1 & 4 \\
-1 & -3-1
\end{pmatrix}
x
=
\begin{pmatrix}
1 & 4 \\
-1 & -4
\end{pmatrix}
x
=
0
$$
同様の手法が使えるので、固有ベクトル\(x\)は\(\begin{pmatrix} 4 \\ -1 \end{pmatrix}\)の定数倍と求められます。

固有値分解

固有値分解とは、正方行列を分解することです。
もっと言えば、
正方行列\(A\)を
・固有値を対角線上に並べた行列\(Λ\)
・固有ベクトルを並べた行列\(V\)
・\(V\)の逆行列\(V^{-1}\)
に分解することです。
固有値分解することで、行列の特徴が見やすくなります。
また、計算を楽にしたりコストを減らす等のメリットがあります。

数式では以下のように定義されます。
正方行列\(A\)が固有値\(λ\)、固有ベクトル\(\vec{ v }\)を持つとき、
$$
\begin{align}
A &=V\Lambda V^{-1} \\
\end{align}
\\
ただし、
\Lambda = \begin{pmatrix}
\lambda_1 & & \\
&\lambda_2 & \\
& & \ddots
\end{pmatrix}

V = \begin{pmatrix}
\vec{v_1} & \vec{v_2} & \cdots \\
\end{pmatrix}
$$
と変形することを固有値分解と呼びます。
\(A=V\Lambda V^{-1}\)は、正方行列 = 正則行列・対角行列・正則行列 の形をとります。

特異値分解

特異値分解とは、正方行列に対してのみ可能であった固有値分解を、長方形の行列に対して分解できる手法のことです。
$$
M\vec{v}=\sigma\vec{u} \\
M^{T}\vec{u}=\sigma\vec{v}
$$
このような単位ベクトル\(\vec{v}\)、\(\vec{u}\)がある場合に特異値分解できます。
その場合、次のように表します。
$$
M=USV^{T} \\
M^{T}=VS^{T}U^{T}
$$
\(U,V\)は直行行列\((A^T=A^{-1})\)を表します。
また、上記の式の積は次のようになります。
$$
MM^{T}=USV^{T}VS^{T}U^{T}=USS^{T}U^{T}
$$
長方行列\(MM^T=USV^TVS^TU^T=USS^TU^T\)
固有値分解と考え方は似ていて、長方行列\(MM^T\)の積は正方行列になります。
\(SS^T=I\)はΛで、直交行列である\(U^T\)は、\(U^T=U^{-1}\)となります。

確率・統計

ここから確率と統計についてまとめていきます。

確率計算の基本

まずは確率計算の基本について振り返ってみます。

確率の定義

(“の”のフォントがおかしいのはご容赦ください)
$$
確率 = \frac{ある事象が発生する場合の数}{起こり得る限りのすべての場合の数}
$$

組合せの公式

異なる\(n\)個から、重複なく\(k\)個を選び出す場合の数は、
$$
{}_n \mathrm{ C }_k
=
\frac{n \cdot ( n – 1 ) \cdots ( n – k + 1 )}
{1 \cdot 2 \cdots ( k – 1 ) \cdot k}
$$

余事象の公式

また、すべての場合の確率を合計すると100%になることを利用して、直接求めることが難しい確率を求めることができます。
事象\(A\)が起きない確率、事象\(A\)の余事象を使います。
公式は次に表します。

事象\(A\)が起きる確率が\(P\)のとき、事象\(A\)の余事象\(\overline{ A }\)の発生確率は、
$$
P(\overline{ A }) = 1 – P
$$

結合確率

結合確率とは、独立な事象\(A\)と事象\(B\)が同時に発生する確率のことです。
公式は、
$$
P(A \cap B) = P(A,B) = P(A)P(B)
$$

条件付き確率

条件付き確率は結合確率とは異なり、事象\(B\)を前提とした事象\(A\)の確率のことです。
公式は、
$$
P(A\mid{B}) = \frac{P(A\cap{B})}{P(B)}
$$

ベイズの定理

上の条件付き確率の式に乗法定理を代入することがベイズの定理です。
式は次の通り、
$$
P(A\mid{B})=\frac{P(A)P(B\mid{A})}{P(B)}
$$

確率変数と確率分布

ある変数\(X\)が確率\(P(X)\)で得られる場合、この\(X\)を確率変数と呼びます。
その確率変数には2種類あり、離散型確率変数と連続型確率変数があります。
離散型確率変数はサイコロの目や試行回数など、飛び飛びの値をとるものです。
連続型確率変数は身長や体重、経過時間など小数点以下まで値をとれるものです。

そして、確率変数によって変わる確率をすべての確率変数についてまとめたものを、確率分布と呼びます。
それぞれ離散型確率分布と連続型確率分布があります。

期待値

期待値とは、見込みの値のことです。
\(X\)が確率変数で、確率\(P(X)\)の事象を行うときに見込まれる値が期待値です。
定義は次のようにされます。
$$
E(X) = ΣP(X)X
$$

偏差

偏差とは、それぞれのデータの平均値からの差を表します。

分散

偏差を見ると、データのばらつきがわかりますが、偏差を合計すると0になってしまいます。
平均より小さいものはマイナスとなり大きいものはプラスとなるので当然です。
ばらつきの大きさを表現するために、偏差を2乗してから足し合わせ、平均をとったものが分散\(σ^2\)です。
式は次の通りです。
$$
\sigma^2=\frac{1}{n}\sum_{i=1}^n{(x_{i}-\mu)}^2
$$

共分散

2つのデータの傾向の違いを表します。
共分散が正の値をとれば似た傾向、負であれば逆を示します。
0であれば関係性に乏しいことがわかります。
$$
\sigma_{xy}=\frac{1}{n}\sum_{i=1}^n{(x_{i}-\bar{x})(y_{i}-\bar{y})}
$$

標準偏差

標準偏差は分散の2乗を外したものです。
分散はデータを2乗しているので単位がわかりにくいですが、元のデータと単位が揃うのでわかりやすいです。
$$
\sigma=\sqrt{\sigma^2}
$$

確率分布

確率分布については上述してありますが、ここでは分布の種類についてまとめます。
確率分布には主に次の4種類が挙げられます。

ベルヌーイ分布

コイントスをイメージするとわかりやすいです。
表か裏か、勝ちか負けかなど2種類の結果しか得られないような結果を、0と1で表した分布のことです。
$$
P(x\mid\mu)=\mu^x(1-\mu)^{1-x}
$$
このとき、
\(x\)は事象を表し、0か1の値をとります。
\(mu\)は事象の発生確率です。

マルチヌーイ分布(カテゴリ分布、カテゴリカル分布)

考え方はベルヌーイ分布と似ているが、複数の事象を表す確率分布です。

二項分布

ベルヌーイ試行をを\(n\)回行って、成功する回数\(x\)が従う確率分布を二項分布と呼びます。
$$
P(x\mid\lambda,n)=\frac{n!}{x!(n-x)!}\lambda^x(1-\lambda)^{n-x}
$$
\(λ\)はある事象\(x\)の発生確率を表しています。

正規分布(ガウス分布)

正規分布は様々な場面で活用される連続型確率分布です。多くの統計的手法において、データが正規分布に従うことを仮定します。
グラフで描画する際は、横軸は確率変数を、縦軸はそのときの確率密度を表します。
$$
N(x;\mu,\sigma^2)=\frac{1}{\sqrt{2\pi}\sigma}exp\left(-\frac{(x-\mu)^2}{2\sigma^2}\right)
$$

情報理論

自己情報量

事象\(x\)の発生確率\(P(x)\)の情報量を表します。
この発生確率が低いことがわかった時のほうが情報量が多くなります。
また、情報量は足し算式に増えていきます。
次のように表します。
$$
I(x)=-log(P(x))=log(W(x))
$$
また、対数の底が2のときは単位はビット(bit)で、ネイピアの\(e\)のときは単位はナット(nat)になります。

シャノンエントロピー

自己情報量の期待値を表します。
$$
H(x)=E(I(x))
$$
$$
H(x)=-E(log(P(x)))
$$
$$
H(x)=-\sum{(P(x)log(P(x)))}
$$

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

同じ事象・確率変数における、異なる確率分布\(P,Q\)の違いを表します。
違いは、確率分布の距離が遠いか近いか、のように表します。
$$
D_{KL}(P\parallel{Q})
=E_{x~P}\left[log\frac{P(x)}{Q(x)}\right]
=E_{x~P}[logP(x)-logQ(x)]
$$

交差エントロピー

カルバック・ライブラー ダイバージェンスの一部を取り出したものです。
\(Q\)についての自己情報量を\(P\)の分布で平均しています。
$$
H(P,Q)=H(P)+D_{KL}(P\parallel{Q})
$$

本記事はこれで終了です。
E資格の受験にあたって応用数学は得点源としなければならない項目なので、こういったインプットよりも問題集などでアウトプットしていけたらと思っています。