機器學習1-基礎知識
小書匠
算法工程師
機器學習
《機器學習》第2章-模型評估與選擇
《統計學習方法》第1章-統計學習方法概論html
1. 機器學習三要素
方法=模型+策略+算法算法
- 模型:要學習的條件機率分佈或者決策函數
- 策略:按照什麼樣的準則學習或者選擇最佳模型
- 經驗風險最小化:
- 結構風險最小化:即正則化(regularization),在經驗風險的基礎上增長表示模型複雜度的正則化項
- 算法:模型的具體計算方法,通常指最優化方法
2. 模型評估
- 簡單交叉驗證:隨機地將數據集分爲兩個部分,一部分做爲訓練集,另外一部分做爲測試集
- 交叉驗證法cross validation:(1)將數據集劃分爲k個大小相等的互斥子集,
(2)每次使用k -1個子集的數據訓練模型,剩下的一個子集用於測試模型。從而能夠進行k 次訓練和測試;(3)選出k 次測試中平均測試偏差最小的模型
- bootstrapping法:給定包含m個樣本的數據集D,每次隨機從D中有放回地抽樣出一個樣本,重複執行m次,生成新的數據集S。
即經過bootstrap sampling方法,原數據集D中仍然越有1/3的樣本沒有出如今數據集S中。沒有出現的數據樣本D-S能夠做爲測試集用於測試,這樣的測試結果成爲包外估計out-of-bag estimation
3. 性能度量
- 錯誤率與精度:
- 錯誤率:分類錯誤的樣本數佔樣本總數的比例
- 精度:分類正確的樣本數佔樣本總數的比例
- 查準率、查全率:
* 二分類問題的TP/FP/TN/FN
- 查準率P:全部被判斷有病的樣本中真正有病的機率
- 查全率R:全部被判斷有病的的樣本佔真正有病的樣本的比率
- F1值:查準率和查全率的調和平均值
- 查準率和查全率相互矛盾。對於一個測試樣本,經過設置不一樣的閾值,則分類器對樣本的預測結果大於該閾值則判爲正例,小於該閾值則判爲負例,每一個閾值對應一個(查全率,查準率)數據點。全部閾值的對應點就組成了P-R曲線
- 若是一個學習器的P-R曲線被另外一個學習器徹底包住,則可斷言後者的性能優於前者
![enter description here enter description here](http://static.javashuo.com/static/loading.gif)
- ROC和AUC:
- ROC曲線:
- 縱軸爲「真正例率」(true positive rate, TPR),即查全率
- 橫軸爲「假正例率(false positive rate, FPR),即全部沒病的樣本中被錯判爲有病的機率
![enter description here enter description here](http://static.javashuo.com/static/loading.gif)
- AUC(area under ROC curve):ROC曲線下的面積,AUC值越大,則學習器性能越好
- 和P-R曲線相比,ROC曲線更具備魯棒性,不容易受到樣本變化的影響
![enter description here enter description here](http://static.javashuo.com/static/loading.gif)
4. 誤差bias與方差variance