そこらの教師より数学ができる自信があります、はじめまして、新卒です。
今回は機械学習に必要とされる、極大・極小について簡単に説明します。
そもそもなぜ機械学習に極大・極小が必要かというと、最適化を行う際に必要であるためです。
(私が作成中のwebアプリには必要ないかもしれない…)
数学的な記事ですので、技術的な要素はありません。
極大・極小とは、といった基礎中の基礎について書かれているため、数学と仲の悪い?文系向けです。
極大・極小とは
極大 : 連続的な関数で、近傍では最大であること。
極小 : 連続的な関数で、近傍では最小であること。
この説明では、あまりにも抽象的でイメージが湧かないので、図を用いて説明します。
↓のグラフの赤い点がそれぞれ極大、極小です。
↓のグラフでは、極大は存在しますが、極小は存在しません。
逆にこのグラフでは極小は存在しますが、極大は存在しません。
つまり、
水を入れたら溜まりそうなところが極小で、
ひっくり返すと水が溜まりそうなところが極大です。
また、極大・極小を取るときの値を極大値・極小値といい、これらのことを極値といいます。
グラグによっては極大、極小のどちらも存在しないこともありますし、複数存在することもあります。
問題を解いてみよう
今回は例題として、
の極値を求めます。
このタイプの問題を解く手順は以下の通りです。
- 数式を微分する。
- 微分した数式を因数分解する。
- y’=0になるxの値を見つける。(y’はyを微分したもの)
- y, y’, 3で見つけたxの値を元に増減表を書く。
それでは1から順にやっていきます。
- 数式を微分する。
元の式
を微分すると
このようになります。
- 微分した数式を因数分解する。
2の式を因数分解すると、以下のようにになります。
- y’=0になるxの値を見つける。(y’はyを微分したもの)
2より、x=2, 2/3のときy’は0になることが分かります。
- y, y’, 3で見つけたxの値を元に増減表を書く。
増減表とは傾き(y’)からyの増加及び減少を示した表のことです。
書き方は以下の通りです。
y, y’をそれぞれf(x), f'(x)とし、下図のように書く。
3で求めたxの値を書き入れる。
xが2/3より小さい値、xが2/3より大きく2より小さい値、xが2より大きい値を適当に考える。今回はそれぞれ、0, 1, 3とする。
f(x)とf'(x)にx=0を代入する。
f(0) = 5, f'(0) = 4である。
どちらも正であるため、下表のように左の列に+と矢印を書き入れる。
これを、x = 1, x = 3でも行う。
f(2/3)と、f(2)をそれぞれ計算する。
f(x)が、上がってから下がっているところが極大、下がってから上がっているところが極小です。
これより、この問題の答えは以下の通りです。
x=2/3のとき極大値167/27、x=2のとき極小値5を取る。
まとめ
今回は数学の極大・極小についての記事でした。
気が付いた方もいると思いますが、極大・極小を求めるにあたり、グラフを書く必要はありません。
また細かい定義の話はしていませんので、気になる方は色々調べてみてください。
(答えに167/27という汚い分数が出てきてしまったのは雑に問題を作ったからということは内緒です。)
~数学豆知識~
素数の中で偶数は1つしかない。