当前位置: 首页 > news >正文

华为面试题及答案——机器学习(二)

21. 如何评价分类模型的优劣?

(1)模型性能指标

  1. 准确率(Accuracy)

    • 定义:正确分类的样本数与总样本数之比。
    • 适用:当各类样本的数量相对均衡时。
  2. 精确率(Precision)

    • 定义:预测为正类的样本中实际为正类的比例。
    • 适用:当关注假阳性错误的成本较高时(例如垃圾邮件检测)。
  3. 召回率(Recall)

    • 定义:实际为正类的样本中被正确预测为正类的比例。
    • 适用:当关注假阴性错误的成本较高时(例如疾病检测)。
  4. F1得分(F1 Score)

    • 定义:精确率和召回率的调和平均数。
    • 适用:当需要平衡精确率和召回率时。
  5. ROC曲线(Receiver Operating Characteristic Curve)和AUC(Area Under the Curve)

    • 定义:ROC曲线是以假阳性率为横轴、真正率为纵轴绘制的曲线,AUC是该曲线下的面积。
    • 适用:用于评估模型在不同阈值下的表现。
  6. PR曲线(Precision-Recall Curve)和AUC-PR

    • 定义:PR曲线是以召回率为横轴、精确率为纵轴绘制的曲线,AUC-PR是该曲线下的面积。
    • 适用:特别适合于类别不平衡的情况。

(2)其他考虑因素

  1. 模型复杂度

    • 简单模型(如线性模型)易于理解和解释,但可能无法捕捉复杂的模式。
    • 复杂模型(如深度神经网络)能够捕捉复杂模式,但可能难以解释和调试。
  2. 训练时间和推理时间

    • 训练时间:模型从数据中学习的时间。复杂模型通常需要更长的训练时间。
    • 推理时间:模型进行预测的时间。在实时应用中,较短的推理时间是优点。
  3. 模型的可解释性

    • 可解释性:模型结果的透明度和理解度。在某些领域,如医疗和金融,可解释性是非常重要的。
  4. 鲁棒性和稳定性

    • 鲁棒性:模型应对噪声和异常值的能力。
    • 稳定性:模型在不同的数据集或样本上的一致性表现。

(3)综合评价

  1. 交叉验证

    • 使用交叉验证(如k折交叉验证)可以更可靠地评估模型性能,减少过拟合的影响。
  2. 混淆矩阵

    • 通过混淆矩阵(Confusion Matrix)可以详细了解模型的分类错误类型,包括真阳性、真阴性、假阳性和假阴性。
  3. 业务目标和应用场景

    • 根据具体的业务目标和应用场景选择合适的评价指标和模型。例如,在医疗诊断中,召回率可能比准确率更重要。

(4)实际应用中的权衡

在实际应用中,通常需要在不同的评价指标之间进行权衡。例如:

  • 在类别不平衡的情况下,更倾向于使用F1得分、AUC-PR等指标。
  • 对于需要实时预测的应用,更关注模型的推理时间。
  • 在高度监管的领域(如金融或医疗),模型的可解释性可能比纯粹的性能指标更重要。

22.如何评价回归模型的优劣 ?

  • 均方误差(Mean Squared Error, MSE)

    • 定义:预测值与实际值之间的平方差的平均值。
    • 公式:

            

    • 适用:当对较大的误差较为敏感时。
  • 均方根误差(Root Mean Squared Error, RMSE)

    • 定义:MSE的平方根。
    • 公式:
    • 适用:与MSE类似,但与原数据单位一致,更易于解释。
  • 平均绝对误差(Mean Absolute Error, MAE)

    • 定义:预测值与实际值之间绝对差的平均值。
    • 公式:

               

    • 适用:当对所有误差同等看待时。
  • 决定系数(R² Score)

    • 定义:衡量模型解释数据变异的能力,取值范围为0到1。
    • 公式:

       

  • 适用:反映模型的整体解释能力,但不适用于非线性关系或异方差性的情况。
  • 调整决定系数(Adjusted R²)

    相关文章:

    华为面试题及答案——机器学习(二)

    21. 如何评价分类模型的优劣? (1)模型性能指标 准确率(Accuracy): 定义:正确分类的样本数与总样本数之比。适用:当各类样本的数量相对均衡时。精确率(Precision): 定义:预测为正类的样本中实际为正类的比例。适用:当关注假阳性错误的成本较高时(例如垃圾邮件检测…...

    PlatformIO开发环境

    PlatformIO是一个开源的生态系统,用于构建物联网应用,它支持多种微控制器(MCU)和硬件开发板,并且与各种IDE集成良好,如VSCode, Atom等,使得跨平台的固件开发变得更加简单和高效。 ### 平台介绍…...

    In install.packages(“devtools“, verbose = TRUE) :

    错误于curl::curl_download("https://r-lib.github.io/gert/libgit2-1.1.0.x86_64_legacy-linux.tar.gz", : Timeout was reached: [] Connection timed out after 10004 milliseconds 停止执行 Using PKG_CFLAGS Using PKG_LIBS-lgit2 ----------------------------…...

    计算机网络 访问控制列表以及NAT

    一、理论知识 1. 单臂路由 单臂路由是一种在路由器上配置多个子接口的方法,每个子接口代表不同的 VLAN,用于在一个物理接口上支持多 VLAN 通信。此方法使得不同 VLAN 之间可以通过路由器进行通信。 2. NAT (网络地址转换) NAT 是一种在私有网络和公共…...

    使用Oracle IMP导入数据

    使用Oracle IMP导入数据 大家好,我是免费搭建查券返利机器人省钱赚佣金就用微赚淘客系统3.0的小编,也是冬天不穿秋裤,天冷也要风度的程序猿!今天我们来聊一聊如何使用Oracle的IMP工具来导入数据。 一、什么是Oracle IMP Oracle…...

    C++ 100 之 容器插入和删除

    vector插入和删除操作 insert(const_iterator pos, int count,ele);//迭代器指向位置pos插入count个元素ele. push_back(ele); //尾部插入元素ele pop_back();//删除最后一个元素 erase(const_iterator start, const_iterator end);//删除迭代器从start到end之间的元素 erase(c…...

    提升 Selenium 测试稳定性的秘诀:深入理解等待 API 的使用

    目录 为什么需要等待Selenium 等待 API 简介隐式等待显式等待Fluent Wait等待策略的选择示例代码总结 正文 1. 为什么需要等待 在 Web 自动化测试中,等待是一个关键因素。网络应用通常是动态的,页面加载时间、元素的显示时间都可能不同步。直接操作这…...

    Python-算法编程100例-滑动窗口(入门级)

    题目1:最大连续1的个数(简单) 给定一个二进制数组 nums , 计算其中最大连续 1 的个数。 解答:前缀和双指针 # 给定一个二进制数组 nums , 计算其中最大连续 1 的个数。 from typing import Listclass So…...

    ffmpeg使用mjpeg把yuvj420p编码为jpg图像

    version #define LIBAVUTIL_VERSION_MAJOR 58 #define LIBAVUTIL_VERSION_MINOR 12 #define LIBAVUTIL_VERSION_MICRO 100 node 不使用AVOutputFormat code void CFfmpegOps::EncodeYUVJ420pToMJPEG(const char* infile, const char* width_str, const char* height_s…...

    龙迅#LT6911GXC支持HDMI2.1转MIPI/4PORT LVDS应用功能,分辨率高达8K30HZ/4K120HZ压缩格式。

    1. 描述 该LT6911GXC是一款高性能HD-DVI2.1转MIPI或LVDS芯片,适用于VR/显示应用。 HDCP RX作为HDCP中继器的上游,可以与其他芯片的HDCP TX配合实现中继器功能。 对于 HD-DVI2.1 输入,LT6911GXC可以配置为 3/4 通道。 对于MIPI输出&#xff0c…...

    .NET 6.0 Web API项目中实现基于Token的身份验证

    本文以一个完整的示例,展示如何在.NET 6.0 Web API项目中实现基于Token的身份验证。这个例子包括了如何创建和验证JWT Token,以及如何在控制器中使用这些Token。 步骤 1: 创建Web API项目 首先,用Visual Studio 2022创建一个基于.NET6.0的 …...

    Java常用对象的快速初始化

    在Java中,有多种方式来快速初始化各种常用对象,如字符串数组(String[]),集合列表(List),映射表(Map),以及集合(Set)。不同…...

    逻辑回归模型模拟实现:从零开始

    引言 逻辑回归是一种用于二分类问题的机器学习算法。尽管它的名字中有“回归”,但它实际上是用于分类的。在本文中,我们将通过模拟数据来演示逻辑回归模型的实现。 逻辑回归简介 逻辑回归通过使用逻辑函数(通常是Sigmoid函数)将…...

    Docker基本使用和认识

    目录 基本使用 镜像仓库 镜像操作 Docker 如何实现镜像 1) namespace 2) cgroup 3) LXC Docker常见的网络类型 bridge网络如何实现 基本使用 镜像仓库 镜像仓库登录 1)docker login 后面不指定IP地址,则默认登录到 docker hub 上 退出 2)docker logo…...

    Halcon 文本文件操作,形态学

    一文件的读写 *******************************************************向文本文件写入字符串内容*************************************************************read_image (Image, fabrik)threshold (Image, Region, 0, 120)area_center (Region, Area, Row, Column)open_…...

    【鸿蒙】稍微理解一下Stage模型

    鸿蒙的Stage模型是HarmonyOS多端统一的应用开发框架中的一个核心概念,用于描述应用的界面层次结构和组件之间的关系。下面将详细解析Stage模型的主要组成部分和特点: 模型组成: UIAbility组件:这是应用中负责绘制用户界面的组件&a…...

    毕业答辩制作PPT【攻略】

    毕业答辩制作PPT【攻略】 前言版权毕业答辩制作PPT【攻略】一、WPS AI 15天免费会员二、AI文档生成PPT三、修改完善PPT 最后 前言 2024-06-14 23:43:05 以下内容源自《【攻略】》 仅供学习交流使用 版权 禁止其他平台发布时删除以下此话 本文首次发布于CSDN平台 作者是CSDN…...

    深入解析npm install --save-dev:开发依赖管理的艺术

    npm(Node Package Manager)是JavaScript编程语言的包管理器,用于管理项目中的依赖关系。在开发过程中,合理地管理依赖是保证项目可维护性和可扩展性的关键。npm install命令是npm中最常用的命令之一,而--save-dev参数则…...

    福布斯 AI 50 榜单中唯一开源向量数据库:Weaviate

    本篇文章,聊聊福布斯全球网站前俩月发布的 2023 AI 50 榜单中的唯一一个开源的向量数据库:Weaviate。 它在数据持久化和容错性上表现非常好、支持混合搜索、支持水平扩展,同时又保持了轻量化。官方主打做 AI 时代的原生数据库,减…...

    信息学奥赛初赛天天练-38-CSP-J2021阅读程序-约数个数、约数和、埃氏筛法、欧拉筛法筛素数应用

    PDF文档公众号回复关键字:20240628 2021 CSP-J 阅读程序3 1阅读程序(判断题1.5分 选择题3分 共计40分 ) 01 #include<stdio.h> 02 using namespace std; 03 04 #define n 100000 05 #define N n1 06 07 int m; 08 int a[N],b[N],c[N],d[N]; 09 int f[N],g[N]; 10 11 …...

    Zustand 状态管理库:极简而强大的解决方案

    Zustand 是一个轻量级、快速和可扩展的状态管理库&#xff0c;特别适合 React 应用。它以简洁的 API 和高效的性能解决了 Redux 等状态管理方案中的繁琐问题。 核心优势对比 基本使用指南 1. 创建 Store // store.js import create from zustandconst useStore create((set)…...

    06 Deep learning神经网络编程基础 激活函数 --吴恩达

    深度学习激活函数详解 一、核心作用 引入非线性:使神经网络可学习复杂模式控制输出范围:如Sigmoid将输出限制在(0,1)梯度传递:影响反向传播的稳定性二、常见类型及数学表达 Sigmoid σ ( x ) = 1 1 +...

    高防服务器能够抵御哪些网络攻击呢?

    高防服务器作为一种有着高度防御能力的服务器&#xff0c;可以帮助网站应对分布式拒绝服务攻击&#xff0c;有效识别和清理一些恶意的网络流量&#xff0c;为用户提供安全且稳定的网络环境&#xff0c;那么&#xff0c;高防服务器一般都可以抵御哪些网络攻击呢&#xff1f;下面…...

    rnn判断string中第一次出现a的下标

    # coding:utf8 import torch import torch.nn as nn import numpy as np import random import json""" 基于pytorch的网络编写 实现一个RNN网络完成多分类任务 判断字符 a 第一次出现在字符串中的位置 """class TorchModel(nn.Module):def __in…...

    Fabric V2.5 通用溯源系统——增加图片上传与下载功能

    fabric-trace项目在发布一年后,部署量已突破1000次,为支持更多场景,现新增支持图片信息上链,本文对图片上传、下载功能代码进行梳理,包含智能合约、后端、前端部分。 一、智能合约修改 为了增加图片信息上链溯源,需要对底层数据结构进行修改,在此对智能合约中的农产品数…...

    Yolov8 目标检测蒸馏学习记录

    yolov8系列模型蒸馏基本流程&#xff0c;代码下载&#xff1a;这里本人提交了一个demo:djdll/Yolov8_Distillation: Yolov8轻量化_蒸馏代码实现 在轻量化模型设计中&#xff0c;**知识蒸馏&#xff08;Knowledge Distillation&#xff09;**被广泛应用&#xff0c;作为提升模型…...

    浪潮交换机配置track检测实现高速公路收费网络主备切换NQA

    浪潮交换机track配置 项目背景高速网络拓扑网络情况分析通信线路收费网络路由 收费汇聚交换机相应配置收费汇聚track配置 项目背景 在实施省内一条高速公路时遇到的需求&#xff0c;本次涉及的主要是收费汇聚交换机的配置&#xff0c;浪潮网络设备在高速项目很少&#xff0c;通…...

    毫米波雷达基础理论(3D+4D)

    3D、4D毫米波雷达基础知识及厂商选型 PreView : https://mp.weixin.qq.com/s/bQkju4r6med7I3TBGJI_bQ 1. FMCW毫米波雷达基础知识 主要参考博文&#xff1a; 一文入门汽车毫米波雷达基本原理 &#xff1a;https://mp.weixin.qq.com/s/_EN7A5lKcz2Eh8dLnjE19w 毫米波雷达基础…...

    「全栈技术解析」推客小程序系统开发:从架构设计到裂变增长的完整解决方案

    在移动互联网营销竞争白热化的当下&#xff0c;推客小程序系统凭借其裂变传播、精准营销等特性&#xff0c;成为企业抢占市场的利器。本文将深度解析推客小程序系统开发的核心技术与实现路径&#xff0c;助力开发者打造具有市场竞争力的营销工具。​ 一、系统核心功能架构&…...

    Kubernetes 节点自动伸缩(Cluster Autoscaler)原理与实践

    在 Kubernetes 集群中&#xff0c;如何在保障应用高可用的同时有效地管理资源&#xff0c;一直是运维人员和开发者关注的重点。随着微服务架构的普及&#xff0c;集群内各个服务的负载波动日趋明显&#xff0c;传统的手动扩缩容方式已无法满足实时性和弹性需求。 Cluster Auto…...