博客
关于我
朴素贝叶斯-可靠性曲线-朴素贝叶斯和SVC预测概率的效果各方面都不如逻辑回归
阅读量:666 次
发布时间:2019-03-15

本文共 2251 字,大约阅读时间需要 7 分钟。

如果贝叶斯模型在分类任务中的表现不如支持向量机(SVC)和逻辑回归(Logistic Regression),而我们又不愿意独独替换模型,那么应该如何处理?一种可行的解决方案是采用贝叶斯模型本身的特性进行调整——通过精确度(accuracy)作为评估标准来微调参数。

然而,贝叶斯模型独特的预测机制意味着它的参数调整方式与传统模型(如SVC或逻辑回归)截然不同。传统模型通常可以通过参数大小(如Regularization Parameter C)来控制模型的泛化能力和预测稳定性,而贝叶斯模型则依赖概率预测的质量来调整模型表现。实际上,贝叶斯模型本身并没有传统意义上的可调参数,因为其原理简单直接:基于先验分布和事实依据进行后验估计。大多数贝叶斯模型的预测结果倾向于服从概率分布,所以如果预测结果偏离真实概率分布,需要采用其他方法进行校准。

贝叶斯模型的概率预测问题

贝叶斯模型的目标是根据数据估计真实概率分布,而不是直接分类。然而,实际应用中,贝叶斯模型的预测概率可能会与真实概率分布存在偏差。这一点可以通过可靠性曲线(Reliability Curve)来观察和修正。

可靠性曲线是将真实标签(如0和1)与模型预测的概率对应起来,通常绘制为预测概率(x轴)与真实标签(y轴)的散点图。理想情况下,这些点应该沿着对角线(y=x)分布。如果可靠性曲线远离对角线,说明预测概率与真实概率存在偏差。

为了绘制可靠性曲线,只需使用真实标签和模型预测的概率分值。例如,使用以下代码可实现:

from sklearn.calibration import calibration_curveimport matplotlib.pyplot as pltimport numpy as npdef plot_reliability_curve(y_true, y_pred_prob):    _, axis = plt.subplots()    axis.plot([0, 1], [0, 1], 'k--')  # 画出完美校准的直线    # 绘制真实标签与预测概率的散点图    axis.scatter(y_pred_prob, y_true)    axis.set_xlabel('Predicted Probability')    axis.set_ylabel('True Label')    axis.set_xlim(-0.05, 1.05)    axis.legend()    plt.show()

校准概率的方法

要提高贝叶斯模型的概率预测质量,需要采用概率校准技术。校准过程通常包括以下几个步骤:

  • 数据分箱:将数据按照预测概率的值分成若干个区间。常见的做法是分成相同数量的区间(如10个区间)。
  • 计算真实概率:在每个区间中,计算真实标签为1的样本占比作为该区间的真实概率(True Probability)。
  • 校准预测概率:对每个区间中的预测概率进行调整,使得预测概率的平均值等于该区间的真实概率。
  • ###eldon径校准方法校准方法根据具体需求有多种,包括:

  • Isotonic Regression:这种方法通过去除预测概率的偏差,使得校准后的预测概率更接近真实概率分布。它类似于管道法,不会引入过多的扰动。
  • Sigmoid函数校准:通过对预测概率进行非线性变换,使其更接近于真实概率分布。这种方法通常用于保持预测概率的分布形状。
  • 选择哪种校准方法取决于实际需求。如果需要保持预测概率的平滑性和稳定性,Isotonic Regression可能是更好的选择。这种方法能够有效降低布里尔分数(Brier Score Loss)同时尽量保持预测的准确性。

    实施校准的效果

    通过实验观察发现,Isotonic Regression对贝叶斯模型的校准效果显著。例如,高斯贝叶斯模型在原始状态下表现出严重的预测概率偏差,预测概率集中在0和1附近,但数值却对应的是低 CONFIDENCE 的预测。通过Isotonic Regression校准后,预测概率更加均匀分布,从而显著降低了布里尔分数。而直方图显示,校准后的预测概率分布更加平滑,没有出现集中在决策边界附近的情况。

    总结来说,贝叶斯模型的优势在于其概率预测的理论基础,但在实际应用中,预测概率可能会因数据分布和模型假设的误差而偏离真实概率分布。通过概率校准技术,可以有效改善这种偏差,从而提高模型的预测质量。当然,这种校准方法会有一定的折衷——虽然能提高预测的可靠性,但可能会略微降低分类的准确率。因此,选择哪种校准方法最终需要根据具体应用场景进行权衡。用户可以根据需求选择适合的校准方式,并将结果对照分析,以确保最优的模型性能。

    参考文献:

    • Bishop, C. M. (2006). Pattern Recognition and Machine Learning. Springer.
    • Hastie, T., Tibshirani, R., & Friedman, J. H. (2009). The Elements of Statistical Learning. Springer.
    • van der Maaten, L., &.plusclass (2013). Probabilistic Linear Classification. Journal of Machine Learning Research.

    转载地址:http://ntrmz.baihongyu.com/

    你可能感兴趣的文章
    Node响应中文时解决乱码问题
    查看>>
    node基础(二)_模块以及处理乱码问题
    查看>>
    node安装卸载linux,Linux运维知识之linux 卸载安装node npm
    查看>>
    node安装及配置之windows版
    查看>>
    Node实现小爬虫
    查看>>
    Node提示:error code Z_BUF_ERROR,error error -5,error zlib:unexpected end of file
    查看>>
    Node提示:npm does not support Node.js v12.16.3
    查看>>
    Node搭建静态资源服务器时后缀名与响应头映射关系的Json文件
    查看>>
    Node服务在断开SSH后停止运行解决方案(创建守护进程)
    查看>>
    node模块化
    查看>>
    node模块的本质
    查看>>
    node环境下使用import引入外部文件出错
    查看>>
    node环境:Error listen EADDRINUSE :::3000
    查看>>
    Node的Web应用框架Express的简介与搭建HelloWorld
    查看>>
    Node第一天
    查看>>
    node编译程序内存溢出
    查看>>
    Node读取并输出txt文件内容
    查看>>
    node防xss攻击插件
    查看>>
    noi 1996 登山
    查看>>
    noi 7827 质数的和与积
    查看>>