2013-04-13 39 views

回答

3

漸變下降是一種用於查找某個多維函數的最小/最大值的方法。爲了簡單起見,想象一下尋找山頂的高峯。在這種情況下,我們正在尋找3維(經度,緯度,高度)的最大值(海拔)。函數是山的表面,有兩個輸入(經度,緯度)和一個輸出(海拔)。在當前位置

  1. 制定出各方向的斜坡
  2. 移動在最陡的正傾斜的方向小的距離:

    如果你不得不使用梯度下降,你可以這樣做

  3. 如果達到收斂,則停止。否則,請返回步驟1.

收斂意味着如果繼續,結果不會發生顯着變化。上述說明概括爲任意數量的維度。

要實現任何語言的漸變下降,請設置一個循環,然後執行上述步驟。無論您使用哪種語言,都是一樣的。這裏有一個很好的關於梯度下降的視頻,它帶有一些僞代碼(與Python不同):http://youtu.be/5u4G23_OohI?t=26m34s