2021-03-31

集成学习-Task6

度量模型性能的指标与贝叶斯优化调参

概念介绍

度量分类模型的指标和回归的指标有很大的差异,首先是因为分类问题本身的因变量是离散变量,因此像定义回归的指标那样,单单衡量预测值和因变量的相似度可能行不通。其次,在分类任务中,我们对于每个类别犯错的代价不尽相同。那么怎么去评价分类模型,以及有哪些指标需要我们关注的呢。在正式介绍我们的分类模型之前有必要对一些概念进行简单的说明。
假设现在已经训练好一个机器学习模型,模型是关于判断普通人员是否携带新冠病毒。通常情况下模型会将乘客分为COVID阳性和阴性。在进行分类预测时,可能会出现四种类型的结果:
2021-03-31

真阳性TP:当预测一个观察值属于一个类,而它实际上属于那个类。在这种情况下,也就是预测为COVID阳性并且实际上也是阳性的乘客预测值和真实值都为正例;当然这很糟糕,需要进行及时的治疗。
真阴性TN: 当你预测一个观察不属于一个类,它实际上也不属于那个类。在这种情况下,也就是预测为非COVID阳性(阴性)并且实际上不是COVID阳性(阴性)的乘客。此时需要佩戴好口罩做好防护措施。
假阳性FP: 当你预测一个观察值属于某个类,而实际上它并不属于该类时。在这种情况下,也就是预测为COVID阳性但实际上不是COVID阳性(阴性)的乘客。会造成一定
假阴性FN: 当你预测一个观察不属于一个类,而它实际上属于那个类。在这种情况下,也就是预测为非COVID阳性(阴性)并且实际上是COVID阳性的乘客。有可能是病毒潜藏的太深,另外这样的结果造成的代价有点高,是我们不想要的预期结果。

常用的评价指标

2021-03-31
分类模型:
ACC:对于给定的测试数据集,分类器正确分类的样本数与总样本数之比。
缺点: 在正负样本不平衡的情况下,这个指标有很大的缺陷。例如:给定一组测试样本共1100个实例,其中1000个是正类,剩余100个是负类。即使分类模型将所有实例均预测为正类,Accuracy也有90%以上,这样就没什么意义了。
PRE: 正确分类的正例个数占分类为正例的实例个数的比例。
RCC: 正确分类的正例个数占样本为正例的实例个数的比例。
ROC 曲线: 接收者操作特征(receiver operating characteristic),ROC曲线上每个点反映着对同一信号刺激的感受性。它给出了模型在0到1之间每一个可能的决策点的敏感性和特异性。对于具有概率输出的分类问题,阈值可以将概率输出转换为分类。
注意: 1.选择TPR高而FPR低的阈值 2.比较分类器的一种方法是测量ROC曲线下的面积面积越大分类效果较好。

贝叶斯超参数调优

Sequential model-based optimization (SMBO) 是贝叶斯优化的最简形式,其算法思路如下:2021-03-31

  1. Input:
    f: 机器学习里的黑盒子,即输入一组超参数,得到一个输出值。
    X:是超参数搜索空间等。
    D:表示一个由若干对数据组成的数据集,每一对数组表示为(x,y),x是一组超参数,y表示该组超参数对应的结果。
    S:是Acquisition Function(采集函数),这个函数的作用是用来选择公式(1)中的x,后面会详细介绍这个函数。
    M:是对数据集D进行拟合得到的模型,可以用来假设的模型有很多种。这里介绍的为高斯模型。
  2. I n i t S a m p l e s ( f , x ) → D InitSamples(f,x)→D InitSamples(f,x)→D
    这一步骤就是初始化获取数据集D=(x1,y1),…,(xn,yn),其中yi=f(xi),这些都是已知的。
  3. 循环选参数T次
    因为每次选出参数x后都需要计算f(x),而正如前面介绍的每计算一次函数f,都会消耗大量资源,所以一般需要固定选参次数(或者是函数评估次数)。
  4. p ( y ∣ x , D ) ← F I T M O D E L ( M , D ) p(y|x,D)←FITMODEL(M,D) p(y∣x,D)←FITMODEL(M,D)
    首先我们预先假设了模型M服从高斯分布,且已知了数据集D,所以可以通过计算得出具体的模型具体函数表示。假设下图中的绿色实现就是基于数据集D经过计算后的服从高斯分布模型。
    因为我们已经假设 f − G P ( μ , K ) f-GP(μ,K) f−GP(μ,K)。 (GP:高斯过程,μ:均值 K:协方差kernel,)。所以预测也是服从正态分布的,即有 p ( y ∣ x , D ) = N ( y ∣ μ , σ 2 ) p(y|x,D)=N(y|μ^,σ^2) p(y∣x,D)=N(y∣μ,σ2)
    2021-03-31
  5. x i ← a r g m a x x ∈ X S ( X , p ( y ∣ X , D ) xi←argmaxx∈XS(X,p(y|X,D) xi←argmaxx∈XS(X,p(y∣X,D)
    现在已经将假设的模型计算出来了,基于假设模型的基础上利用Acquisition Function选择选择X。
  6. y i ← f ( x i ) yi←f(xi) yi←f(xi)
    选出了一组超参数xi,将超参数带入网络中去进行训练,最后得到输出yi
  7. D ← D ⋃ ( x i , y i ) D←D⋃(xi,yi) D←D⋃(xi,yi)
    更新数据集
    注: x 表示的是超参数,而不是输入数据
    参考链接: https://zhuanlan.zhihu.com/p/93683454
    参考链接: https://github.com/datawhalechina/team-learning-data-mining/tree/master/EnsembleLearning
上一篇:这届618:商家全渠道作战,天猫仍是主场


下一篇:618 技术特辑(四)疯狂剁手的同时,电商隐私安全你注意到了吗?