Data fitting
簡單來說,就是走中道,找出sweet spot。下圖中的bias就是error, variance就是complexity:Regularization
簡單說來,當我們想要為model f找出較好的fitting時,我們會嘗試minimize loss function,但是同時我們還是希望所有的feature對model f的貢獻能被控制在合理範圍:我們就在loss function中加入一項regularization term,是一個f的function R,乘上一個常數項C。
以下面linear regression example為例,如果我們要避免高次方function產生的overfitting,就可以利用regularization把高次方向係數變小,詳情請洽ML專課:
Train-Validation-Test scenario
手邊有label的dataset,可以分成三組:1. training set - 用來建立model的data set
2. validation set - 用來tune model params的data set,例如避免overfitting
3. test set - 真正用來測試建好的model的data set,包括performance和error。
三者的比例通常是以下:
K-fold Cross Validation
如果我們不把dataset分成三組(如上所述),我們全部都用來當作training set的話,我們可以用cross validation來估計test error。例如把dataset D分成 k = 5份,做五次的training-validation process,每次的validation都是其中不重複的一份 T,而只用其他4份當作training set:
最後把這五次的error做平均,這樣算是充分利用這個dataset來獲得最多的資訊的方式。
評估classifier model好壞
這可以用confusion matrix來評估:所有的prediction error會落在False negative和False positive這兩類裡面。
然後依據以下各個指標的定義,製作出相關的比例:
沒有留言:
張貼留言