機械学習の原理を学ぶ上でつまづきやすい数学上の留意点まとめ
覚書であり正確さを保証するものではありません。各項目で概要と出典を記載しています。およそ見知らぬ数学の大半はEMANの物理学様と高校数学の美しい物語様で解決します。
書きかけの項目は随時更新いたします。
線形代数
大規模計算やらベクトル計算やらに応用される。定義から順序良くたどると行列もろもろの見通しが格段にいいと思っているため細かめに記載。
集合
「何かを集めたもの」はすべて集合である。線形代数はもちろんのこと、確率・統計においても集合の理解が非常に重要となる。
集合に属するひとつひとつの要素を「元」と呼ぶ。
また、ある集合 $A$ に属する元だけで集合 $B$ を構成したとき、$B$ を $A$ の部分集合と呼ぶ。
$$ B \subset A $$
「集合」出典: フリー百科事典『ウィキペディア(Wikipedia)』
補足:開区間、閉区間
ある区間の数を元とする集合があるとき、端っこの数字を含むか含まないかを閉区間および開区間を使って表現する。
- 開区間とは、「$a$ より大きく $b$ より小さい数全体の集合」のこと
$$(a,b)$$ - 閉区間とは,「$a$ 以上 $b$ 以下の数全体の集合」のこと
$$[a,b]$$
つまり開区間 $(a,b)$ は値 $a$ を元に持たないが、閉区間 $[a,b]$ は $a$ を元に持つ。
片側開区間で片側閉区間として $(a,b]$ みたいな書き方をすることもある。$a$ は含まないが $b$ は含む区間である。一瞬誤植に見える。
写像
「ある集合 $A$ の元を別の集合 $B$ の元に対応させる規則」を写像と呼ぶ。写像 $f$ が $A$ から $B$ に元を写すとき、$f:A \longrightarrow B$ みたいな表記をする。$A$ と $B$ は同じ集合でも包含関係でも良い。同一の集合のとき変換とも呼ぶ。
関数や微分や畳み込みや何やらはすべて写像である。特に合成写像や全射・単射などの概念は理解しておくと便利である。
同型写像やカーネルも重要な概念ではあるが必要になってからでよい。
ベクトル空間(線形空間、線型空間)
ベクトル空間を理解する前にまず「体」と呼ばれる集合を理解しなければならない。それにベクトル空間の定義はどこを見ても同様な難解さかもしれない。
厳密性をあえて排除して説明する。ベクトル空間とは、そこに属する元(ベクトル)同士で足し算したものが同一空間内の別の元(ベクトル)となり、元(ベクトル)に数字を掛け算して伸ばしたり縮めたりできる集合である。「元同士で足し算したものが同一空間内の別の元となる」とき、空間内で足し算を定義できる、演算が閉じていると表現することがある。
また、足しても変化を及ぼさない元(ゼロベクトル)の存在と、任意の元に対する逆元の存在(ベクトル $A$ に対する $-A$ のこと)、それといくつかの足し算のルールを含めてベクトル空間が定義される。
「長さ」を定義できずともベクトル空間の定義を満たす。内積や外積も必要ではない。定義が抽象的なので、思いもよらないものがベクトルとして扱える。例えば適切に定義された空間において適当な関数がベクトル空間を張ることがある。三角関数や指数関数がベクトルとして扱われることは多い。
馴染みがなければ難解なので理解を後回しても良いが、ディープラーニングは線形写像と非線形写像を繰り返すことで任意の関数を近似することが根幹なので、線形とは何なのか時間をかけて学ぶことに損はないと思う。
-
補足:体の定義