---
# System prepended metadata

title: 3 . 3 ~ 3 . 4_曹晉嘉

---

## 欠擬合和過擬合

欠擬合 : 模型函數太簡單，無法有效地貼近資料

* 提高資料複雜度
* 提高模型複雜度

過擬合 : 模型函數太複雜，在測試樣本上誤差很大

* 增加訓練樣本
* 降低模型複雜度
![image](https://hackmd.io/_uploads/B1yfAvG9T.png)

## 訓練集、驗證集和測試集

* 訓練集 : 訓練模型的樣本
* 驗證集 : 評估和選擇模型，亦作為超參數(例如學習率、疊代次數) 的調整依據
* 測試集 : 測試模型預測能力


## 學習曲線
學習曲線:有助於判斷訓練情況的曲線
* 訓練誤差和驗證誤差(早停法)

    訓練模型是為了預測，因此我們應當取驗證損失曲線的最低處


![image](https://hackmd.io/_uploads/BypNJOzqT.png)

* 誤差和樣本數

    樣本數變多時，訓練誤差會越來越大，驗證誤差則會降低，當驗證誤差不再下降時則可早停，無須再增加樣本數
    
    ![image](https://hackmd.io/_uploads/H1rzqdfca.png)

    
## 偏差和方差

* 偏差 :檢測預測和實際值相差多少，測量準確度
* 方差 :檢測預測值分散程度

![image](https://hackmd.io/_uploads/SJRwL_M9p.png)
![image](https://hackmd.io/_uploads/S1WFU_G5a.png)




![image](https://hackmd.io/_uploads/Bktl8dG5p.png)

## 正則化
正則化:利用手段來避免模型過度複雜(例早停法)或對損失函數增加懲罰項
* 懲罰項 :用以阻止模型參數曲過大的值

下圖是線性損失函數加上正則項

![image](https://hackmd.io/_uploads/SkXRvdfq6.png)

* 當模型訓練誤差低但驗證誤差高時，有什麼方法解決?







