轉:爲什麼梯度反方向是函數值降低最快的方向 轉自:爲什麼梯度反方向是函數值降低最快的方向

轉自:爲什麼梯度反方向是函數值降低最快的方向

剛接觸梯度降低這個概念的時候,是在學習機器學習算法的時候,不少訓練算法用的就是梯度降低,而後資料和老師們也說朝着梯度的反方向變更,函數值降低最快,可是究其緣由的時候,不少人都表達不清楚。因此我整理出本身的理解,從方向導數這個角度把這個結論證實出來,讓咱們知其然也知其因此然~html

下面我一開始不提梯度的概念,徹底根據本身的理解進行下文的梳理,一步一步推出梯度的來歷:算法

  • 導數

導數的幾何意義可能不少人都比較熟悉: 當函數定義域和取值都在實數域中的時候,導數能夠表示函數曲線上的切線斜率。 除了切線的斜率,導數還表示函數在該點的變化率數據結構

 

將上面的公式轉化爲下面圖像爲:機器學習

 

(來自維基百科)函數

直白的來講,導數表明了在自變量變化趨於無窮小的時候,函數值的變化與自變量變化的比值表明了導數,幾何意義有該點的切線。物理意義有該時刻的(瞬時)變化率...post

注意在一元函數中,只有一個自變量變更,也就是說只存在一個方向的變化率,這也就是爲何一元函數沒有偏導數的緣由。學習

  • 偏導數

既然談到偏導數,那就至少涉及到兩個自變量,以兩個自變量爲例,z=f(x,y) . 從導數到偏導數,也就是從曲線來到了曲面. 曲線上的一點,其切線只有一條。可是曲面的一點,切線有無數條。

而咱們所說的偏導數就是指的是多元函數沿座標軸的變化率.url

指的是函數在y方向不變,函數值沿着x軸方向的變化率.net

指的是函數在x方向不變,函數值沿着y軸方向的變化率htm

對應的圖像形象表達以下:


那麼偏導數對應的幾何意義是是什麼呢?

  • 偏導數就是曲面被平面y=y0所截得的曲面在點M0處的切線對x軸的斜率

  • 偏導數就是曲面被平面x=x0所截得的曲面在點M0處的切線對y軸的斜率

可能到這裏,讀者就已經發現偏導數的侷限性了,原來咱們學到的偏導數指的是多元函數沿座標軸的變化率,可是咱們每每不少時候要考慮多元函數沿任意方向的變化率,那麼就引出了方向導數.


  • 方向導數

終於引出咱們的重頭戲了,方向導數,下面咱們慢慢來走進它

假設你站在山坡上,相知道山坡的坡度(傾斜度)

山坡圖以下:

 

假設山坡表示爲,你應該已經會作主要倆個方向的斜率.

y方向的斜率能夠對y偏微分獲得.

一樣的,x方向的斜率也能夠對x偏微分獲得

那麼咱們可使用這倆個偏微分來求出任何方向的斜率(相似於一個平面的全部向量能夠用倆個基向量來表示同樣)

如今咱們有這個需求,想求出方向的斜率怎麼辦.假設爲一個曲面,爲f定義域中一個點,單位向量的斜率,其中是此向量與x軸正向夾角.單位向量能夠表示對任何方向導數的方向.以下圖:



那麼咱們來考慮如何求出方向的斜率,能夠類比於前面導數定義,得出以下:

爲一個二元函數,爲一個單位向量,若是下列的極限值存在

此方向導數記爲

則稱這個極限值是f沿着方向的方向導數,那麼隨着的不一樣,咱們能夠求出任意方向的方向導數.這也代表了方向導數的用處,是爲了給咱們考慮函數對任意方向的變化率.


在求方向導數的時候,除了用上面的定義法求以外,咱們還能夠用偏微分來簡化咱們的計算.

表達式是(至於爲何成立,不少資料有,不是這裏討論的重點)

那麼一個平面上無數個方向,函數沿哪一個方向變化率最大呢?

目前我無論梯度的事,我先把表達式寫出來:

那麼咱們能夠獲得:

(a爲向量A與向量I之間的夾角)

那麼此時若是要取得最大值,也就是當a爲0度的時候,也就是向量I(這個方向是一直在變,在尋找一個函數變化最快的方向)與向量A(這個方向當點固定下來的時候,它就是固定的)平行的時候,方向導數最大.方向導數最大,也就是單位步伐,函數值朝這個反向變化最快.

好了,如今咱們已經找到函數值降低最快的方向了,這個方向就是和A向量相同的方向.那麼此時我把A向量命名爲梯度(當一個點肯定後,梯度方向是肯定的),也就是說明了爲何梯度方向是函數變化率最大的方向了!!!(由於原本就是把這個函數變化最大的方向命名爲梯度)


個人理解是,原本梯度就不是橫空出世的,當咱們有了這個需求(要求一個方向,此方向函數值變化最大),獲得了一個方向,而後這個方向有了意義,咱們給了它一個名稱,叫作梯度(純我的理解~但願對你們理解有幫助)歡迎知友提出問題交流~

相關文章
相關標籤/搜索