都知道数学建模吧 ====>
前面文章我们说过:机器学习是根据任务,将现实世界简化为一个简单的模型并数学化,那么,这就存在模型评价与选择。
例如:某汽车厂家发现已售出的产品(某款汽车)可能有问题,就向购买了该产品的“全体”顾客发布通知:顾客如果觉得自己的车有问题(厂家给出判断方法)就把车开回来处理(“召回”),这就有度量:召回率。
根据度量选优,选定一个模型后,训练出唯一的模型实例,将其作为产品发布给用户使用。
模型
模型选择
我们再从数据工程师的工作角度来看,首先,他要在算法库(或工具箱)中找到合适的算法,这一步他要综合利用业务领域知识和算法适用范围的知识,然后,将其实例化,即实例化算法中的参数,形成可用的软件产品。
算法通常有两类参数,一类称为“超参数”(如某神经网络的层数),它需要在训练前人为先行设定,另一类称为“参数”,它由训练过程求出来。 因此,数据工程师的工作主要是围绕参数(戏称“调参狗”),这一过程为:“算法”
→
\rightarrow
→“模型”
→
\rightarrow
→ “模型实例”(当上下文没有出现“模型实例”时,“模型”就是指“模型实例”(正如前面表述的),即“模型”可指代“模型实例”,但不能反过来),如图1所示。
从图中可以看到,数据工程师先通过两级选择得到一个模型:一是算法选择,二是算法中的超参数选择。 同一个模型用同一个数据集 D D D作用,又可得到多个实例(由于不同的 S S S)。
图中的右半部分是对指定的模型进行评估,对给定的数据集 D D D,可以得到该模型的多个实例(由于不同的 S S S),每个实例又有对应的测试误差( S S S对应的 T T T上的误差),这些测试误差的均值可以作为泛化误差的估计,由此评价该模型。
图中的左半部分是对模型进行选择,给定一组超参数得到一个模型,调整超参数又得到一个模型,在给定的数据集 D D D上,对这些模型进行评价,从而可以比较各模型的泛化误差,得出各模型的优劣,实现模型选择(实际上,通常是对超参数的选择)。
模型发布
通常选定一个模型后,对该模型使用数据集
D
D
D的全体数据进行训练(最后使用全体数据训练是为了充分利用数据,除非数据量很大),得到唯一的模型实例(也称为学习器,或依任务而称为分类器、预测器),作为产品发布给用户使用。 如图2 所示。
后评估
模型(实例)发布后,可以从用户那儿获得实际使用的数据,这些数据可作为测试数据,用于评价该模型(实例)的泛化能力。
性能度量
前述我们知道对模型的泛化误差可以通过对模型的若干实例(学习器)的测试误差的平均值来估计。 更一般地,我们将泛化误差扩展到泛化性能(机器学习中的“性能”一词通常指对学习器泛化能力,而不是计算机领域中的运行效率的性能(速度))。
学习器的性能度量
下面我们聚焦到讨论学习器的性能度量。
- 回归任务中常用的性能度量是“均方误差”【西瓜书式(2.2)和(2.3)】
- 分类任务中常用的性能度量是“错误率”【西瓜书式(2.4)和(2.6)】和“精度”【西瓜书式(2.5)和(2.7)】
注意到离散型公式中求和的权重为 1 m \frac{1}{m} m1,看上去是均等对待样本,确实是这样的,这里我们详细分析一下。
假定样本来源于不服从均匀分布的样本空间,随机抽样得到的数据集,则概率密度大的抽取得多,概率密度小的抽取得少。 假设我们取10个样本,排序后情况如图3 所示。
结合该图,显然有式子
1
10
∑
i
=
1
10
x
i
=
∑
i
=
1
3
x
i
′
P
‾
(
x
i
′
)
(2.ab)
\frac{1}{10}\sum_{i = 1}^{10} \boldsymbol{x}_i =\sum_{i = 1}^{3} \boldsymbol{x}_i^\prime \overline{P}(\boldsymbol{x}_i^\prime ) \tag{2.ab}
101i=1∑10xi=i=1∑3xi′P(xi′)(2.ab)
该式的左边对应于图中“个性化结果”(样本变量为
x
i
\boldsymbol{x}_i
xi ),右边对应于“统计结果”(样本变量为
x
i
′
\boldsymbol{x}_i^\prime
xi′ ,对应的频度为
P
‾
(
x
i
′
)
\overline{P}(\boldsymbol{x}_i^\prime )
P(xi′)),二者相等,前者的好处是不必考虑样本的分布或频率(通常是不知道分布),后者的好处是项数大大减少(实际上是先做了归并)。 因此,由采样进行计算时,不必统计后再计算,而将每个个体样本视为不同,且来自均匀分布中。 后续,对于离散求和公式,我们要结合上下文来看是基于“个性化结果”的还是基于“统计结果”的。
二分类器的性能度量
对于二分类,混淆矩阵中有两对相对的概念: P P P与 N N N(指样本的预测结果正例与负例,容易误以为是指样本的正例与负例)、 T T T与 F F F(真与假,对比样本实际标记判断样本的预测是否正确),它们的组合即得到【西瓜书表2.1】的混淆矩阵的四个区域,进而由此定义二分类器的两个重要的性能指标:查准率( P P P,准确率)和查全率( R R R,召回率),需要结合【西瓜书】的论述理解这两个性能指标的矛盾性。
我们用一个场景来理解与记忆相关概念:某汽车厂家发现已售出的产品(某款汽车)可能有问题(正例),就向购买了该产品的“全体”顾客(分母)发布通知:顾客如果觉得自己的车有问题(厂家给出判断方法)就把车开回来处理(“召回”),这样,厂家就收到了两类车:一是确实有问题的车( T P \mathrm{TP} TP:顾客认为车有问题 P P P,判断也正确 T T T),二是无问题的车( F P \mathrm{FP} FP:顾客以为有问题 P P P,但判断错误 F F F),开回来的车中有问题的需要处理,其占比即为判断函数的准确率【西瓜书式(2.8)】,然而,哪些车应被召回处理呢?当然是有问题的车,这些车回了一部分(即 T P \mathrm{TP} TP),还有一部分没有回(它们是顾客认为它没有问题 N N N,但顾客的判断是错的 F F F,即漏网之鱼为 F N \mathrm{FN} FN),“应回”中“已回”的占比就是召回率【西瓜书式(2.9)】。
【西瓜书式(2.8)与(2.9)】中,显然两个分数的分子相同,颠例过来则分母相同,同分母好做加法,这就得到了数学上的调和平均。 由此就有了综合二者的“平衡”性度量
F
1
{F}_1
F1:
1
F
1
=
1
2
(
1
P
+
1
R
)
\frac{1}{{F}_1}=\frac{1}{2}(\frac{1}{P}+\frac{1}{R})
F11=21(P1+R1)
其中
P
P
P与
R
R
R分别为查准率和查全率。 由此得【西瓜书式(2.10)】,进一步地,给定
P
P
P与
R
R
R不同的权重,则得到度量
F
β
{F}_\beta
Fβ,即【西瓜书式(2.11)】。
就像对多个测试误差求平均一样,对于多个混淆矩阵时,我们也是用平均法,只不过有两种方案:一是先对每个混淆矩阵分别求度量指标,再对度量指标进行平均;二是先对多个混淆矩阵“平均”成一个混淆矩阵,再对这个平均混淆矩阵求度量指标。 前者称为“宏观”法【西瓜书式(2.12)-(2.14)】,后者称为“微观”法【西瓜书式(2.15)-(2.17)】。
从上述度量指标中,应根据情况选取单值指标或多值指标进行评估,单值指标(如,准确率、 F 1 {F}_1 F1分数、同一指标的加权平均)可以进行排序评价;而多值指标(如,查准率和查全率)的比较,则要根据应用进行权衡(如,疾病的筛选)。
本文为原创,您可以:
- 点赞(支持博主)
- 收藏(待以后看)
- 转发(他考研或学习,正需要)
- 评论(或讨论)
- 引用(支持原创)
- 不侵权
上一篇:2.1误差,还是有误差
下一篇:2.3 恭喜:高考你被录取了!