機器學習(二)工做流程與模型調優

上一講中主要描述了機器學習特徵工程的基本流程,其內容在這裏:機器學習(一)特徵工程的基本流程html

本次主要說明以下:網絡

  1)數據處理:此部分已經在上一節中詳細討論機器學習

  2)特徵工程:此部分已經在上一節中詳細討論函數

  3)模型選擇工具

  4)交叉驗證性能

  5)尋找最佳超參數學習

首先看下總圖:測試

(一)模型選擇:

1)交叉驗證spa

  • 交叉驗證集作參數/模型選擇
  • 測試集只作模型效果評估

2)K折交叉驗證:htm

在Python中有這樣的函數用於在交叉驗證過程當中對參數的選擇

 

(二)模型的狀態


  a. 過擬合:過擬合(overfitting)是指在模型參數擬合過程當中的問題,因爲訓練數據包含抽樣偏差,訓練時,複雜的模型將抽樣偏差也考慮在內,將抽樣偏差也進行了很好的擬合。

  b. 欠擬合 :模型在訓練過程當中沒有訓練充分,致使模型很好的表現出數據原有性質。

模型狀態驗證工具:學習曲線

  經過在給定訓練樣本增長的時候,測試機和訓練集中準確率的變化趨勢能夠看到如今模型的狀態。

 

 

 

怎麼防止過擬合呢?

  • 獲取更多數據: 讓模型「看見」儘量多的「例外狀況」,它就會不斷修正本身,從而獲得更好的結果;

    a)從數據源頭採集更多數據

    b) 經過必定規則擴充數據集,如加入隨機噪聲,圖的旋轉平移縮放

    c) 採樣技術

  • 減少模型的複雜度:減小數的棵樹,網絡層數等;
  • 減小訓練時間 Early stopping:提早終止(當驗證集上的效果變差的時候);
  • 加入正則項 / 增大正則化係數:這類方法直接將權值的大小加入到 Cost 裏,在訓練的時候限制權值變大;
  • 使用集成學習:綜合多個學習器的結果;
  • Dropout:相似於集成學習,是的網絡結構發生了改變

 

 

怎樣防止欠擬合? (通常不多出現)

  • 找更多的特徵
  • 減少正則化係數

(三)模型分析

1)線下模型權重分析:線性或者線性kernel的model

  • Linear Regression
  • Logistic Regression
  • LinearSVM

2)對權重絕對值高/低的特徵 

  • 作更細化的工做
  • 特徵組合

3) Bad-case分析  

分類問題

  • 哪些訓練樣本分錯了?
  • 咱們哪部分特徵使得它作了這個斷定?
  • 這些bad cases有沒有共性
  • 是否有還沒挖掘的特性

 迴歸問題

  • 哪些樣本預測結果差距大,爲何?

 (四)模型融合

1)平均法

  1. 簡單平均法(simple averaging)

 

  2. 加權平均法(weighted averaging)

 

  注意:必須使用非負權重才能確保集成性能優於單一最佳個體學習器,所以在集成學習中通常對學習器的權重法以非負約束。
  簡單平均法實際上是加權平均法令w=1/T的特例。集成學習中的各類結合方法其實均可以視爲加權平均法的特例或變體。加權平均法的權重通常是從訓練數據中學習而得。因爲現實任務中樣本不充分或存在噪聲,使得學得的權重不徹底可靠,有時加權平均法未必必定優於簡單平均法。

 

2)投票法

  對分類任務來講,最多見的結合策略使用投票法

  1. 絕對多數投票法(majority voting):即若某標記得票過半數,則預測爲該標記;不然拒絕預測

 

  2. 相對多數投票法(plurality voting):即預測爲得票最多的標記,若同時有多個標記獲最高票,則從中隨機選取一個。


  3. 加權投票法(weighted voting):絕對多數投票法在可靠性要求較高的學習任務中是一個很好的機制,若必須提供結果,則使用相對多數投票法。

  • 類標記:使用類標記的投票亦稱「硬投票」(hard voting)。
  • 類機率:使用類機率的投票亦稱「軟投票」(soft voting)。

  以上兩種不能混用,若基學習器產生分類置信度,例如支持向量機的分類間隔值,需使用一些技術如Platt縮放、等分迴歸、等進行校準後才能做爲類機率使用。若基學習器的類型不一樣,則其類機率值不能直接進行比較,可將類機率輸出轉化爲類標記輸出而後再投票。

 

 

3)Stacking:Stacking方法是指訓練一個模型用於組合其餘各個模型。首先咱們先訓練多個不一樣的模型,而後把以前訓練的各個模型的輸出爲輸入來訓練一個模型,以獲得一個最終的輸出。理論上,Stacking能夠表示上面提到的兩種Ensemble方法,只要咱們採用合適的模型組合策略便可。但在實際中,咱們一般使用logistic迴歸做爲組合策略。

 

 關於集成學習這裏也有更詳細的描述:集成學習

 

 參考

  • 七月在線機器學習課程
  •  周志華:機器學習西瓜書
相關文章
相關標籤/搜索