機器學習入門(九)之----logistic迴歸(牛頓法)

多絢爛的花,多美妙的季節;函數

沒有一朵花,能留住它的季節。spa

我也是同樣,不停地追尋,blog

我終究要失去的io

回到logistic迴歸最大似然函數這裏,如今咱們用牛頓法來最大化這個對數似然函數。變量

牛頓法求零點

牛頓法本是用來求函數零點的一個方法,一個函數的零點就是指使這個函數等於零那個自變量的取值點。 牛頓法的更新公式爲, $$ \begin{equation} \theta :=\theta-\frac{f(\theta)}{f^{\prime}(\theta)} \end{equation} $$ 這個更新公式有一個很是天然的解釋,就是在當前近似零點處的切線的零點做爲下一輪零點的更好的近似。而後不停重複這個過程來不斷的逼近真實的零點。這個過程以下圖,方法

牛頓法求極值點

牛頓法是求零點的一個方法,如今求一個函數機智的就是求函數導數的零點,所以就有以下的牛頓法求極值點更新公式, $$ \begin{equation} \theta :=\theta-\frac{\ell^{\prime}(\theta)}{\ell^{\prime \prime}(\theta)} \end{equation} $$im

如今咱們在logistic迴歸中要最大化的那個參數是一個向量。所以牛頓法推廣到高維情形(又叫Newton-Raphson法),就有, $$ \begin{equation} \theta :=\theta-H^{-1} \nabla_{\theta} \ell(\theta) \end{equation} $$ 其中,函數 $\ell(\theta) $ 的Hessian矩陣$ H$ 的$ (i,j)$ 元素 定義爲, $$ \begin{equation} H_{i j}=\frac{\partial^{2} \ell(\theta)}{\partial \theta_{i} \partial \theta_{j}} \end{equation} $$ 牛頓法迭代較少輪數下就能很快收斂,但在每一輪牛頓法通常要比梯度降低法的代價要高得多,由於他要涉及到求階數爲特徵個數的矩陣逆(特徵個數少時,仍是很快的)。世上安得兩全法。img

剛用牛頓法來求logistic對數似然函數最大值點,相應的方法就叫費希爾得分(Fisher scoring.)。co

img

相關文章
相關標籤/搜索