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

在这里插入图片描述

机器学习算法(一)——分类
机器学习算法(二)——回归
机器学习算法(三)——异常检测

一、应用场景

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

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   support

           0       0.83      0.97      0.89     12770
           1       0.99      0.94      0.96     41711

    accuracy                           0.95     54481
   macro 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):预测值与真实值之间的绝对百分比误差的平均值。
    请注意,根据具体的应用场景和问题,这些评价指标的适用性可能会有所不同。你可能需要结合你的具体情况来选择最合适的评价指标。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

面对知识经济的发展,企业该如何做好知识管理?

面对知识经济的发展,企业犹如逆水行舟,不进则退,而知识管理已经成为了企业赖以生存和发展的关键。大家可能对知识经济这个词比较陌生,简单来说,知识经济就是指在经济活动中,知识的产生、获取、传播和应用成…

点石成金》》》从“沙粒”蜕变到“芯片”

每个半导体产品的制造都需要数百个工艺,Lam Research将整个制造过程分为八个步骤:晶圆加工-氧化-光刻-刻蚀-薄膜沉积-互连-测试-封装。 01 晶圆加工 所有半导体工艺都始于一粒沙子!因为沙子所含的硅是生产晶圆所需要的原材料。晶圆是…

C++ Qt开发:DateTime日期时间组件

Qt 是一个跨平台C图形界面开发库,利用Qt可以快速开发跨平台窗体应用程序,在Qt中我们可以通过拖拽的方式将不同组件放到指定的位置,实现图形化开发极大的方便了开发效率,本章将重点介绍QDateTime日期与时间组件的常用方法及灵活运用…

【评测脚本】agent资源监控

背景 在之前的文章中提到过,我们在测试过程中需要对机器的资源进行评测。在实际工作中,我们还会经常遇到的场景就是对于agent-server类型的业务,当部署完成后,需要对部署在机器上的agent进行资源占用的观测,不能舍本逐末,由于agent的异常资源占用,导致原有业务受机器资…

直播美颜SDK开发实战:从入门到精通

直播美颜SDK的应用已经成为许多直播平台和开发者关注的焦点。本文将带领读者深入探讨直播美颜SDK的开发实战,从入门到精通的过程。 1.引言 直播美颜SDK是一种集成了图像处理、人脸识别、滤镜算法等技术的开发工具包。通过使用该SDK,开发者能够为直播应…

酸奶店怎么做营销活动来引流,才能吸引顾客进店

今天我想和大家分享的是酸奶店怎么做营销活动来引流,才能吸引顾客进店。 本人经营酸奶店5年时间,以下活动方式都是我亲身经历过的,希望能给大家一些参考。 随着人们对健康饮食的追求不断提高,酸奶作为一种营养丰富、口感独特的食…

IDEA调整内存大小

一、IDEA开启内存显示 双击shift,搜索show memory indicator 打开后重启,右下角显示IDEA内存占用情况 开启后右下角会显示 二、调整内存 双击shift,搜索vmoption 修改-Xms和-Xmx参数,如下: -Xms:最小内存 -Xmx:最大内存 设置完成后&…

apt-mark工具介绍(标记或取消标记软件包,防止特定软件包被自动更新或删除)

文章目录 apt-mark工具深度解析1. apt-mark概述1.1 apt-mark定义1.2 apt-mark作用 2. apt-mark常用命令2.1 标记软件包为手动安装2.2 标记软件包为自动安装2.3 阻止软件包更新2.4 允许软件包更新 3. 疑难技术点解析3.1 如何查看软件包的标记状态3.2 如何解决软件包依赖性问题 4…

Python | 高斯分布拟合示例

什么是正态分布或高斯分布? 当我们绘制一个数据集(如直方图)时,图表的形状就是我们所说的分布。最常见的连续值形状是钟形曲线,也称为高斯分布或正态分布。 它以德国数学家卡尔弗里德里希高斯的名字命名。遵循高斯分布…

IDEA debug窗口左边工具栏隐藏与显示

今天在debug排查代码的时候一不小心点到哪里,结果变成这样 我们可以这样恢复,右键Debug 点击show Toolbar

python中else的细节

if-else 首先我们都知道else可以和if共同使用,如果if条件没有执行,就会去执行else语句 a100 if a100:print("if 语句执行了") else:print("else语句执行了") a10 if a100:print("if 语句执行了") else:print("else…

联想笔记本如何安装Vmware ESXi

环境: Vmware ESXi 8.0 Vmware ESXi 6.7 联想E14笔记本 问题描述: 联想笔记本如何安装Vmware ESXi 解决方案: 1.官网下载镜像文件 https://customerconnect.vmware.com/en/downloads/search?queryesxi%208 下载 2.没有账户注册一个 …

jmeter接口测试项目实战详解,零基础也能学

1.什么是jmeter? JMeter是100%完全由Java语言编写的,免费的开源软件,是非常优秀的性能测试和接口测试工具,支持主流协议的测试 2.jmeter能做什么? 1.JMeter是100%完全由Java语言编写的软件性能测试的GUI的测试工具&…

mysql 5.7.34升级到5.7.44修补漏洞

mysql 5.7.34旧版本,漏扫有漏洞,升级到最新版本 旧版本5.7.34在 /home/mysql/mysql中安装 备份旧版本数据还有目录 数据库备份升级 tar -xf mysql-5.7.44-el7-x86_64.tar #覆盖旧版本数据库文件 #注意看看文件是否和你起服务的用户一样 \cp -r mysql-5…

C语言之⽂件操作

一为啥需要文件? 如果没有⽂件,我们写的程序的数据是存储在电脑的内存中,如果程序退出,内存回收,数据就丢失了,等再次运⾏程序,是看不到上次程序的数据的,如果要将数据进⾏持久化的保…

JOSEF 组合中间继电器 RXMM1-RK214003 DC220V 不带底座

系列型号 RXMM1 RK 214 002组合中间继电器;RXMM1 RK 214 003组合中间继电器; RXMM1 RK 214 004组合中间继电器;RXMM1 RK 214 005组合中间继电器; RXMM1 RK 214 006组合中间继电器; 1 用途 RXMM1系列组合中间继电器用于电力系统二次回路及…

【C语言(十三)】

自定义类型:结构体 一、结构体类型的声明 1.1、结构体回顾 结构是⼀些值的集合,这些值称为成员变量。结构的每个成员可以是不同类型的变量。 1.1.1、结构的声明 例如描述⼀个学生: struct Stu {char name[20];//名字int age;//年龄c…

使用Axure RP结合内网穿透工具制作本地静态web页面并实现公网访问

作者简介: 懒大王敲代码,正在学习嵌入式方向有关课程stm32,网络编程,数据结构C/C等 今天给大家讲解使用Axure RP结合内网穿透工具制作本地静态web页面并实现公网访问,希望大家能觉得实用! 欢迎大家点赞 &am…

ubuntu下搜索文件的几种方法

一、whereis命令: whereis命令只能用于程序名的搜索,而且只搜索二进制文件(参数-b)、man说明文件(参数-m)和源代码文件(参数-s)。如果省略参数,则返回所有信息。 whereis的命令格式: whereis [-bmsu] [BMS 目录名 -f ] 文…

浅析:智能化视频安全监管系统的设计与实现步骤

关于智能化视频监管方案,小编已经和大家分享了很多,今天就和大家来探讨一下关于智能化视频安全监管系统的设计与实现步骤。 首先需要分析需求。要与使用者和业务部门合作,明确系统的功能和需求,例如,确定监控区域、安…