zoukankan      html  css  js  c++  java
  • 性能评估指标

    机器学习性能评估指标

    TP、TN、FP、FN

    FN:False(假的) Negative(反例),模型判断样本为负例,但模型判断错了,事实上是正样本。(漏报率)
    FP:False(假的) Positive(正例),模型判断样本为正例,但模型判断错了,事实上是负样本。(误报率)
    TN:True(真的) Negative(负例),模型判断样本为负例,事实上也是负样本,模型的判断是对的。
    TP:True(真的) Positive(正例),模型判断样本为正例,事实上也是正样本,模型判断是对的。

    Precision

    中文叫做精确率/查准率,表示模型认为的正例(TP+FP)中,真正判断正确的比例。

    $$P=frac{TP}{TP+FP}$$

    Recall

    中文叫做召回率/查全率,表示样本真实的正例(TP+FN)中,真正判断正确的比例。

    $$frac{TP}{TP+FN}$$

    P-R曲线

    以查准率为纵轴,以查全率为横轴画出来的曲线。

     

    F-Measure

    是精确率和召回率的调和平均

    $$F=frac{(alpha^{2}+1)P*R}{alpha^{2}(P+R)}$$

    当$alpha=1$时,记为F1指标:

    $$F1=frac{2PR}{P+R}$$

    ROC、AUC

    另开一贴,见:https://www.cnblogs.com/4PrivetDrive/p/15164365.html

    平方根误差 RMES

    平方根误差也叫做RMSE。在实际情况中,如果出现一些偏离程度非常大的离群点时,RMSE就会变得非常差。

    解决方法:

    1)如果我们认定这些离群点是“噪声点”的话,就需要在数据预处理的阶段把这些噪声点过滤掉;

    2)如果不让我这些离群点是“噪声点”,就需要进一步提高模型的预测能力,将离群点产生的机制建模进去;

    3)找一个更合适的指标来评估该模型。关于评估指标,其实是存在比RMSE的鲁棒性更好的指标,比如平均绝对百分误差MAPE(mean absolute percent error),相比于RMSE,MAPE相当于把每个点的误差进行了归一化,降低了个别离群点带来的绝对误差的影响。

    平均绝对误差 MAE

    是绝对误差的平均值,可以更好的反映预测值误差的实际情况。

    $$MAE(X,h)=frac{1}{m}sum_{i=1}^{m}|h(x_{i}) - y_{i}|$$

    模型评估中的验证方法

    (1)Holdout检验:

      直接将原始的样本集合随机划分成训练集和验证集两部分。比方说,对于一个点击量预测模型,我们把样本按照70%~30%的比例分成两部分,70%的样本用于模型训练;30%的样本用于模型验证,包括绘制ROC曲线、计算精确率和召回率等指标来评估模型性能;

      缺点:在验证集上计算出来的最后评估指标与原始分组有很大的关系

    (2)交叉验证

      K-fold交叉验证:首先将全部样本划分成k个大小相等的样本子集;一次遍历这k个子集,每次把当前子集作为验证集,其余所有子集作为训练集,进行模型的训练和评估;最后把k次评估指标的平均值作为最终的评估指标。在实验中,k经常取10.

      留一验证:每次留下一个样本作为验证集,其余所有样本作为测试集。在样本总数较多的情况下,留一验证的时间开销极大.

      留p验证:每次留下p个样本作为验证集,而从n个元素中选择p个元素有Cnp种可能,因此它的时间开销更是远远高于留一验证。

    (3)自助法

       基于自助采样法的校验方法。对于总数为n的样本集合,进行n次有放回的随机抽样,得到大小为n的训练集。n次抽样过程中,有的样本会被重复采样,有的样本没有被抽出过,将这些没有被抽出的样本作为验证集,进行规模验证。

  • 相关阅读:
    HYSBZ 3813 奇数国
    HYSBZ 4419 发微博
    HYSBZ 1079 着色方案
    HYSBZ 3506 排序机械臂
    HYSBZ 3224 Tyvj 1728 普通平衡树
    Unity 3D,地形属性
    nginx 的naginx 种包含include关键字
    Redis 出现NOAUTH Authentication required解决方案
    mysql 8.0出现 Public Key Retrieval is not allowed
    修改jar包里的源码时候需要注意的问题
  • 原文地址:https://www.cnblogs.com/4PrivetDrive/p/12174030.html
Copyright © 2011-2022 走看看