1. 程式人生 > >座標軸下降法(解決L1正則化不可導的問題)

座標軸下降法(解決L1正則化不可導的問題)

 設lasso迴歸的損失函式為:

          

          

    其中,n為樣本個數,m為特徵個數。

    由於lasso迴歸的損失函式是不可導的,所以梯度下降演算法將不再有效,下面利用座標軸下降法進行求解。

座標軸下降法和梯度下降法具有同樣的思想,都是沿著某個方向不斷迭代,但是梯度下降法是沿著當前點的負梯度方向進行引數更新,而座標軸下降法是沿著座標軸的方向。

    下面為具體的更新過程。

    1選取初始引數

           

    (2)針對當前得到的引數進行迭代,假設已經求出第k-1輪的引數,現在由求,其中,則:

          

    (3)通過以上步驟即可以得到每輪的迭代結果,如果相對於的變化很小,則停止迭代,否則,重複步驟(2).

    通過以上迭代過程可以看出

    1. 座標軸下降法進行引數更新時,每次總是固定另外m-1個值,求另外一個的區域性最優值,這樣也避免了Lasso迴歸的損失函式不可導的問題。

    2. 座標軸下降法每輪迭代都需要O(mn)的計算。(和梯度下降演算法相同)

    座標軸下降法的數學依據為:

    對於一個可微凸函式,其中的向量,如果對於一個解,使得在某個座標軸

都能達到最小值,則就是的全域性的最小值點。