yoshizaki

記者紹介

吉崎 亮介

株式会社Carat 最高執行責任者 舞鶴高専専攻科、京都大学大学院 情報学研究科修了。CEDEC2016登壇。学生時代に3つの研究室を渡り歩き、画像処理、音声解析、制御工学、ロボット工学、進化型計算、機械学習を専攻。応用事例を踏まえ、機械学習とその魅力を配信します。

math_business-merit-3_01

機械学習を学ぶとビジネスにとって多くのメリットがあることを、以前の記事で紹介しました。

単純に機械学習の使い方であれば、数学プログラミングをあまり深く学ばずに使うこともできます。

しかし、機械学習を使用したプロジェクトを推進する際は、その機械学習の応用が必要となります。
そして、応用をする上で基礎は欠かせません。

機械学習の基礎はもちろん数学です。

しかし、機械学習の数学は理系大学生のさらに延長線上に位置する学問であり、機械学習初心者にとって容易であるとは言えません。

『実は意外と簡単?』機械学習の数学

機械学習の数学は、そこまで難しくはありません。
むしろ、他の学問で使用される数学より比較的直感的で理解しやすい方なのです。
もちろん、数学は高校までしか勉強していないよといった文系の方にとっても同じです。

今回は、『機械学習の数学が初心者にも学びやすい3つの理由』を紹介します。

1.ゴールと数式が直感的に結びついている

人材ビジネスを例にとって考えてみましょう。
『今年の目標採用コストをなるべく抑えたい』というお題がよくあると思います。
機械学習では、こういった問題を非常に直感的に扱うことができ、以下のような関数の最小化問題を設定します。
$$
\min_{x} \ f({x})
$$
コストを表現する関数 f(x) を、操作できる変数 x で最小化するという意味です。
こういったコストなどゴールとして設定する関数を目的関数といいます。

細かいことは置いておき、まず第一印象として非常に直感的ではないでしょうか。
こういう直感的なところは、ビジネスで議論する際に非常に便利だったりします。

2.数式がシンプル

機械学習で使用する数学は線形代数がベースとなっており、数式を非常にシンプルに表現できます。
実は、中学校のときに習う
$$
y=ax+b
$$
がベースになっています(懐かしい人がたくさんおられるのではないでしょうか)。

この数式を多次元に拡張して考えるため、
$$
y = \boldsymbol{a}^{T}\boldsymbol{x} + b
$$
で表されます。
この程度の数式であれば、数学アレルギーの人も大丈夫ではないでしょうか。

※ 太文字の変数はベクトルと言って、複数の変数をひとまとめにしたものです。
$$
\boldsymbol{x} =
\begin{bmatrix}
x_{1} \ x_{2} \ \cdots \ x_{N}
\end{bmatrix}^{T}
$$
上についている T のマークなどは、一旦ここでの解説は省略し、また深くお話できる際に紹介します。

3.式変形がシンプル

式変形は、高校の数学で習った微分が基礎になります。
微分と言っても一番最初に習う微分だけで大丈夫です。

$$(1)’ = 0, \ (x)’ = 1, \ (x^{2})’ = 2x$$

このあたりであれば、懐かしいなと思える人が多いのではないでしょうか。

機械学習で実際によく使う微分を見てましょう。

$$
\frac{\partial}{\partial \boldsymbol{x}} \left( {\boldsymbol{x}}^{T} \boldsymbol{A} \boldsymbol{x} \right) = 2 \boldsymbol{A} \boldsymbol{x}
$$

細かいことをおいておき、こちらの式変形も非常に直感的ではないでしょうか。

まとめ

『機械学習の数学が初心者にも学びやすい3つの理由』
1.ゴールと数式が直感的に結びついている
2.数式がシンプル
3.式変形がシンプル

実は意外と難しくない機械学習。
ビジネスをスケールさせるためにも、しっかりと学んでみてください。