• 机器学习 day34(机器学习项目的完整周期、精确度和召回率、F1)


    1. 机器学习项目的完整周期
      在这里插入图片描述
    • 第一步,决定项目是什么。第二步,收集数据。第三步,训练模型,进行错误分析并改进模型,可能会回到第二步。第四步,当模型足够好后,部署在生产环境中,继续监控性能并维护模型,以防性能下降,可能会回到第二步或第三步。
      在这里插入图片描述
    • 部署在生产环境中的常见方法:将模型部署在服务器中,并在应用程序中通过API调用,最后返回模型的预测
    • 根据生产环境是服务于少数几个用户还是几百万个用户,软件工程的需求也有所不同:确保可靠和有效的预测输出,大量用户的扩展,记录用户输入输出数据,系统监控,模型更新等。
    1. 精确度和召回率
      在这里插入图片描述
    • 对于倾斜数据集(正面例子比反面例子不是50:50),我们通常不使用分类错误,而使用其他错误度量(精确度、召回率)来衡量模型的表现
    • 如上图,对于只有0.5%的人患有罕见病的情况,如果我们的模型的分类错误率有1%,而一个只会输出y=0的模型的分类错误率却仅有0.5%,这很明显我们的模型还是能判断出一些罕见病,因此表现要比只会输出y=0的模型要好,但通过分类错误值却不容易判断
      在这里插入图片描述
    • 左图为混淆矩阵,分别将真实分类和预测分类填入矩阵中,四个区域分别为:真阳性(True positive),真阴性(True negative),假阳性(False positive),假阴性(False negative)
    • 精确度为在所有我们预测y=1的例子中,真正为y=1的概率有多少。即 True positive / Predicted Class
    • 召回率为在所有真正为y=1的例子中,我们预测y=1的概率有多少。即True positive / Actual Class
    • 如果该模型一个y=1的例子都预测不出来,那我们说该模型的精确度为零,虽然此时精确度为 0 / 0 无定义
    • 零召回率和零精确度都能表示该模型不是一个很好的模型,所以我们要求召回率和精确度都很高
    • Precision很高:说话靠谱,Recall很高:遗漏很少
      在这里插入图片描述
    • 我们可以通过取不同的阈值,来选择不同的精确度和召回率。
    • 通常对大多数学习算法来说,当阈值越高,精确度越高,召回率越低;当阈值越低,精确度越低,召回率越高。
    1. F1分数
      在这里插入图片描述
    • 如果通过精确度和召回率不容易判断模型的好坏,我们可以合并精确度和召回率,即取它俩的调和平均数(F1),通过F1的值来判断模型的好坏
    • 调和平均数是强调较小值的平均数
  • 相关阅读:
    MATLAB环境下基于离散小波变换的体外血管图像处理
    huffman编码
    Ubuntu 22.04.3 LTS安装Docker并配置镜像加速器
    LeetCode中等题之分数加减运算
    小乌龟,git使用教程,gitLab打版教程
    C和指针 第14章 预处理器 14.4 文件包含
    如何做好软件本地化翻译服务
    [媒体宣传]上海有哪些可以邀约的新闻媒体资源汇总
    ChatGPT、AIGC、大语言模型都是啥?
    生成多样、真实的评论(2019 IEEE International Conference on Big Data )
  • 原文地址:https://blog.csdn.net/u011453680/article/details/132915610