1. 程式人生 > >對極大似然估計、梯度下降、線性迴歸、邏輯迴歸的理解

對極大似然估計、梯度下降、線性迴歸、邏輯迴歸的理解

極大似然

我對極大似然估計條件概率(後驗概率)和先驗概率的的理解:假設一次實驗,可能出現兩種結果,A或者B

總共進行了50次實驗,A出現了20次,B出現了30次,那麼求A的概率p。

問題來了,怎麼求一個合理的p值呢

L表示A出現的概率為p的情況下,進行50次實驗,各種情況的概率。

這個很好理解,假如出現20次A,30次B,則x1+x2+...+x50=20,出現為1,不出現為0,所以出現了20次。

所以:

當L最大時,才說明這些樣本出現的情況是最可能的,這樣的情況下,A的概率才是最合理的。假如L很小,則說明這些樣本出現的情況很極端,此時A的概率是很不合理的。

當實驗次數變為N的時候,A出現的次數變為m的時候那麼最大似然估計A的先驗概率就為m/N

同樣的,當實驗出現的類別變為A、B、C...等多類的時候可以將A的概率設為p,其他類的該類為(1-p),同樣可以按照上圖推匯出來A的先驗概率為m/N

用極大似然來估計條件概率也和上圖是一樣的方法,只是N為在某一條件的樣本總數,而m為這一條件下A出現的數量。

梯度下降

在這裡先宣告一點,矩陣和向量的關係:

向量就是n行1列的特殊矩陣

再來從數學角度看一下梯度的定義。在微積分裡面,對多元函式的引數求∂偏導數,把求得的各個引數的偏導數以向量的形式寫出來,就是梯度。所謂的用向量表示出來就是寫成矩陣的形式。比如函式f(x,y), 分別對x,y求偏導數,求得的梯度向量就是(∂f/∂x, ∂f/∂y)T,簡稱grad f(x,y)或者▽f(x,y)。

從幾何意義上講,梯度就是函式變化增加最快的地方。具體來說,對於函式f(x,y),在點(x0,y0),沿著梯度向量的方向就是(∂f/∂x0, ∂f/∂y0)T的方向是f(x,y)增加最快的地方。或者說,沿著梯度向量的方向,更加容易找到函式的最大值。反過來說,沿著梯度向量相反的方向,也就是 -(∂f/∂x0, ∂f/∂y0)T的方向,梯度減少最快,也就是更加容易找到函式的最小值。(記住這句話就行了,不要問為什麼,徒增煩惱,這句話也沒幾個字,反正,梯度的反方向就是下降最快的方向。)

梯度下降的求解

線性迴歸

從線性迴歸來看梯度下降

假設n個樣本X1={x11,x12,x13,x1i:y1},X2={x21,x22,x23,x2i:y2}......Xn={xn1,xn2,xn3,xni:yn}

對於n維模型的線性迴歸模型

邏輯迴歸

邏輯迴歸和線性迴歸的不同點在於,線性迴歸的因變數y是連續值也是對連續值做預測(如房價,年齡、溫度等)。邏輯迴歸是對0-1型的分類問題進行預測,如(判斷男女等),邏輯迴歸經常用於二分類問題。

假如我們的樣本是{Xn:yn} ,yn是0或者1,Xn是i為特徵向量

X1={x11,x12,x13,x1i:y1},X2={x21,x22,x23,x2i:y2}......Xn={xn1,xn2,xn3,xni:yn}