方向導數和梯度

之前用過幾次梯度下降算法來求解一些優化問題,但對梯度的具體意義並不是很理解。前一段時間翻了一遍高教的《簡明微積分》,對梯度概念總算有了些理解,在這記錄一下。

推薦下《簡明微積分》這本書,我向來對帶有“簡明”二字的書抱有極大的好感。偶然的機會在豆瓣上看到有人推薦這本書,作者是龔升先生。龔升先生是中國科技大學教授,師從華羅庚。我個人覺得這本書是我讀過的最好的國內的數學教材,結構條理,不拖沓但重點突出,適合快速的回顧微積分課程。

  • 爲什麼會有方向導數?

在微積分課程中,我們知道函數在某一點的導數(微商)代表了函數在該點的變化率。微分和積分,它們的定義都是建立在極限的基礎上。對於單變量函數f(x),它在x0處導數是:當x趨近於x0時,函數的改變量與自變量的改變量的比值的極限,即微商(導數)等於差商的極限

f(x0)=limΔx0f(x0+Δx)f(x0)Δx
對於單變量函數,自變量只有一個,當x趨近於x0時只能在直線上變動,移動的方向只有左右兩方。

然而,對於多變量函數,自變量有多個,表示自變量的點在一個區域內變動,不僅可以移動距離,而且可以按任意的方向來移動同一段距離。因此,函數的變化不僅與移動的距離有關,而且與移動的方向有關。因此,函數的變化率是與方向有關的。這也纔有了方向導數的定義,即某一點在某一趨近方向上的導數值。假設給定函數u=u(M),取一點M0=(x0,y0,z0),L是由M0出發的任一半直線,則u在M0點L的方向導數定義爲

(uL)M0=limMM0MLu(M)u(M0)|MM0|
  • 梯度

上面有了方向導數的定義,我們進一步來推導方向導數的表示,命L的方向餘弦爲(cosα,cosβ,cosγ),則L上的M可表示爲

x=x0+tcosα,y=y0+tcosβ,z=z0+tcosγt=|MM0|
。於是u對L的方向導數爲

(ul)M0=limt0Δut=limt0uxΔx+uyΔy+uzΔz+o(t)t=limt0t(uxcosα+uycosβ+uzcosγ)+o(t)t=uxcosα+uycosβ+uzcosγ
注意,在上面的推導中用到了全微分公式。

令向量,L方向可以表示爲。因爲l是一個單位向量,所以

(uL)M0=nl=|n|cosθ
這表達了L上的方向向量其實是n在L方向上的投影。當L的方向變化,投影量隨之改變,也就代表了不同的方向導數。當L與n同向時,(uL)M0便取得最大值|n|,我們稱n爲u在該點的梯度。可以看到梯度即是某一點最大的方向導數,沿梯度方向函數有最大的變化率(正向增加,逆向減少)。

另外還可以證明,在某一點的梯度方向,就是過該點的等值面的切平面的法線方向。但需要注意的是,這並不是定理,只是等值函數的法向量的表達式與函數的梯度的表達式一致而已,並非兩者之間必然的存在關係。因此,在某一點沿着梯度看去,等值面分布最密,即達到臨近等值面的距離最小。

  • 多變量函數的極值

對於單變量函數,若在某點取得極值,則該點的導數爲0。同樣對於多變量函數,在某點爲極大值或極小值只有當在該點的每個偏導數等於0纔有可能,也就是說梯度等於0。因此,在多變量函數中,駐點,也就是導數爲0的點,指的是每個偏導數等於0,也就是梯度等於0的點。進而,在求極值時,我們可以先找到梯度爲0的駐點,在通過定理(查書唄)判斷它是否是極值點,極大值還是極小值。


http://bubblexc.com/y2012/657/

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章