上一章:機器學習01——機器學習概述
下一章:機器學習03——線性模型
機器學習實戰項目:【從 0 到 1 落地】機器學習實操項目目錄:覆蓋入門到進階,大學生就業 / 競賽必備
文章目錄
- 一、經驗誤差與過擬合
- (一)核心概念定義
- (二)過擬合與欠擬合
- 二、模型評估方法(數據集劃分策略)
- (一)留出法
- (二)k折交叉驗證法
- (三)留一法
- (四)自助法
- 三、性能度量(模型評價標準)
- (一)回歸任務的性能度量
- (二)分類任務的性能度量
一、經驗誤差與過擬合
(一)核心概念定義
- 誤差:樣本真實輸出與預測輸出之間的差異。
- 誤差類型:
- 訓練(經驗)誤差:模型在訓練集上的誤差;
- 測試誤差:模型在測試集上的誤差;
- 泛化誤差:模型在除訓練集外所有新樣本上的誤差(反映模型對新數據的適應能力)。
- 錯誤率:分錯樣本占總樣本的比例(是誤差的一種具體表現形式)。
(二)過擬合與欠擬合
-
過擬合:
- 定義:模型過度學習訓練樣本的細節(將訓練樣本的特有性質誤認為所有樣本的一般性質),導致泛化性能下降;
- 舉例:模型誤以為“樹葉必須有鋸齒”,將無鋸齒的樹葉誤判為“不是樹葉”;
- 解決方法:通過優化目標加正則項(限制模型復雜度)、早停(提前終止訓練)等方式緩解。
-
欠擬合:
- 定義:模型未學好訓練樣本的一般性質,對數據的規律把握不足;
- 舉例:模型誤以為“綠色的都是樹葉”,將綠色的非樹葉(如綠色果實)誤判為“是樹葉”;
- 解決方法:對決策樹增加分支、神經網絡增加訓練輪數等(增強模型對數據的學習能力)。
-
關鍵結論:僅追求訓練誤差最小化(如訓練集錯誤率為0)往往無法得到好模型,需平衡訓練誤差與泛化能力。
二、模型評估方法(數據集劃分策略)
模型評估的核心是通過合理劃分訓練集(用于訓練模型)和測試集(用于評估泛化能力),用測試誤差近似泛化誤差,且需保證訓練集與測試集互斥、分布一致。常見方法包括:
(一)留出法
- 操作:將數據集直接劃分為互斥的訓練集S和測試集T;
- 要點:
- 保持數據分布一致性(如分層采樣,避免某類樣本集中在訓練集或測試集);
- 通常多次隨機劃分并取平均值,減少偶然誤差;
- 訓練集與測試集比例多為2:1~4:1(訓練集占比更高,保證模型有足夠數據學習)。
(二)k折交叉驗證法
- 操作:將數據集分層采樣劃分為k個大小相似的互斥子集,每次用k-1個子集的并集作為訓練集,剩余1個子集作為測試集,重復k次后取均值;
- 特點:
- 常用k=10(即10折交叉驗證),平衡評估準確性與計算成本;
- 為減少劃分方式的影響,可重復p次(如“10次10折交叉驗證”),最終取p次結果的均值。
(三)留一法
- 操作:當數據集包含m個樣本時,令k=m(即每個子集僅含1個樣本),每次用m-1個樣本訓練,1個樣本測試,重復m次取均值;
- 優缺點:
- 優點:不受隨機劃分影響,評估結果準確;
- 缺點:當m較大時,計算開銷極大(需訓練m個模型),實用性有限。
(四)自助法
- 操作:基于有放回采樣,從數據集D中采樣m次得到訓練集(部分樣本可能重復),未被采樣的樣本(約占1/3)作為測試集;
- 適用場景:數據集較小時(解決訓練/測試集劃分困難問題);
- 局限性:改變了原始數據分布,可能引入估計偏差,因此數據量充足時,優先選擇留出法或交叉驗證法。
三、性能度量(模型評價標準)
性能度量是衡量模型泛化能力的標準,需根據任務需求選擇,不同度量可能導致不同評判結果。
(一)回歸任務的性能度量
- 均方誤差:最常用指標,計算預測值與真實值差值的平方的平均值,公式為:
E(f;D)=1m∑i=1m(f(xi)?yi)2E(f ; D)=\frac{1}{m} \sum_{i=1}^{m}\left(f\left(x_{i}\right)-y_{i}\right)^{2}E(f;D)=m1?i=1∑m?(f(xi?)?yi?)2
其中,f(xi)f(x_i)f(xi?)為模型預測值,yiy_iyi?為真實值,m為樣本數。
(二)分類任務的性能度量
-
錯誤率與精度:
- 錯誤率:分錯樣本占總樣本的比例,公式為:
E(f;D)=1m∑i=1mI(f(xi)≠yi)E(f ; D)=\frac{1}{m} \sum_{i=1}^{m} \mathbb{I}\left(f\left(x_{i}\right) \neq y_{i}\right)E(f;D)=m1?i=1∑m?I(f(xi?)=yi?) - 精度(正確率):分對樣本占總樣本的比例,公式為:
acc(f;D)=1m∑i=1mI(f(xi)=yi)=1?E(f;D)acc(f ; D) =\frac{1}{m} \sum_{i=1}^{m} \mathbb{I}\left(f\left(x_{i}\right)=y_{i}\right) =1-E(f ; D)acc(f;D)=m1?i=1∑m?I(f(xi?)=yi?)=1?E(f;D)
(I(?)\mathbb{I}(\cdot)I(?)為指示函數,條件成立時取1,否則取0)。
- 錯誤率:分錯樣本占總樣本的比例,公式為:
-
查準率(P)與查全率(R):
- 基于混淆矩陣(統計真實標記與預測結果的組合):
- TP(真正例):真實為正例且預測為正例;
- FN(假反例):真實為正例但預測為反例;
- FP(假正例):真實為反例但預測為正例;
- TN(真反例):真實為反例且預測為反例;
- 查全率(召回率):所有真實正例中被正確預測的比例,公式為:
R=TPTP+FNR=\frac{TP}{TP+FN}R=TP+FNTP? - 查準率(精確率):所有預測為正例中真實為正例的比例,公式為:
P=TPTP+FPP=\frac{TP}{TP+FP}P=TP+FPTP? - 適用場景:信息檢索、Web搜索等(需權衡“找到的正例是否準確”和“是否找到所有正例”)。
- 基于混淆矩陣(統計真實標記與預測結果的組合):
-
P-R曲線與平衡點:
- P-R曲線:按模型對正例的預測概率排序,逐個將樣本視為正例時,得到的查準率-查全率曲線(直觀反映模型在不同閾值下的P和R表現);
- 平衡點:P-R曲線上查準率=查全率的點,用于比較交叉曲線的模型性能(平衡點越高,模型越好)。
-
F1與Fβ度量:
- F1:查準率與查全率的調和平均,綜合兩者性能,公式為:
F1=2×P×RP+R=2×TP樣例總數+TP?TNF1=\frac{2 × P × R}{P+R}=\frac{2 × TP}{樣例總數 +TP-TN}F1=P+R2×P×R?=樣例總數+TP?TN2×TP? - Fβ:更靈活的度量,通過β調整對P和R的偏重:
Fβ=(1+β2)×P×R(β2×P)+RF_{\beta}=\frac{\left(1+\beta^{2}\right) × P × R}{\left(\beta^{2} × P\right)+R}Fβ?=(β2×P)+R(1+β2)×P×R?- β=1時為標準F1;
- β>1時偏重查全率(如逃犯檢索,需盡可能找到所有逃犯);
- β<1時偏重查準率(如商品推薦,需推薦的商品盡可能符合用戶需求)。
- F1:查準率與查全率的調和平均,綜合兩者性能,公式為:
上一章:機器學習01——機器學習概述
下一章:機器學習03——線性模型
機器學習實戰項目:【從 0 到 1 落地】機器學習實操項目目錄:覆蓋入門到進階,大學生就業 / 競賽必備