当前位置: 首页 > 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 …...

    Docker 离线安装指南

    参考文章 1、确认操作系统类型及内核版本 Docker依赖于Linux内核的一些特性&#xff0c;不同版本的Docker对内核版本有不同要求。例如&#xff0c;Docker 17.06及之后的版本通常需要Linux内核3.10及以上版本&#xff0c;Docker17.09及更高版本对应Linux内核4.9.x及更高版本。…...

    【网络】每天掌握一个Linux命令 - iftop

    在Linux系统中&#xff0c;iftop是网络管理的得力助手&#xff0c;能实时监控网络流量、连接情况等&#xff0c;帮助排查网络异常。接下来从多方面详细介绍它。 目录 【网络】每天掌握一个Linux命令 - iftop工具概述安装方式核心功能基础用法进阶操作实战案例面试题场景生产场景…...

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

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

    边缘计算医疗风险自查APP开发方案

    核心目标:在便携设备(智能手表/家用检测仪)部署轻量化疾病预测模型,实现低延迟、隐私安全的实时健康风险评估。 一、技术架构设计 #mermaid-svg-iuNaeeLK2YoFKfao {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg…...

    .Net框架,除了EF还有很多很多......

    文章目录 1. 引言2. Dapper2.1 概述与设计原理2.2 核心功能与代码示例基本查询多映射查询存储过程调用 2.3 性能优化原理2.4 适用场景 3. NHibernate3.1 概述与架构设计3.2 映射配置示例Fluent映射XML映射 3.3 查询示例HQL查询Criteria APILINQ提供程序 3.4 高级特性3.5 适用场…...

    java调用dll出现unsatisfiedLinkError以及JNA和JNI的区别

    UnsatisfiedLinkError 在对接硬件设备中&#xff0c;我们会遇到使用 java 调用 dll文件 的情况&#xff0c;此时大概率出现UnsatisfiedLinkError链接错误&#xff0c;原因可能有如下几种 类名错误包名错误方法名参数错误使用 JNI 协议调用&#xff0c;结果 dll 未实现 JNI 协…...

    AtCoder 第409​场初级竞赛 A~E题解

    A Conflict 【题目链接】 原题链接&#xff1a;A - Conflict 【考点】 枚举 【题目大意】 找到是否有两人都想要的物品。 【解析】 遍历两端字符串&#xff0c;只有在同时为 o 时输出 Yes 并结束程序&#xff0c;否则输出 No。 【难度】 GESP三级 【代码参考】 #i…...

    【算法训练营Day07】字符串part1

    文章目录 反转字符串反转字符串II替换数字 反转字符串 题目链接&#xff1a;344. 反转字符串 双指针法&#xff0c;两个指针的元素直接调转即可 class Solution {public void reverseString(char[] s) {int head 0;int end s.length - 1;while(head < end) {char temp …...

    Robots.txt 文件

    什么是robots.txt&#xff1f; robots.txt 是一个位于网站根目录下的文本文件&#xff08;如&#xff1a;https://example.com/robots.txt&#xff09;&#xff0c;它用于指导网络爬虫&#xff08;如搜索引擎的蜘蛛程序&#xff09;如何抓取该网站的内容。这个文件遵循 Robots…...

    什么是EULA和DPA

    文章目录 EULA&#xff08;End User License Agreement&#xff09;DPA&#xff08;Data Protection Agreement&#xff09;一、定义与背景二、核心内容三、法律效力与责任四、实际应用与意义 EULA&#xff08;End User License Agreement&#xff09; 定义&#xff1a; EULA即…...