這裏寫目錄標題
監督學習三要素
- 模型
總結數據內在規律,用數學函數描述的系統 - 策略
選取最優模型的評價準則 - 算法
選取最優模型的具體方法
監督學習主要步驟
- 得到一個有限的訓練數據集
- 確定包含所有學習模型的集合
- 確定模型選擇的準則,也就是學習策略
- 實現求解最優模型的算法,也就是學習算法通過學習算法選擇最優模型
- 利用得到的最優模型,對新數據進行預測或分析
監督學習模型評估策略
- 模型評估
– 訓練集和測試集
– 損失函數和經驗風險
– 訓練誤差和測試誤差 - 模型選擇
– 過擬合和欠擬合
– 正則化和交叉驗證
訓練集
輸入到模型中對模型進行訓練的數據集合
測試集
模型訓練完成後測試訓練效果的數據集合
損失函數
損失函數是用來估量你模型的預測值f(x)與真實值Y的誤差大小,它是一個非負實值函數,通常使用L(Y, f(x))來表示,損失函數越小,模型的魯棒性就越好。
0-1 損失函數
可以看出上述的定義太過嚴格,如果真實值爲1,預測值爲0.999,那麼預測應該正確,但是上述定義顯然是判定爲預測錯誤。
平方損失函數(經常用於迴歸中)
絕對損失函數(經常用於迴歸中)
對數損失函數
經驗風險
– 模型 f(X) 關於訓練數據集的平均損失稱爲經驗風險(empirial risk),記作 Remp
• 經驗風險最小化(Empirical Risk Minimization,ERM) – 這一策略認爲,經驗風險最小的模型就是最優的模型
– 樣本足夠大時,ERM 有很好的學習效果,因爲有足夠多的“經驗”
– 樣本較小時,ERM 就會出現一些問題
訓練誤差和測試誤差
訓練誤差
– 訓練誤差(training error)是關於訓練集的平均損失。
– 訓練誤差的大小,可以用來判斷給定問題是否容易學習,但本質上並不重要
測試誤差
– 測試誤差(testing error)是關於測試集的平均損失。
– 測試誤差真正反映了模型對未知數據的預測能力,這種能力一般被稱爲 泛化能力
模型選擇
正則化
交叉驗證
- 數據集劃分
– 如果樣本數據充足,一種簡單方法是隨機將數據集切成三部分:訓練集(trainingset) 、驗證集(validation set)和測試集(test set)
– 訓練集用於訓練模型, 驗證集用於模型選擇,測試集用於學習方法評估
數據不充足時,可以重複地利用數據–交叉驗證(cross validation)
-
簡單交叉驗證
– 數據隨機分爲兩部分,如70%作爲訓練集,剩下30%作爲測試集
–訓練集在不同的條件 下(比如參數個數)訓練模型,得到不同的模型
–在測試集上評價各個模型的測試誤差,選出最優模型 -
S折交叉驗證
– 將數據隨機切分爲S個互不相交、相同大小的子集; S-1個做訓練集,剩下一個做測試集-重複進行訓練集 、測試集的選取,有S種可能的選擇 -
留一交叉驗證