牛頓方法
牛頓方法是一種比梯度下降更快的找到極值的算法喘批。
過(guò)程及原理
在前一章的講解中已經(jīng)知道了擬合的本質(zhì)是在給定x和 的條件下出現(xiàn)y的概率的極大似然估計(jì),最終通過(guò)對(duì)極大似然函數(shù)的對(duì)數(shù)使用梯度上升法來(lái)迭代求出極大值(可能是最大值)。
那么現(xiàn)在我們換種思路來(lái)求極大似然函數(shù)的局部最大值棋恼,我們知道極值點(diǎn)的導(dǎo)數(shù)(如果存在)都為0萎坷,因此我們只需要求出使得 的
即可。
而牛頓方法是用來(lái)求一個(gè)函數(shù)的零點(diǎn)的方法成艘,所謂牛頓方法就是通過(guò)某些步驟求出 的零點(diǎn)赏半,從而得到
的過(guò)程:
某個(gè)函數(shù) 的圖像如下:
{% asset_img markdown-img-paste-20180214170331655.png %}
由圖可知 ,因此
y以此類推可以得到一個(gè)遞推公式:
按這個(gè)公式進(jìn)行迭代淆两,最終能夠得到這個(gè)函數(shù) 的零點(diǎn)除破。
上面就是牛頓法求函數(shù)零點(diǎn)的方法,現(xiàn)在我們用它來(lái)尋找 的零點(diǎn):
函數(shù)導(dǎo)數(shù)的零點(diǎn)就是函數(shù)的可能極值點(diǎn)琼腔。
牛頓法迭代的特點(diǎn)
-
初始值影響不大(一般初始化為全零即可)
這是Andrew的原話瑰枫,但是我覺(jué)得如果函數(shù)導(dǎo)數(shù)有多個(gè)零點(diǎn),則初始點(diǎn)的選取是能夠直接影響得到的結(jié)果的丹莲,不知道老師為什么要這么說(shuō)光坝。
收斂速度快。這個(gè)方法的收斂速度是“二次收斂”甥材,即每次迭代結(jié)果和最終結(jié)果之間的誤差指數(shù)級(jí)減小盯另。
這個(gè)方法不是對(duì)所有函數(shù)都適用,適用的函數(shù)有復(fù)雜的限制洲赵,這里不講鸳惯。
-
當(dāng)參數(shù)
是高維的情況下:
其中H是Hessian矩陣:
牛頓方法相比于梯度上升發(fā)的缺點(diǎn)是每次迭代都需要計(jì)算Hessian矩陣的逆矩陣,這是一個(gè)
維的矩陣叠萍,因此一般只在特征較少時(shí)(十幾個(gè))使用牛頓法芝发。
廣義線性模型(Global Linear Model)
之前的課程中了解了兩類模型:
-
線性回歸:
且符合高斯分布(正態(tài)分布)<- 線性函數(shù)
-
logistic回歸:
且符合伯努利分布(0-1分布)<- sigmod函數(shù)(或logistic函數(shù)):
上一份筆記的末尾留了一個(gè)問(wèn)題:為什么選擇logistic函數(shù)來(lái)建模伯努利分布呢?為什么線性回歸和logistic回歸使用的函數(shù)不同苛谷,迭代過(guò)程卻十分相似呢辅鲸?
這是因?yàn)樗鼈儍蓚€(gè)都是指數(shù)分布族的特殊情況。
指數(shù)分布族(Exponential Family)
一般 腹殿。
伯努利分布還原為指數(shù)分布族形式
從上面的結(jié)果可以看出独悴,伯努利分布是指數(shù)分布族在
時(shí)的特殊情況例书。可以將 用
表示出來(lái)再代入
的表達(dá)式刻炒,這樣就可以得到變量統(tǒng)一的
:
高斯分布還原為為指數(shù)分布族形式
高斯分布: .
因?yàn)樵谥案咚狗植嫉膮?shù)擬合(梯度下降迭代)過(guò)程中决采,我們發(fā)現(xiàn)參數(shù) 的值并不影響迭代過(guò)程,也就不影響最終擬合出來(lái)的參數(shù)坟奥,因此為了簡(jiǎn)化推導(dǎo)過(guò)程树瞭,我們?cè)O(shè)
。
因此筏勒,高斯分布是指數(shù)分布族在
時(shí)的特殊情況移迫。
不僅是高斯分布和伯努利分布,伽馬分布管行、泊松分布都能夠?qū)懗芍笖?shù)分布族的形式厨埋。
構(gòu)建廣義線性模型
廣義線性模型符合下述三個(gè)假設(shè):
- 給定
, 目的是輸出一個(gè)期望
使得
最大捐顷。
-
荡陷,即
和
之間是線性關(guān)系。更一般的情況下(
是向量)則:
.
第三個(gè)假設(shè)迅涮,其實(shí)更準(zhǔn)確地說(shuō)是我們?cè)谠O(shè)計(jì)GLMs時(shí)的一種設(shè)計(jì)選擇(design choice)废赞。有了這些假設(shè)和設(shè)計(jì)選擇,我們才能夠推導(dǎo)出優(yōu)美的叮姑、具有許多有優(yōu)良性質(zhì)的學(xué)習(xí)算法唉地,也就是GLMs。
在GLMs的基礎(chǔ)上传透,我們?nèi)绾螐母怕誓P蜆?gòu)造出數(shù)學(xué)函數(shù)呢耘沼?下面以之前講過(guò)的兩個(gè)模型為例:
構(gòu)造出線性回歸問(wèn)題的函數(shù)
我們已經(jīng)分析過(guò),線性回歸問(wèn)題中的目標(biāo)變量 (學(xué)術(shù)上稱
為“響應(yīng)變量”)符合高斯分布,那么僅僅知道這一點(diǎn)朱盐,我們?nèi)绾螌⑦@個(gè)概率模型具體化為某個(gè)函數(shù)來(lái)模擬參數(shù)呢群嗤?下面用GLMs來(lái)做到這一點(diǎn):
之前已經(jīng)證明高斯分布是指數(shù)分布族的特殊情況。即
對(duì)于給定的
兵琳,算法預(yù)測(cè)
(此處
)狂秘,因此輸出的是
構(gòu)造出二分類問(wèn)題中使用的logistic函數(shù)
下面使用GLMs從伯努利概率分布函數(shù)自然地推導(dǎo)出logistic函數(shù):
。這個(gè)之前已經(jīng)推導(dǎo)過(guò)躯肌。
對(duì)于給定的
者春,目標(biāo)是預(yù)測(cè)一個(gè)
,而在大多數(shù)情況下
羡榴。因此算法輸出
正則響應(yīng)函數(shù)(canonical response function)
上述構(gòu)造過(guò)程中的
也稱為正則響應(yīng)函數(shù)碧查。
正則關(guān)聯(lián)函數(shù)(canonical link function)
而 被稱為正則關(guān)聯(lián)函數(shù)。
Softmax Regression
課程中使用GLMs推導(dǎo)了二項(xiàng)分布模型的數(shù)學(xué)表達(dá)式校仑,由于過(guò)程復(fù)雜且本人學(xué)習(xí)重點(diǎn)不在這里忠售,因此就不記錄了,有興趣可以看講義迄沫,里面有詳細(xì)過(guò)程稻扬。
GLM是一個(gè)強(qiáng)大的建模工具
從上面的例子中我們可以看到,有了GLM之后羊瘩,我們所要做的僅僅是決定對(duì)某個(gè)問(wèn)題我們使用哪種概率模型即可泰佳。決定了之后,如果這個(gè)概率模型屬于是指數(shù)分布族(大多數(shù)情況下都是這樣)尘吗,那么就可以通過(guò)上述步驟“自動(dòng)地”得出用于模擬這個(gè)概率模型的含參數(shù)學(xué)表達(dá)式逝她。