机器学习算法应用场景与评价指标

在这里插入图片描述

一、应用场景

机器学习的算法选择大部分依赖于具体的问题类型和数据特征。下面是一些典型的场景以及对应的常用算法:

1.二元分类问题

当你的目标变量只有两个类别时,如垃圾邮件过滤(垃圾邮件/非垃圾邮件)、患者疾病诊断(疾病/健康)等。常用的算法包括逻辑回归、支持向量机、朴素贝叶斯、随机森林、梯度提升机等。

2.多元分类问题

当你的目标变量有超过两个类别时,如手写数字识别、新闻文章分类等。常用的算法包括K近邻、决策树、随机森林、梯度提升机、神经网络等。

3.回归问题

当你的目标变量是连续的数值时,如预测房价、预测销售额等。常用的算法包括线性回归、决策树回归、随机森林回归、梯度提升回归、神经网络回归等。

4.聚类问题

当你想将数据分为若干组,且这些组内的数据相似,组间的数据不同时,如用户行为分群、新闻文章分群等。常用的算法包括K-Means、层次聚类、DBSCAN、谱聚类等。

5.异常检测

当你需要在数据中检测出不符合预期或者与众不同的点时,如信用卡欺诈检测、工业设备故障检测等。常用的算法包括基于统计的异常检测、基于距离或者密度的异常检测如LOF(Local Outlier Factor)、孤立森林等。

6.推荐系统

当你想根据用户的历史行为或者属性来推荐物品时,如电影推荐、广告推荐等。常用的算法包括协同过滤(包括用户基于和物品基于)、矩阵分解、深度学习推荐模型等。

7.强化学习

当你需要让机器根据与环境的交互来学习最佳策略时,如游戏AI(如AlphaGo)、机器人导航等。常用的算法包括Q-learning、SARSA、Deep Q Network、Policy Gradient等。
请注意,选择最佳的机器学习算法通常需要进行多次试验和调整,以确定哪种算法在特定问题上表现最好。此外,特征工程的质量、模型参数的调整以及数据的预处理也将大大影响模型的性能。

二、模型评价

以下是各种机器学习任务常用的模型评价指标:

1.分类任务

对于二元或者多元分类任务,以下是一些常见的评价指标:
TP(True Positive)是真正类,即正确预测的正样本数;
TN(True Negative)是真负类,即正确预测的负样本数;
FP(False Positive)是假正类,即错误预测的正样本数(实际为负);
FN(False Negative)是假负类,即错误预测的负样本数(实际为正)。

  • 准确率 (Accuracy):所有预测正确的样本数占样本总数的比例。
    Accuracy = (TP + TN) / (TP + TN + FP + FN)
  • 精确率 (Precision):预测为正且预测正确的样本数占预测为正的样本总数的比例,是关注假阳性(被错误地标记为正类)的一个指标。
    Precision = TP / (TP + FP)
  • 召回率 (Recall):预测为正且预测正确的样本数占真正正类样本总数的比例,是关注假阴性(被错误地标记为负类)的一个指标。
    Recall = TP / (TP + FN)
  • F1 分数:精确率和召回率的调和平均值,适用于类别不平衡的情况。
    F1 Score = 2 * (Precision * Recall) / (Precision + Recall)
  • AUC-ROC:ROC 曲线下的面积,反映的是分类器对样本的排序能力,即无论阈值设定为何值,总体上看分类器对样本的识别能力如何。
    FPR = FP / (FP + TN)
    TPR = TP / (TP + FN)
  • 混淆矩阵/classification_report:一个表格,用于描述分类模型的性能,表格中的每一行代表模型预测的类别,每一列代表实际的类别。
          precision    recall  f1-score   support0       0.83      0.97      0.89     127701       0.99      0.94      0.96     41711accuracy                           0.95     54481macro avg       0.91      0.95      0.93     54481
weighted avg       0.95      0.95      0.95     54481
  • KS值
    KS值越大,表示模型能够将正、负客户区分开的程度越大。通常来讲,KS>0.2即表示模型有较好的预测准确性。

  • ROC曲线
    ROC的全称是“受试者工作特征”(Receiver Operating Characteristic)曲线,用来评判分类、检测结果的好坏。

  • AUC值
    AUC(Area Under Curve)就是ROC曲线下的面积大小,它能够量化地反映基于ROC曲线衡量出的模型性能。AUC的取值一般在0.5和1之间,AUC越大,说明分类器越可能把实际为正的样本排在实际为负的样本的前面,即正确做出预测。

2.回归任务

对于回归任务,常用的评价指标主要有:

  • 均方误差 (MSE):预测值与真实值的平方差的平均值。
    MSE = (1/n) * Σ(yi - ŷi)²
    其中,n 是样本数量,yi 是实际值,ŷi 是预测值。这个指标度量了模型预测值和实际值的平均平方差异。
    越接近 0 表示模型越好。
  • 均方根误差 (RMSE):预测值与真实值的平方差的平均值的平方根。
    RMSE = sqrt(MSE)
    RMSE 是 MSE 的平方根。相比于 MSE,RMSE 的量纲和原始目标变量一致,因此更容易解释
  • 平均绝对误差 (MAE):预测值与真实值之间的绝对值的平均值。
    MAE = (1/n) * Σ|yi - ŷi|
    MAE 表示的是模型预测值和实际值的平均绝对差异。MAE 相比于 MSE 或 RMSE,对于异常值不敏感。
  • R-squared:解释变量能解释的因变量的变异程度。
    R² = 1 - [ Σ(yi - ŷi)² / Σ(yi - ymean)² ]
    其中,ymean 是 y 的平均值。R² 分数(也叫确定系数)度量的是模型预测的目标变量的方差占总方差的比例。
    R² 值越接近 1,表示模型越好。

3.聚类任务

对于聚类任务,常用的评价指标主要有:

  • 轮廓系数 (Silhouette Coefficient):一个样本与同簇的其他样本的距离的平均值和该样本与其他最近簇的样本的平均距离的比值。
  • Davies-Bouldin Index:簇间的平均距离与簇内的平均距离的比值。
  • Rand Index:所有样本对的正确分类与总样本对数的比值。

4.异常检测

对于异常检测任务,常用的评价指标主要有:

  • Precision@k:在排名前 k 的样本中,真正的异常样本所占的比例。
  • ROC-AUC:如上所述,ROC 曲线下的面积。
    5.时间序列预测
    对于时间序列预测任务,常用的评价指标主要有:
  • 均方误差 (MSE):预测值与真实值的平方差的平均值。
  • 均方根误差 (RMSE):预测值与真实值的平方差的平均值的平方根。
  • 平均绝对误差 (MAE):预测值与真实值之间的绝对值的平均值。
  • 平均绝对百分比误差 (MAPE):预测值与真实值之间的绝对百分比误差的平均值。
    请注意,根据具体的应用场景和问题,这些评价指标的适用性可能会有所不同。你可能需要结合你的具体情况来选择最合适的评价指标。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/217015.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

医院污水处理设备远程监控超标报警解决方案

行业背景 近年来,我国医疗机构建设得到了巨大的发展。根据《2022年我国卫生健康事业发展统计公报》,2022年末,全国医疗卫生机构总数达1032918个。截至2022年10月,根据全国排污许可证管理信息平台,共有 13316家医院核发…

UE引擎 LandscapeGrass 实现机制分析(UE5.2)

前言 随着电脑和手机硬件性能越来越高,游戏越来越追求大世界,而大世界非常核心的一环是植被,目前UE5引擎提供给植被生成的主流两种方式为 手刷植被和LandscapeGrass(WeightMap程序化植被)。当然UE5.3推出新一代PCGFramework 节点程序化生成框…

Halcon reduce_domain和scale_image的作用

在Halcon中,reduce_domain是用于缩小图像域(Image Domain)的操作。 它的作用是通过指定一个感兴趣区域(ROI,Region of Interest),将图像数据限制在该区域内,从而实现对图像进行裁剪…

领导力的3个常见误区,你可能中了其中之一

什么是领导力? 领导力是组织和团队成功的关键。在一个不断变化的商业环境中,理解领导力的本质至关重要。这篇文章将揭示有关领导力的三个常见误解,帮助读者更清晰地认识领导者的角色。 关于领导力的常见误解 人们对领导力的理解经常受到错…

如何使用bash写脚本

本章主要介绍如何使用bash写脚本。 了解通配符了解变量了解返回值和数值运算数值的对比判断语句循环语句 grep的用法是“grep 关键字 file”,意思是从file中过滤出含有关键字的行。 例如,grep root /var/log/messages,意思是从/var/log/me…

在做题中学习(33):只出现一次的数字 II

137. 只出现一次的数字 II - 力扣(LeetCode) 思路: 1.首先想到出现三次的数,它们仨的任意一位都是相同的(1/0) 2.可以发现出现三次的数的某一位和a某一位在所有情况下%3最后的结果都和a的那一位相同&…

【PyTorch】卷积神经网络

文章目录 1. 理论介绍1.1. 从全连接层到卷积层1.1.1. 背景1.1.2. 从全连接层推导出卷积层 1.2. 卷积层1.2.1. 图像卷积1.2.2. 填充和步幅1.2.3. 多通道 1.3. 池化层(又称汇聚层)1.3.1. 背景1.3.2. 池化运算1.3.3. 填充和步幅1.3.4. 多通道 1.4. 卷积神经…

抖店商品卡流量怎么做?附实操玩法解析及案例分享!

我是电商珠珠 在抖店中,我们会看到一些店铺从来都不直播,官方账号的作品很少,但是他的店铺GMV依旧过万。 其实这就是抖音的货架电商所带来的优势,抖音现在主要由两部分组成,一部分是内容场,就是咱们平时刷…

SpringBoot整合MongoDB详解

SpringBoot——整合MongoDB详解 注意: MongoDB默认是本机访问 需要开启远程访问 window修改如下 linux 修改如下 /usr/local/mongodb4/mongodb.conf 详细内容 dbpath/data/mongodb4/mongo #数据文件保存地址 logpath/data/mongodb4/log/mongod.log #日志保存地址…

架构设计系列之基础:初探软件架构设计

11 月开始突发奇想,想把自己在公司内部做的技术培训、平时的技术总结等等的内容分享出来,于是就开通了一个 Wechat 订阅号(灸哥漫谈),开始同步发送内容。 今天(12 月 10 日)也同步在 CSDN 上开通…

mysql字段设计规范:使用unsigned(无符号的)存储非负值

如果一个字段存储的是数值,并且是非负数,要设置为unsigned(无符号的)。 例如: 备注:对于类型是 FLOAT、 DOUBLE和 DECIMAL的,UNSIGNED属性已经废弃了,可能在mysql的未来某个版本去…

AI隆重软件,AI原创文章隆重软件

随着信息量的急剧增加,许多写作者、网站管理员和内容创作者们纷纷感受到了文章降重的压力。原始文本的降重,需要保留关键信息的同时避免重复,这是一项既繁琐又耗时的任务。 改写软件的批量降重功能 147SEO改写软件在降重领域的卓越表现主要体…

常见SSL证书都有哪些格式

常见Web服务软件 常见的Web服务软件,通常都基于OpenSSL和Java两种基础密码库。 Tomcat、Weblogic、JBoss等Web服务软件,一般使用Java提供的密码库。通过Java Development Kit(JDK)工具包中的Keytool工具,生成Java Ke…

android studio 按键点击事件的实现方法

一、onClick属性&#xff1a; 1&#xff09;、在activity_main.xml中设置button的onClick属性&#xff1a; <Buttonandroid:id"id/button"android:layout_width"wrap_content"android:layout_height"wrap_content"android:text"开灯&q…

SpringCloud系列(三)| 集成Nacos注册中心

好了万事具备&#xff0c;接下来我们就开始搭建我们SpringCloud项目。本章节我们先来搭建我们SpringCloud项目框架&#xff0c;然后开发两个服务&#xff0c;把他们注册到Nacos注册中心中。上一章节我们已经介绍了Nacos是可以作为注册中心和配置中心的&#xff0c;这一章节我们…

Linux centos8安装JDK1.8、tomcat

一、安装jdk 1.如果之前安装过jdk&#xff0c;先卸载掉旧的 rpm -qa | grep -i jdk 2.检查yum中有没有java1.8的包 yum list java-1.8* 3.yum安装jdk yum install java-1.8.0-openjdk* -y 4.验证 二、安装tomcat Index of /tomcat 可以在这里选择你想要安装的tomcat版本…

【unity实战】一个通用的FPS枪支不同武器射击控制脚本

文章目录 前言模型素材文章用到的粒子火光特效射击效果换弹瞄准开枪抖动效果设置显示文本最终代码不同武器射击效果1. 手枪2. 机枪3. 狙击枪4. 霰弹枪5. 加特林 其他感谢完结 前言 实现FPS枪支不同武器效果&#xff0c;比如手枪&#xff0c;喷子&#xff0c;狙击枪&#xff0c…

ISCTF2023 Reverse方向 WP

文章目录 ReversecrackmeEasyRebabyReeasy_z3FloweyRSAeasy_flower_teamfx_rez3_revengeWHERE Reverse crackme 、 加了UPX壳&#xff0c;可以看到EP Section处UPX标识被修改了 用WinHex修改 之后UPX脱壳 得到flag。 EasyRe 逆向一下&#xff0c;先逆序&#xff0c;再做一些…

机器人行业数据闭环实践:从对象存储到 JuiceFS

JuiceFS 社区聚集了来自各行各业的前沿科技用户。本次分享的案例来源于刻行&#xff0c;一家商用服务机器人领域科技企业。 商用服务机器人指的是我们日常生活中常见的清洁机器人、送餐机器人、仓库机器人等。刻行采用 JuiceFS 来弥补对象存储性能不足等问题。 值得一提的是&am…

godot 报错Unable to initialize Vulkan video driver解决

版本 godot 4.2.1 现象 godot4.2.1 默认使用vulkan驱动&#xff0c;如果再不支持vulkan驱动的主机上&#xff0c;进入引擎编辑器将报错如下 解决 启动参数添加 –rendering-driver opengl3 即可进入引擎编辑器 此时运行项目仍然会报错无法初始化驱动 在项目设置中配置编…