深度學(xué)習(xí)入門課程學(xué)習(xí)筆記05 最優(yōu)化
前向傳播之-***化
通過對之前課程的學(xué)習(xí),我們已經(jīng)能夠?qū)τ谝粋€輸入數(shù)據(jù)得出它的最終的一個LOSS值,那么下面就該咱們?nèi)绾稳フ业揭粋€***的參數(shù)矩陣,使得最終的LOSS值達(dá)到一個最小的范圍。這就引入了咱們的***化問題。下面咱們通過幾種解決方案來詳細(xì)討論如何處理這個***化的問題
首先咱們就算不經(jīng)過大腦思考也能得出一種方法,我把它叫做一個簡單粗暴的想法就是咱們隨機(jī)的去找一組組的權(quán)重參數(shù)矩陣W,每一次咱們都通過整個計算流程得出這組權(quán)重計算出它的一個LOSS值,就像上面的代碼的流程一樣,***對比找到一組還算湊合的權(quán)重參數(shù)。這個方法咋樣呢?很蠢是吧,但是也是一種辦法。下面咱們就該進(jìn)入思考就行改進(jìn)了!
我在這里先給大家做一個比較形象的比喻,為了尋找***的W參數(shù)矩陣,咱們就像蒙著眼鏡在一個山坡上尋找山坡的***點一樣,這個山坡咱們可以把它當(dāng)成LOSS值的山峰,咱們的目的就是能夠找到一個山峰的***點也就是LOSS值最小的那個點。那么咱們該怎么走才能使得咱們朝著一個LOSS值下降的方向呢?我們可以想象一下,咱們要找到山坡的***點需要一個方向,也就是說咱們首先需要得出一個明確的方向,這個方向能夠使得咱們朝著山坡下面走去尋找***點。那么咱們該如何得出這個方向呢?
這就是咱們這節(jié)課的核心也就是***化問題的解法,跟隨梯度去尋找山坡的***點。梯度也就是山坡的一個最陡峭的方向,我們沿著這個最陡峭的方向可以最快的走到山坡的***點,這里就引入了咱們這個梯度下降的問題,什么叫梯度下降呢?它的意思簡單的說就是咱們不是已經(jīng)找到最陡峭的方向了嘛,那么咱們就沿著梯度的反方向去走,這就是梯度下降的直觀表達(dá)。之所以要反向就是由于咱們的梯度方向是使得LOSS值增加幅度***的方向,所以咱們?yōu)榱薒OSS能減少就要朝著梯度下降的方向去尋找最小點。
咱們接下來要講的就是這個學(xué)習(xí)率了,咱們現(xiàn)在已經(jīng)找到了一個要往下走的方向了,就差一個走的距離了。學(xué)習(xí)率就是咱們一次沿著這個梯度下降的方向走多遠(yuǎn),這個學(xué)習(xí)率可以說對于咱們整個***化問題起著決定性的作用,因為如果學(xué)習(xí)率太大我們有可能有跳過***點而學(xué)習(xí)率太小又會使得咱們整個網(wǎng)絡(luò)收斂的太慢。所以設(shè)置學(xué)習(xí)率還是很有學(xué)問的,這里咱們這是引入這個知識點,在之后的神經(jīng)網(wǎng)絡(luò)中咱們會再詳細(xì)討論學(xué)習(xí)率這個問題的!
【本文是51CTO專欄作者唐宇迪的原創(chuàng)稿件,轉(zhuǎn)載請注明出處】