Pro Yearly is on sale from $80 to $50! »

勾配降下法/machine-learning-lecture-gradient-descent

 勾配降下法/machine-learning-lecture-gradient-descent

GMOペパボ新卒研修2020 機械学習入門 補足資料#02

Cd3d2cb2dadf5488935fe0ddaea7938a?s=128

monochromegane

July 14, 2020
Tweet

Transcript

  1. 1 勾配降下法
 ペパボ研究所 三宅悠介
 新卒研修 機械学習入門 補足資料#02
 (2020/07/02 Update)


  2. 2 2 はじめに
 やりたいことと、やりたくないこと


  3. 3 入力から出力を推測したい
 やりたいこと 3

  4. 4 入力から出力を推測したい
 やりたいこと 4 入力から出力を予測 する関数を考える


  5. 5 入力から出力を推測したい
 やりたいこと 5 切片w0と傾きw1を持 つ一次関数で表す


  6. 6 入力から出力を予測したい
 やりたくないこと 6 ② w0とw1を発見させるプロ グラムを書く
 ① w0とw1を自分で決める


  7. 7 入力から出力を予測したい
 やりたくないこと 7 ② w0とw1を発見させるプロ グラムを書く
 ① w0とw1を自分で決める
 ❌


  8. 8 8 誤差関数
 機械が学習するとは?
 


  9. 9 やりたいことの更新 9 適切なw0とw1を発見したい
 パラメータを探す


  10. 10 データ空間とパラメータ空間 10 データ空間
 パラメータ空間


  11. 11 データ空間とパラメータ空間の関係 11

  12. 12 データ空間とパラメータ空間の関係 12 パラメータは固定
 データは固定


  13. 13 パラメータ探索における目標地点を定義する 13 あるパラメータを用いた時の正 解と推定した値の差の合計が 最も小さくなる点
 誤差関数


  14. 14 (*) w0とw1について0~3の範囲をそれ ぞれ100分割した組み合わせ
 全ての組み合わせ*を試して探 してみる
 パラメータ探索における目標地点を発見する 14

  15. 15 パラメータ探索における目標地点を発見する 15

  16. 16 より精度良く効率の良い方法はないか?
 - 交点数 * データ数 * パラメータ数
 - 範囲は未知


    - 分割数は未知
 パラメータ探索における目標地点を発見する 16 全ての組み合わせ*を試して探 してみる

  17. 17 17 勾配
 ナブラ!
 


  18. 18 点では方向はわからないが、連続する ならば周辺との変化率から判断できる
 勾配降下法の着目点 18 誤差が小さくなる方向へ パラメータを調整する
 誤差関数の微分係数


  19. 19 微分係数
 - 関数fの点aにおける平均変化率
 - 導関数から求める
 
 導関数
 - 関数fの変数xにおける微分係数を

    求めるための関数
 - 関数fを微分して求める
 微分のおさらい(微分係数と導関数) 19 微分係数の値は、関数fの結果を大きくす る方向と大きさを示す

  20. 20 勾配の可視化 20 誤差関数の微分係数をい くつかの点で求めてみる


  21. 21 勾配の可視化 21 誤差関数の微分係数をい くつかの点で求めてみる
 パラメータが複数ある場合は、一つの パラメータ以外は固定して微分係数を 求める。w0の軸での方向、w1の軸での 方向をそれぞれ見つける。
 偏微分


  22. 22 勾配の可視化 22 誤差関数の微分係数をい くつかの点で求めてみる
 パラメータごとに偏微分した結果。
 勾配


  23. 23 勾配の可視化 23 誤差関数の微分係数をい くつかの点で求めてみる
 パラメータごとに偏微分した結果。
 勾配


  24. 24 24 勾配降下法
 勾配の逆


  25. 25 f(g(x))のような合成関数の微分はそれ ぞれの関数の微分の積と等しい。
 簡単な微分に分解することで、難しい微 分も解くことができる。
 今回の誤差関数の勾配を求める 25 合成関数の微分
 パラメータごとの偏微分


  26. 26 今回の誤差関数の勾配を求める 26 合成関数の微分
 パラメータごとの偏微分
 L(w)はfwからなり、fw(x)はwxからなる合成関数


  27. 27 今回の誤差関数の勾配を求める 27 パラメータごとの偏微分


  28. 28 勾配降下法 28 パラメータの更新
 誤差関数の勾配


  29. 29 29 まとめ


  30. 30 • 入力から出力を推測する関数のパラメータを求める手法を学んだ ◦ 目標を誤差関数として定義した ◦ 最小の誤差関数の値を効率的に求めるため勾配を理解した ◦ 勾配を利用した勾配降下法によるパラメータの更新を学んだ •

    誤差や勾配は学習データを全て用いて求めるため効率が悪い ◦ 最急降下法と呼ばれる ◦ ランダムな100~1000程度のデータを利用するミニバッチ勾配降下 法が良く利用される ◦ 特に1つだけのデータを利用する場合、確率的勾配降下法と呼ば れる まとめ 30
  31. 31 31 参考


  32. 32 参考文献 32 本資料における勾配降下法の導出は以下の文献を参考にしました。 
 より詳細、発展的な説明が必要であれば、精読し、理解を深めてみてください。 
 
 - LINE

    Fukuoka株式会社 立石 賢吾, やさしく学ぶ 機械学習を理解するための数 学のきほん ~アヤノ&ミオと一緒に学ぶ 機械学習の理論と数学、実装まで~, マイ ナビ出版, 2017年09月20日. ISBN:978-4-8399-6352-1
 - 三宅 悠介, Goによる勾配降下法 - 理論と実践 - , プログラマのための数学勉強 会@福岡 #5, 2016年8月