そもそも機械学習における学習とはなんなのか?
を少し考えてみましょう。まずはデータの形から![](https://research.miidas.jp/wp-content/uploads/2018/10/Screen-Shot-2019-02-06-at-20.52.33.png)
![Rendered by QuickLaTeX.com X](https://research.miidas.jp/wp-content/ql-cache/quicklatex.com-d4ee28752517d6062a3ca0314890342d_l3.png)
![](https://research.miidas.jp/wp-content/uploads/2018/10/Screen-Shot-2019-02-06-at-21.12.01.png)
![](https://research.miidas.jp/wp-content/uploads/2018/10/Screen-Shot-2019-02-06-at-21.26.09.png)
![Rendered by QuickLaTeX.com f](https://research.miidas.jp/wp-content/ql-cache/quicklatex.com-9c09a708375fde2676da319bcdfe8b24_l3.png)
![](https://research.miidas.jp/wp-content/uploads/2018/10/Screen-Shot-2019-02-06-at-21.46.38.png)
![Rendered by QuickLaTeX.com x_2](https://research.miidas.jp/wp-content/ql-cache/quicklatex.com-f1cd6be340b4fce14489cf5b565a169e_l3.png)
![](https://research.miidas.jp/wp-content/uploads/2018/10/Screen-Shot-2019-02-06-at-21.39.39.png)
誤差が最小になるようにすることが学習です
ここまではとても直感的な説明でした、では最後の赤文字について話していきます。mean squared error
聞いたことありませんか?機械学習をちょっとでもしてる人なら初見ではないと思います。(ちなみに上の赤字の部分をerrorとよく言います。)数式だと次のような形です。
![Rendered by QuickLaTeX.com \hat{y}_i](https://research.miidas.jp/wp-content/ql-cache/quicklatex.com-365557f5f12703d4de96202aa97b83e8_l3.png)
![Rendered by QuickLaTeX.com y_i](https://research.miidas.jp/wp-content/ql-cache/quicklatex.com-bb3c186e5c65fcd066bb23dec8f4e48a_l3.png)
![Rendered by QuickLaTeX.com \hat{y}](https://research.miidas.jp/wp-content/ql-cache/quicklatex.com-ddbbb251a1eac6ff930e639227a7e32d_l3.png)
-
損失関数 (loss function)
![Rendered by QuickLaTeX.com (x_i)](https://research.miidas.jp/wp-content/ql-cache/quicklatex.com-b33f5ea636c418efa94ceb4580e3c574_l3.png)
![Rendered by QuickLaTeX.com (f(x_i | \theta))](https://research.miidas.jp/wp-content/ql-cache/quicklatex.com-195df935c0503dbd34f1b93ee7598788_l3.png)
![Rendered by QuickLaTeX.com (y_i)](https://research.miidas.jp/wp-content/ql-cache/quicklatex.com-8482a9afe8193935936d62ba0ad2fc57_l3.png)
- square loss :
(よく見かける)
- hinge loss :
(SVMで見かける)
-
コスト関数 (cost function)
- Mean Squared Error :
-
目的関数 (Objective function)
- Divergence (KLとか)
![](https://research.miidas.jp/wp-content/uploads/2018/10/Screen-Shot-2019-02-07-at-14.49.45.png)
学習についてもう少し踏み込みましょう
機械学習における学習はなんなんでしょうね。前述の例だと「学習する」 「平均二乗誤差を最小化する」
パラメータって何?
これはモデルを定義する時に使われます。例えば![Rendered by QuickLaTeX.com f(x,y) = ax+y](https://research.miidas.jp/wp-content/ql-cache/quicklatex.com-134c8e7ecbc969bb5da0ae89121f284f_l3.png)
![Rendered by QuickLaTeX.com a](https://research.miidas.jp/wp-content/ql-cache/quicklatex.com-5c53d6ebabdbcfa4e107550ea60b1b19_l3.png)
![](https://research.miidas.jp/wp-content/uploads/2018/10/Screen-Shot-2019-02-15-at-14.43.45.png)
目的関数が最小/最大になる時の解を見つけること
が学習になります。しかし、図を見てみると「local minimum (局所的最適解)」「global minimum (大域的最適解)」が混在していますね。青丸を変数の初期値としましょう。(学習を「どこ・なに」から始めるかを初期値という)そして学習(ただ下に向かうだけ)をさせると明らかに初期値によって異なるminimumに到達しますよね。これは機械学習における問題の一つなんです。僕も解決策は知りません。しかし、もし目的関数がお椀のような形をしていればどこからスタートしてもglobal minimumに行きますよね。そんな都合のいい目的関数の性質は「凸関数 (convex)」であることです。 関数![Rendered by QuickLaTeX.com g: \mathbb{R}^n \rightarrow \mathbb{R}](https://research.miidas.jp/wp-content/ql-cache/quicklatex.com-4e85c1e72d1bd5ab93af86eebe477a20_l3.png)
![Rendered by QuickLaTeX.com \forall x,y \in \mathbb{R}^n , \lambda \in [0,1]](https://research.miidas.jp/wp-content/ql-cache/quicklatex.com-8f11ef1f9d3ea36ad2049729c8b69017_l3.png)
![Rendered by QuickLaTeX.com \forall](https://research.miidas.jp/wp-content/ql-cache/quicklatex.com-e8b7c82b6046e51a59beeb9110899984_l3.png)
![](https://research.miidas.jp/wp-content/uploads/2018/10/GNBZ4.png)
- https://qiita.com/koshian2/items/90ac367089b5617519b2
- https://qiita.com/hiyoko9t/items/6742e7dc121cf4cbef09
- https://www.hellocybernetics.tech/entry/2017/01/16/011113#最適化問題の簡単な例
![](https://research.miidas.jp/wp-content/uploads/2018/10/Screen-Shot-2019-02-07-at-15.22.07.png)