牛頓方法算法
本次課程大綱:分佈式
一、 牛頓方法:對Logistic模型進行擬合函數
二、 指數分佈族學習
三、 廣義線性模型(GLM):聯繫Logistic迴歸和最小二乘模型網站
複習:事件
Logistic迴歸:分類算法變量
假設給定x以爲參數的y=1和y=0的機率:方法
求對數似然性:im
對其求偏導數,應用梯度上升方法,求得:統計
本次課程介紹的牛頓方法是一種比梯度上升快不少的方法,用於擬合Logistic迴歸
一、 牛頓方法
假設有函數,須要找使=0的
步驟:
1) 給出一個的初始值
2) 對求導,求導數爲0時的值(就是求切線與x軸交點)
3) 重複步驟2
由於該點的導數值即爲切線斜率,而斜率=該點y軸的值/該點x軸的變化值,因此每次的變化值:
*使用這個方法須要f知足必定條件,適用於Logistic迴歸和廣義線性模型
* 通常初始化爲0
應用於Logistic迴歸:
求對數似然的最大值,即求爲0時的,根據上述推論,更新規則以下:
牛頓方法的收斂速度:二次收斂
每次迭代使解的有效數字的數目加倍:假設當前偏差是0.1,一次迭代後,偏差爲0.001,再一次迭代,偏差爲0.0000001。該性質當解距離最優質的足夠近纔會發現。
牛頓方法的通常化:
是一個向量而不是一個數字,通常化的公式爲:
是目標函數的梯度,H爲Hessian矩陣,規模是n*n,n爲特徵的數量,它的每一個元素表示一個二階導數:
上述公式的意義就是,用一個一階導數的向量乘以一個二階導數矩陣的逆
優勢:若特徵數和樣本數合理,牛頓方法的迭代次數比梯度上升要少得多
缺點:每次迭代都要從新計算Hessian矩陣,若是特徵不少,則H矩陣計算代價很大
二、 指數分佈族
回顧學過的兩種算法:
對於:
若y屬於實數,知足高斯分佈,獲得基於最小二乘法的線性迴歸;
若y取{0,1},知足伯努利分佈,獲得Logistic迴歸。
問題:如Logistic迴歸中,爲什麼選擇sigmoid函數?sigmoid函數是最天然的默認選擇。
接下來,會以這兩個算法爲例,說明它們都是廣義線性模型的特例。
考慮上述兩個分佈,伯努利分佈和高斯分佈:
1) 伯努利分佈
設有一組只能取0或1的數據,用伯努利隨機變量對其建模:
,則,改變參數φ,y=1這一事件就會有不一樣機率,會獲得一類機率分佈(而非固定的)。
2) 高斯分佈
,改變參數μ,也會獲得不一樣的高斯分佈,即一類機率分佈。
上述這些分佈都是一類分佈的特例,這類分佈稱爲指數分佈族。
指數分佈族的定義:
若一類機率分佈能夠寫成以下形式,那麼它就屬於指數分佈族:
η - 天然參數,一般是一個實數
T(y) – 充分統計量,一般,T(y)=y,其實是一個機率分佈的充分統計量(統計學知識)
對於給定的a,b,T三個函數,上式定義了一個以η爲參數的機率分佈集合,即改變η能夠獲得不一樣的機率分佈。
證實伯努利分佈是指數分佈族:
可知:
由上式可見,η=log(φ/(1-φ)),可解出:φ=1/(1+exp(-η)),發現獲得logistic函數(以後討論其緣由),則:
證實高斯分佈是指數分佈族:
,設方差爲1(方差並不影響結果,僅僅是變量y的比例因子)
這種狀況下高斯密度函數爲:
可得:
*指數分佈族包括:
高斯分佈(正態分佈),多元正態分佈;
伯努利分佈(01問題建模),多項式分佈(對k個結果的事件建模);
泊松分佈(對計數過程建模);
伽馬分佈,指數分佈(對實數的間隔問題建模);
β分佈,Dirichlet分佈(對小數建模);
Wishart分佈(協方差矩陣的分佈)…
三、 廣義線性模型GLM
選定了一個指數分佈族後,怎樣來推導出一個GLM呢?
假設:
(1),即假設試圖預測的變量y在給定x,以θ做爲參數的條件機率,屬於以η做爲天然參數的指數分佈族
例:若要統計網站點擊量y,用泊松分佈建模
(2) 給定x,目標是求出以x爲條件的T(y)的指望E[T(y)|x],即讓學習算法輸出h(x) = E[T(y)|x]
(3),即天然參數和輸入特徵x之間線性相關,關係由θ決定。僅當η是實數時纔有意義。若η是一個向量,
推導伯努利分佈的GLM:
,伯努利分佈屬於指數分佈族
對給定的x,θ,學習算法進行一次預測的輸出:
獲得logistic迴歸算法。
正則響應函數:g(η) = E[y;η],將天然參數η和y的指望聯繫起來
正則關聯函數:g-1
推導多項式分佈的GLM:
多項式分佈是在k個可能取值上的分佈,即y∈{1,…,k},如將收到的郵件分紅k類,診斷某病人爲k種病中的一種等問題。
(1)將多項式分佈寫成指數分佈族的形式:
設多項式分佈的參數:,且,φi表示第i個取值的機率分佈,最後一個參數能夠由前k-1個推導出,因此只將前k-1個視爲參數。
多項式分佈是少數幾個T(y)!=y的分佈,T(1)~T(k)都定義成一個k-1維的列向量,表示爲:
這樣定義T(y)是爲了將多項式分佈寫成指數分佈族形式。
*定義符號:指示函數,1{.}
1{True} = 1, 1{False} = 0,即大括號內命題爲真,值爲1,;不然爲0。
例:1{2=3} = 0, 1{1+1=2} = 1
用T(y)i表示T(y)的第i個元素,則T(y)i = 1{y=i}
根據參數φ的意義(φi表示第i個取值的機率分佈),可推出:
可得:
證實多項式分佈式指數分佈族。
再用η表示φ:
(2)根據上述假設(3)中天然參數和輸入x的線性關係,可求得:
(3)根據上述假設(2)中的輸出h(x) = E[T(y)|x],可求得:
稱這種迴歸算法爲softmax迴歸,是logistic迴歸的推廣。
Softmax迴歸的訓練方法和logistic類似,經過極大似然估計找到參數θ,其對數似然性爲:
再經過梯度上升或牛頓方法找對數似然性的最大值,便可求出參數θ。