1、比较检验方法
背景:
通过上面的01、02内容,我们学习了比较多的性能度量指标。但是在针对不同模型的比较上更加复杂,其主要表现在:
(1)测试集上的泛化性能和实际数据中的泛化性能不一定相同。
(2)不同测试集的大小、内容都会影响测试集的泛化性能。
(3)算法具有随机性,结果置信度低。
所以本章主要讲了集中学习器性能比较的方法。且为了便于讨论,默认以「错误率」作为性能度量,用E表示。
或引入概率密度函数
,错误率可表示为
注意:下面方式也只适用于二分类情况。
1.1、假设检验
1.1.1、背景
在现实情况中,由于学习器的线上使用场景数据无法掌控,所以我们无法知道学习器的泛化错误率。只能在上线前获知其测试错误率。上文02提到的错误率,指的也是学习器的测试错误率()。
我们估计,学习器真正的泛化错误率与其测试错误率()虽然不同,但是二者的值相近。
所以我们可以根据测试错误率()来推出实际泛化错误率(
)的分布。
1.1.2、概念
(1)假设检验
「假设检验」是对学习器泛化「错误率()」分布的某种判断或猜想,例如我们假设某学习器泛化错误率
。
(2)泛化错误率()
是指学习器在1个样本上犯错的概率是。
(3)测试错误率()
是指学习器在m个测试样本中,有个被错误分类。即犯错的概率为:
。
1.1.3、公式推导
设学习器在总体m个测试样本中,将n个样本误分类,其余样本都分类正确的概率是:
根据1.1.2可知:
所以上面的概率可表示为:
举例:某个分类学习器的测试错误率
,则100个样本中分类器将1个样本分类错误,99个样本分类正确的概率是?
带入上面公式可得:
测试错误率和m为已知数据,则通过解偏导函数等于0:
注:这里是周志华的《机器学习》原文,查阅了资料也暂时不了解本处求偏导的含义。如果有同学了解偏导相关内容以及对上述公式的应用,欢迎私信或者留言。感谢~
根据上面的例子,我们可以将未知数E作为变量
,概率
用F(x)表示。则原概率公式可以表示为:
误分类样本数n 正确分类数 误分类错误率x 概率f(x) 0 100 0 0 1 99 0.01 18.5% 2 98 0.02 27.34% 3 97 0.03 22.51% 4 96 0.04 14.5% 5 95 0.05 8.12% 6 94 0.06 4.14% 7 93 0.07 1.98% 8 92 0.08 0.9% 9 91 0.09 0.39% 10 90 0.1 0.16% ... ... ... ... 100 0 1 0 根据上表绘制如下函数图像:
根据上面图像可知:
在
时最大,且
增大时,
减小,符合二项分布。
则误分类样本数n与x的关系如下:
则上面概率和错误率的关系可以表示为:
可得出一下