2.1经验误差与过拟合
2.1.1典型的机器学习过程
2.1.2误差
当有 m m m个样本,其中 a a a个分类错误,则错误率为 E = a / m E=a/m E=a/m;相应地, 1 − a / m 1-a/m 1−a/m称为精度。
2.1.3过拟合与欠拟合
过拟合:学习能力过于强大,不可避免,只能缓解。
欠拟合:学习能力不足,加大学习。
现实中,往往有多种学习算法可供选择,甚至同一算法不同参数配置时,也会产生不同模型。如何选择,即“模型选择”。
理想解决方案是对候选模型泛化误差进行评估,然后选择泛化误差最小的模型。
2.2评估方法
通过“测试集”来测试学习器对新样本的判别能力,然后以测试集上的“测试误差”作为“泛化误差”的近似。
测试样本:
- 从样本真实分布中独立同分布采样
- 与训练集尽可能互斥(未出现,未使用过的)
eg:你是一个老师,数了学生10道题,你对他进行考核时,肯定不是考这10道题,才能体现他“举一反三”的能力。
但是,我们只有一个包含 m m m个样例的数据集 D = ( x 1 , y 1 ) , ( x 2 , y 2 ) . . . ( x m , y m ) D = (x_1 ,{y}_{1}),(x_2 ,{y}_{2})...(x_m ,{y}_{m}) D=(x1,y1),(x2,y2)...(xm,ym)如何做到既要训练,又要测试?
对D适当处理,产生训练集S和测试集T。
2.2.1留出法
“留出法”直接将数据集D划分为两个互斥集合。一个训练集S,一个测试集T。即D=S ∪ \cup ∪T,S ∩ \cap ∩T= ϕ \phi ϕ,S上训练,T上评估。
eg:D=1000个,训练S=700个,测试T=300个。
测试中有90个出错,错误率为 90 300 ∗ 100 % = 30 % \frac{90}{300}*100\%=30\% 30090∗100%=30%,精度为 1 − 30 % = 70 % 1-30\%=70\% 1−30%=70%
注意,训练/测试划分要尽可能与数据分布一致。
保留类别比例的采样方式称为“分层采样”
如 D = 1000 个 = 500 个正 + 500 个反 D=1000个=500个正+500个反 D=1000个=500个正+500个反
则 S = 700 个 = 350 个正 + 350 个反 S=700个=350个正+350个反 S=700个=350个正+350个反
则 T = 300 个 = 150 个正 + 150 个反 T=300个=150个正+150个反 T=300个=150个正+150个反
然而,即便如此分类比例,在实际中先正,先反也会产生不同结果。所以单次“留出法”并不可靠,一般采用若干次随机划分。重复试验取评价。
常见的方法: 2 3 − 4 5 \frac{2}{3}-\frac{4}{5} 32−