页面树结构

2017-11-09 ApacheCN 开源组织,第二期邀请成员活动,一起走的更远 : http://www.apachecn.org/member/209.html


MachineLearning 优酷地址 : http://i.youku.com/apachecn

转至元数据结尾
转至元数据起始

执行分类时,您经常希望不仅可以预测类标签,还要获得相应标签的概率。这个概率给你一些预测的信心。一些模型可以给你差的概率估计,有些甚至不支持概率预测。校准模块允许您更好地校准给定模型的概率,或添加对概率预测的支持。

精确校准的分类器是概率分类器,其可以将predict_proba方法的输出直接解释为置信水平。例如,良好校准的(二进制)分类器应该对样本进行分类,使得在给出预测值近似为0.8的样本中,大约80%实际上属于正类。以下图表比较了校准不同分类器的概率预测的良好程度:

LogisticRegression默认情况下返回良好的校准预测,因为它直接优化了日志丢失。相反,其他方法返回偏向概率; 每种方法有不同的偏差:

  • GaussianNB往往将概率推到0或1(注意直方图中的计数)。这主要是因为它假设特征在给定类的情况下是有条件的独立的,在该数据集中不包含2个冗余特征。
  • RandomForestClassifier显示相反的行为:直方图显示大概为0.2和0.9概率的峰值,而接近0或1的概率非常少见。Niculescu-Mizil和Caruana [4]给出了解释:“从基本模型中平均预测的装袋和随机森林的方法可能难以在0和1附近进行预测,因为基础模型中的方差将应该接近零或偏离这些值的偏差预测。因为预测被限制在间隔[0,1],由方差引起的误差往往是靠近零和一的片面的。例如,如果一个模型应该预测一个案例的p = 0,装袋可以实现这一点的唯一方法是如果所有装袋树预测为零。如果我们在袋装平均的树上增加噪音,
  • 线性支持向量分类(LinearSVC)显示了更多的Sigmoid曲线作为RandomForestClassifier,它是最大边距方法的典型(比较Niculescu-Mizil和Caruana [4]),其重点是靠近决策边界的硬样本(支持向量)。

提供了两种用于执行概率预测校准的方法:基于Platt的S形模型的参数化方法和基于等张回归(sklearn.isotonic)的非参数方法。概率校准应在不用于模型拟合的新数据上进行。该类CalibratedClassifierCV使用交叉验证生成器,并针对列车样本上的模型参数和测试样本的校准进行每次拆分的估计。然后对折叠预测的概率进行平均。已经安装的分类器可以CalibratedClassifierCV通过参数cv =“prefit” 进行校准 。在这种情况下,用户必须手动注意模型拟合和校准的数据是不相交的。

以下图像展示了概率校准的好处。第一个图像呈现具有2个类和3个数据量的数据集。中间的斑点包含每个类的随机样本。这个斑点中样本的概率应该是0.5。

下面的图像使用没有校准的高斯朴素贝叶斯分类器,使用S形校准和非参数等渗校准来显示上述估计概率的数据。可以看出,非参数模型为中间样本提供了最准确的概率估计,即0.5。

对具有20个特征的100.000个样本(其中一个用于模型拟合)进行二进制分类的人工数据集进行以下实验。在20个功能中,只有2个是信息量,10个是冗余的。该图显示了使用逻辑回归获得的估计概率,线性支持向量分类器(SVC)和具有等渗校准和S形校准的线性SVC。校准性能用Brier评分进行评估brier_score_loss,在图例中报告(越小越好)。

这里可以观察到逻辑回归被很好地校准,因为其曲线几乎是对角线。线性SVC的校准曲线具有S形曲线,这对于不够自动的分类器是典型的。在LinearSVC的情况下,这是由铰链损失的边缘属性引起的,这使得模型集中在靠近决策边界的硬样本(支持向量)上。两种校准都可以解决这个问题,产生几乎相同的结果。下图显示了高斯朴素贝叶斯在相同数据上的校准曲线,具有两种校准,也没有校准。

可以看出,高斯朴素贝叶斯的表现非常差,但是以线性SVC的方式也是如此。尽管线性SVC呈现S形校准曲线,但高斯朴素贝叶斯校准曲线具有转置的乙状结构。这对于过于自信的分类器来说是典型的。在这种情况下,分类器的过度自信是由违反朴素贝叶斯特征独立假设的冗余特征引起的。

用等渗回归法校正高斯朴素贝叶斯概率可以解决这个问题,从近似对角线校准曲线可以看出。Sigmoid校准也略微改善了brier评分,尽管不如非参数等渗校准那样强烈。这是S形校准的固有限制,其参数形式假设为S形,而不是转置的S形曲线。然而,非参数等渗校准模型没有这样强大的假设,并且可以处理任何形状,只要有足够的校准数据。通常,在校准曲线为S形并且校准数据有限的情况下,S形校准是优选的,

CalibratedClassifierCV如果基本估计器可以这样做,也可以处理涉及两个以上类的分类任务。在这种情况下,分类器是以一对一的方式分别对每一类进行校准。当预测未知数据的概率时,分别预测每个类的校准概率。由于这些概率不一定总计一个,因此执行后处理以使它们归一化。

下一个图像说明了Sigmoid校准如何改变3类分类问题的预测概率。说明是标准的2单纯形,其中三个角对应于三个类。箭头从未校准的分类器预测的概率向量指向在保持验证集合上的S形校准之后由相同分类器预测的概率向量。颜色表示实例的真实类(红色:类1,绿色:类2,蓝色:类3)。

基本分类器是具有25个基本估计器(树)的随机森林分类器。如果这个分类器训练了所有800个训练数据点,它对其预测过于自信,从而造成大量的日志丢失。校准一个相同的分类器,其在600个数据点上训练,在剩余的200个数据点上使用method ='sigmoid'来减少预测的置信度,即将概率向量从单纯形的边缘向中心移动:

该校准导致较低的对数损失。请注意,替代方案是增加基本估计量的数量,这将导致对数损失类似的减少。

参考文献:

[1]从决策树和朴素贝叶斯分类器获得校准的概率估计,B.Zadrozny&C. Elkan,ICML 2001
[2]将分类器分数转换为准确的多类概率估计,B.Zadrozny&C. Elkan,(KDD 2002)
[3]支持向量机的概率输出和与正则化似然方法的比较,J. Platt,(1999)
[4]预测学习的良好概率,A. Niculescu-Mizil&R. Caruana,ICML 2005
  • 无标签