1. 程式人生 > >深度學習之數學基礎 Updating

深度學習之數學基礎 Updating

1. 常用函式的有用性質

1.1 logistic sigmoid函式:

σ(x)=11+ex

logistic sigmoid函式通常用來產生Bernouli分佈中的引數Φ, 因為它的範圍是(0, 1), 處在Φ的有效取值範圍內。sigmoid函式在變數取絕對值非常大的正值或負值時會出現飽和 (saturate)現象,函式會變得很平,並且對輸入的微笑改變會變得不敏感。

1.2 softplus 函式

ζ(x)=log(1+ex)

softplus函式可以用來產生正態分佈的βα引數,因為它的範圍是(0, ). 當處理包含sigmoid函式的表示式時,它也經常出現。softplus函式名來源於它的另一個函式的平滑稱軟化形式,這個函式為:

x+=max(0,x)

1.2.1 應該背下來的性質

σ(x)=exex+e0=11+ex
ddxσ(x)=σ(x)(1σ(x))
1σ(x)=σ(x)
logσ(x)=ζ(x)
ddxζ(x)=σ(x)
x(0,1),σ1(x)=log(x1x)
x>0,ζ1(x)=log(ex1)
ζ(x)=xσ(y)dy
ζ(x)ζ(x)=x

1.3 softmax函式

softmax 函式經常用於預測與Multinoulli分佈相關聯的概率,定義為:

softmax(x)i=exinj=1exj

1.3.1 上溢和下溢

使用softmax函式的時候,經常需要對其進行上溢和下溢處理。當xi等於c時,如果c是非常小的負數,exp(c)就會下溢,此時分母為0. 當c是非常大的正數時,exp(c)就會上溢。

解決辦法是,計算softmax(z), z=xmaxixi, 注:這裡的z和x為粗體大寫。softmax的函式值不會因為從輸入向量減去或加上標量而改變。減去maxixi導致exp的最大引數為0,這排除了上溢的可能性。同樣,分母中至少有一個值為1的項,排除了因分母下溢而導致被零除的可能性。
計算log softmax(x),先計算softmax再把結果傳給log函式,會錯誤地得到。此時,應該使用相同的方法來穩定log softmax函式。

1.4 基於梯度的優化方法(重點)

大多數深度學習演算法都涉及某種形式的優化。優化指的是改變x以最小化或最大化某個函式f(x)的任務。

通常我們以最小化f(x)指代大多數最優化問題。最大化可經由最小化演算法最小化 -f(x)來實現。

我們把要最小化或最大化的函式稱為目標函式 objective function 或準則 criterion。當我們對其進行最小化時,也把它稱為代價函式 cost function、損失函式 loss function 或誤差 error function。
通常,使用一個上標*表示最小化或者最大化函式的x值,如,x=argminf(x).
對於一維輸入,可以求其導數。對於多維輸入,需要用到偏導數 partial derivative。
梯度 gradient是相對一個向量求導的導數: f的導數是包含所有偏導數的向量,記為x