美文网首页
如何评价算法的好坏

如何评价算法的好坏

作者: 老姚记事本 | 来源:发表于2020-03-08 20:44 被阅读0次

    机器学习是基于统计原理的预测。

    如何判断?判断正确数与总数的比率?
    这种做法有缺陷,比如一堆人里预测癌症患者,因为发病率低,只需要都认为没有癌症,准确率就能达到很高。

    混淆矩阵,准确率,精准率,召回率

    混淆矩阵

    预测1 预测0
    实际1 11(TP) 10(FP)
    实际0 01(FN) 00(TN)

    P:Postive
    N: Negative

    准确率

    准确率=(TP+TN)/(TP+TN+FP+FN)
    开篇写了,会有问题

    精准率

    精准率(Precision)=TP/(TP+FP)
    预测为正的样本的正确率,类似假设检验的检验水平

    召回率

    召回率(Recall)=TP/(TP+FN)
    实际为正样本中,被揪出来的概率,类似假设检验的power

    P-R曲线(查准率-查全率)

    F1分数

    我们希望差准率和查全率都比较高,需要找到一个平衡点,引入新指标:
    F1分数 = 2*查准率*查全率 / (查准率 + 查全率)
    F1 Score 是精准率和召回率的调和平均值

    ROC/AUC的概念

    1. 灵敏度,特异度,真正率,假正率

    灵敏度(Sensitivity)= TP/(TP+FN) = 召回率 = 真阳性率(TPR)
    特异度(Specificity)= TN/(FP+TN)
    假阳性率(FPR)= 1- 特异度 = FP/(FP+TN)

    2. ROC(接受者操作特征曲线)

    ROC曲线
    ROC曲线(Receiver Operation Characteristic Cureve),描述TPR和FPR之间的关系。

    3. AUC(曲线下面积)

    ROC曲线下面积,称为AUC(Area Under Curve)

    思考

    • 电商平台拿到一部分奢侈品用户数,并以此为训练集和测试集,训练和测试奢侈品用户的分类模型,分类准确率超过了95%。实际使用中,该模型还是把大部分广告投放给了非奢侈品用户,可能是什么原因造成的?

    训练集中购买奢侈品的用户占比太少,数据偏斜严重,准确率没有意义。

    • 什么是ROC曲线?如何绘制ROC曲线?

    ROC描述TPR和FPR之间的关系,有点类似为检出率和付出的矫枉过正的代价。ROC绘制时,遍历所有阈值,求TPR和FPR做为坐标绘制。

    • ROC曲线相比P-R曲线有什么特点?

    P-R横坐标正面指标,ROC横坐标是负面指标。

    ROC同时考虑了正例和负例,因此适用于评估分类器整体的效能,而PR曲线专注于正例,若是在类别平均且正例及负例的判断都重要情况下,ROC曲线是不错的选择。
    由于ROC曲线的X轴使用了FPR,在类别不平均的情况下(负样本较多),使得FPR的增长会被稀释,会导致ROC曲线呈现出过度乐观的结果,因此在类别不平均情况下,PR曲线会是较好的选择。

    相关文章

      网友评论

          本文标题:如何评价算法的好坏

          本文链接:https://www.haomeiwen.com/subject/rzqkdhtx.html