1. 程式人生 > >[機器學習實戰] Logistic回歸

[機器學習實戰] Logistic回歸

.... log 運算 blog 死亡率 在線 實戰 批處理 參數更新

1. Logistic回歸:

  1)優點:計算代價不高,易於理解和實現;

  2)缺點:容易欠擬合,分類精度可能不高;

  3)適用數據類型:數值型和標稱型數據;

2. 分類思想:

  根據現有數據對分類邊界線建立回歸公式,以此進行分類。

  這裏借助sigmoid函數,其特點為當z為0時,sigmoid函數值為0.5;隨著z的增大,對應的sigmoid值將逼近1;

  而隨著z的減小,sigmoid值將逼近0。

    σ(z) = 1/(1 + e-z)

  上述 z = w0x0 + w1x1 + w2x2 + .... + wnxn,其中x是分類器的輸入數據(即特征數據),w是要計算的最佳參數。

  利用sigmoid函數性質,當sigmoid值大於0.5則被分到類1,當sigmoid值小於0.5則被分到0。那麽上述問題就可以抽象為

  當w0,w1,w2...wn為何值時(即最佳回歸系數),可以滿足對於任意一條特征數據,將數據帶入simoid函數可以獲得分類。

  對於w(最佳回歸系數)來說,可以使用梯度上升算法進行計算,梯度上升算法的叠代公式:

    w := w + φΔwf(w)

  該公式將一直被叠代,直到停止條件,比如叠代次數達到指定值。其中φ稱為步長,Δwf(w)總是指向函數值增長最快的方向。

  理論上最終平衡時,w + φΔwf(w) ≈ w,即收斂變得穩定。

3. 一般流程:

  1)收集數據:采用任意方法收集數據;

  2)準備數據:由於涉及距離計算,需要數據類型為數值型;

  3)分析數據:任意方法;

  4)訓練數據:為了找到最佳分類回歸系數;

    a. 使用梯度上升算法:

      技術分享

    b. 使用隨機梯度上升算法:

      技術分享

    隨機梯度上升算法與梯度上升算法效果相當,但占用更少的計算資源,刺猬,隨機梯度上升是一個在線算法,

    它可以在新數據來到時完成參數更新,不需要重新讀取整個數據集來進行批處理運算。

  5)測試算法:

  6)使用算法:輸入數據。  

4. 應用:

  從疝氣病癥預測馬的死亡率。

[機器學習實戰] Logistic回歸