背景
ひょんなことから最適化数学を勉強して、それを記事にする必要が発生。
機械学習のために役立つ最適化数学
という位置づけでの記事作成が必要なのです。
なので、最適化数学がどのような形で機械学習に役立つのかを調べてみた。
最適化数学とは?
最適化数学
とは、最適化問題
を解くための数学
です。
読んでそのままなので引き続き説明が以下に続きます。
最適化問題とは?
例えば以下のような問題と向き合ってみましょう。
-
焼肉
は2000円/人前、チキン南蛮
は600円/人前、フライドポテト
は350円/人前 -
焼肉
は1200kcal/人前、チキン南蛮
は1000kcal/人前、フライドポテト
は850kcal/人前 -
焼肉
を食べるのに7分/人前、チキン南蛮
を食べるのに10分/人前、フライドポテト
を食べるのに15分/人前 - 予算は1万円
- 食事に使える時間は60分
- 食べていない時間はとんでもない皿洗いさせられるので100kal/分消費してしまう
この条件下で、もっともカロリーを摂取するにはどうすればよいでしょうか。
このようなある条件下
で何かを最大化
させたり最小化
させたりする問題が最適化問題
です。
機械学習での最小化
例えば駅からの距離
、部屋の広さ
、築年数
から家賃
を予測する機械学習を実装する流れは、
- 大量の
駅からの距離
、部屋の広さ
、築年数
、家賃
のデータを集める - 大量のデータから、法則(
家賃
の計算式)を導く
です。
しかしながら、導かれる計算式の結果
と家賃
には差
が存在します。
(すべて計算式で1円たりとも違わずに表現できるはずがない)
この差
が小さくなるように、計算式を考えていくことが機械学習の研究者たちのやるべきことでもあるのです。
最適化数学と機械学習の共通点
つまり、機械学習
で差を最小化させたい
とき最適化数学
を使えるという事なのです。
これが最適化数学が機械学習に役立つ理由
です。
では、頑張って最適化数学
勉強していきます!