直觀理解深度學習基本概念 | 小白入門深度學習

  • 2019 年 10 月 7 日
  • 筆記

想入門深度學習嗎?從最基本的概念理解開始吧!

深度學習基本理念

深度學習的基本理念是:通過數學的方法,在不知道某個函數的原理的情況下,通過已知的x和y反向構建出這個函數。

類似你小時候買小浣熊乾脆面及水滸人物卡,你在A小賣店總是買不到林沖但能買到宋江,B小賣店買不到宋江但能買到林沖,所以你估計出AB兩小賣店上貨渠道不同,但你並不知道他們具體怎麼上貨在哪上貨的。

Cost函數

Cost,中文翻譯為花費/消耗的意思,就是使用神經網路模擬出來的函數和真正的結果的差。

我們當然希望這個差越小越好,這個cost函數就作為調試參數的終極標準。所有的努力都是讓cost函數最小。

梯度下降

二次函數y=x^2你知道他長什麼樣,那如果你想求這個函數最小值,你就沿著曲線往斜率越來越接近0的地方找,肯定能找到最小值。

但cost函數在高維空間,他長什麼樣咱們不知道也想像不出來,因為我們沒有高維空間的生活經驗。

在高維空間找cost函數最小值這件事,有點像在夜晚在伸手不見五指的大草原上找寶藏,你知道的唯一線索是寶藏藏在草原上的最低點。

你手上又沒有電子地圖,又沒有照明設備看不清前方地形起伏,你怎麼辦?你只能一步一步、深一腳淺一腳的摸索,感覺這一腳踩在比上一腳低的地方,說明地勢正在往低走,這樣一步步到達最低點。

那你每走一步怎麼判斷選哪個方向?很簡單,你知道你當前站的這個地方地勢走向,你就沿著當前地點往低的地勢走,即你在當前位置對w和b求偏導。

學習率

就是你在找寶藏的時候一步邁多遠。

想像一下你身高10米,一步干出去5,6米,你這個步長很可能一步就錯過最低點了。

而如果你步長太小,一次蹭一分米,估計草都禿了你也到不了目的地。所以要選取適當的學習率。

學習率衰減

這個更直觀了,就是讓學習率隨著訓練而慢慢變小。

因為可能越接近寶藏地點,那裡的地勢越是一個深坑,搞不好你一步就給邁過去了,這樣永遠發現不了,所以一開始大步流星,但後來就要一點一點蹭。

優化演算法

優化演算法有很多,比如Momemtum,RSProp,Adam等。這些演算法都是為了幫助你更快的訓練,即更快的到達函數最低點。

在實際訓練過程中,你接近最低點的軌跡可能是非常雜亂無規律的,而不是一條平滑的快速接近最低點的曲線。

原因在於你每次都是在一個點上取最優的梯度,而忽略了大方向。

這些演算法的思路很簡單,就是對你之前走過的所有方向都取一個指數加權平均,告訴你別毛毛躁躁亂竄,而是決定走下一步時,要同時參考以前的方向,這樣更可能平滑快速的接近目的地。