Week3
- 現實中Prediction不可能完全準確,這中間一定會有一些損失產生,可以用Loss Function來計算
Training error
- RMSE (Root Mean Square Error)
- 由於Model複雜度越高越能fit training data,所以training error會越低
- 但Training error是用來評估預測的效能的好工具嗎???
- 由於Training error代表的是對training data的fit程度,除非training data具代表性可以包含所有一切的可能,否則好的training error未必代表預測是準確的
Generalization (True) Error
Test error
- 從Training set裡面取一些出來當作Test set
- Test error是把從training data上得到的Model拿來對Test data做預測,以求出Loss作為Test error
- Test error接近Generalization error只是會上下震盪
- Overfit
- 當Model複雜度已經過高導致Generalization error開始增加的情況
Training / Test split
- Training set切得太少
- Test set切得太少
- Test error無法逼近Generalization error
Sources of error
- Bias
- 假設我們把Model複雜度設為1,把所有可能大小的training set都拿出來算Model,並求出平均值fw bar
- Bias代表的是和實際結果的偏差程度,Model複雜度越低,和實際結果偏差會越大,也就是Bias越大
- Variance
- 把所有可能大小的training set都拿出來算Model,這些Model的變化程度代表Variance
- Model複雜度越低,變動也較小,所以Variance越低
Bias-Variance Tradeoff
Error vs. amount of data
完成Regression/ML的工作流程
- 將資料分成training data跟test data會以下列方式做Regression
- 但這樣的作法是有問題的
- Test error是根據test data求得,若test data不具代表性則可能實際上的performance是更差的
- 解決方法
參考資料
https://www.coursera.org/learn/ml-regression/home/welcome
沒有留言:
張貼留言