模型评估与选择

留出法
将数据集D划分为\(D=S\cup T, S\cup T=\emptyset\).

交叉验证法
\(D = D_1\cup D_2\cup\cdots\cup D_k\)
留一法:\(k=|D|\)

自助法
从D中有放回的采样得到\(D'\), \(|D|=|D'|\), 样本在\(m=|D|\)中始终不被采到的概率为\[(1-\frac 1 m)^m\to \frac{1}{e} \approx 0.368\]
用\(D-D'\)作为测试集,约占D中元素的三分之一。

准确率和召回率
对于二分类任务,分为正类P和负类F。
对样本预测结果有4类:真正例TP,假正例FP,真负例TN,假负例FN
查准率\(P=\frac{TP}{TP+FP}\)
查全率\(R=\frac{TP}{TP+FN}\)
\(F_1\)度量:\[\frac 2 {F_1} = \frac 1 P + \frac 1 R\]

偏差-方差分解
对测试集D中的测试样本\(x\), 用\(y,y_D\)分别表示其真实标记和数据集中标记,\(f(x;D)\)为训练集D上学得模型\(f\)在x上的预测输出。
则学习算法的期望预测为\[\bar f(x) = E_D[f(x;D)].\]
使用样本数相同的不同训练集产生的方差为\[var(x) = E_D[(f(x;D)-\bar f(x))^2].\]
Gauss噪声为\[\epsilon^2 = E_D[( y_D - y)^2].\]
期望输出与真实标记的差别称为偏差,即\[bias(x)=\bar f(x) - y.\]
算法的期望泛化误差\[E(f;D) = E_D[(f(x;D)- y_D)^2].\]
Theorem. \[E(f;D) = bias^2(x) +var(x) +\epsilon^2.\]
Proof.
\(E(f;D)\)
\(=E_D[(f(x;D)-y_D)^2]\)
\(=E_D[(f(x;D)-\bar f(x) + \bar f(x) -y_D)^2]\)
\(=E_D[(f(x;D)-\bar f(x) )^2] + E_D[(\bar f(x) - y_D)^2] + E_D [2(f(x;D)-\bar f(x) ) (\bar f(x) -y_D)]\) \\末项为0
\(=var(x) +E_D[(\bar f(x) -y+y- y_D)^2]\)
\(=var(x) + E_D[(\bar f(x) -y)^2] + E_D[(y_D-y)^2]\)\\同上,展开后交叉项的期望为0
\(=var(x) + bias^2(x) +\epsilon^2.\)

    所属分类:机器学习     发表于2022-05-03