zoukankan      html  css  js  c++  java
  • 损失函数VS评估指标

    在利用机器学习模型解决问题时,涉及到模型构建以及模型评估时,存在两个重要的概念:

    1. 损失函数
    2. 评估指标

    本文对二者做一简要的明晰。

    损失函数

    机器学习多数算法都需要最大化或最小化一个函数,即“目标函数”。一般把最小化的一类函数称为“损失函数”。
    损失函数用于模型构建中(部分简单模型构建不需要损失函数,如KNN),所以它用于指导模型的生成。

    回归类型常用损失函数

    平均绝对值损失(MAE,L1损失)
    平方损失(MSE,L2损失)
    Huber损失

    分类类型常用损失函数

    交叉熵损失
    指数损失

    评估指标

    评估机器学习算法模型,有些问题中损失函数可以直接作为评价指标(如回归问题中,均方误差(MSE)既可以用来指导模型构建,又可以在模型完成后评估模型性能)
    评估指标用于模型构建后,所以它用于评价模型性能。

    回归类型常用评估指标

    平均绝对误差(Mean Absolute Error)
    均方误差(Mean Square Error)
    根均方误差(Root Mean Square Error)
    R Squared

    分类类型常用评估指标

    混淆矩阵
    Accuracy(准确率)
    Precision(精准率)
    Recall(召回率)
    ROC-AUC
    P-R曲线

    小例子

    1. 假设某同学备战高考,他给自己定下了一个奋斗的方向,即每周要把自己的各科总成绩提高5分;经过多年的准备,终于在高考中取得了好成绩(710分,总分750),被北大录取。
    2. 分析上面的例子,该同学“每周要把自己的各科总成绩提高5分”这个指导原则相当于目标函数,在这个指导原则的指引下,想必该同学的总分会越来越高,即模型被训练的越来越好。
    3. 最终,该同学高考成绩优异,相当于模型的测试效果良好,至于用从哪个角度评价这名同学,可以用其高考总分与750分的差距来衡量,也可以用其被录取的大学的水平来衡量,这就如同模型的评估指标是多种多样的,比如分类问题中的准确率、召回率等。
    4. 当然,模型的评估指标多样,模型的损失函数也是多样的;上例中,该同学可以将“每周要把自己的各科总成绩提高5分”作为指导原则,也可将“每周比之前多学2个知识点”作为指导原则。
    5. 另外,如果该同学将“每周模拟高考总分与750分的差距”同时作为指导原则与评价角度,则类似于线性回归模型将“MSE均方误差”同时作为损失函数与评估指标。
    6. 上例中,备考的“指导原则”相当于“损失函数”,“评价角度”相当于“评估指标”,该同学相当于一个机器学习模型。
  • 相关阅读:
    数据库插入
    c#里面调用python
    抓取最好大学网
    selenium抓取慕课课程
    excel合并
    网页抓取
    pyinstaller打包报错
    获取微信联系人
    c#部分类
    C#只读属性
  • 原文地址:https://www.cnblogs.com/pythonfl/p/13705143.html
Copyright © 2011-2022 走看看