机器学习中最常见的50个问题(进阶篇)

news2024/12/24 2:12:55

机器学习中最常见的50个问题

进阶篇

1.解释SVM的工作原理。

SVM,全称支持向量机(Support Vector Machine),是一种有监督学习算法,主要用于解决数据挖掘或模式识别领域中的数据分类问题。

SVM的工作原理是建立一个最优决策超平面,使得该平面两侧距平面最近的两类样本之间的距离最大化,从而对分类问题提供良好的泛化力(推广能力)。这里的“支持向量”是指训练集中的某些训练点,这些点最靠近分类决策面,是最难分类的数据点。

SVM可以处理二类分类问题,也可以扩展到多类分类问题。在二类分类问题中,SVM寻找一个最优超平面,将两类样本分隔开。这个最优超平面需要满足间隔最大化的条件,即两侧距平面最近的两类样本之间的距离最大化。当训练样本线性可分时,通过硬间隔最大化,学习一个线性分类器,即线性可分支持向量机。当训练数据近似线性可分时,引入松弛变量,通过软间隔最大化,学习一个线性分类器,即线性支持向量机。当训练数据线性不可分时,通过使用核技巧及软间隔最大化,学习非线性支持向量机。

SVM使用核函数来处理非线性可分的情况。核函数的定义是K(x,y)=<ϕ(x),ϕ(y)>,即在特征空间的内积等于它们在原始样本空间中通过核函数K计算的结果。通过使用核函数,SVM可以将样本从原始空间映射到一个更高维的特征空间,使得样本在这个特征空间内线性可分。

2.k-means和k-means++算法有什么区别?

两者之间的唯一区别是初始化质心的方式。在k-means算法中,质心从给定点随机初始化。这种方法存在一个缺点,即有时这种随机初始化会导致非优化的聚类,这是由于两个聚类的初始化可能彼此接近。

为了解决这个问题,k-means++算法应运而生。在k-means++中,第一个质心从数据点中随机选择。后续质心的选择基于它们与初始质心的分离。一个点被选为下一个质心的概率与该点和已经被选择的最近质心之间的平方距离成比例。这保证了质心均匀地分散开,并降低了收敛到不理想聚类的可能性。这有助于算法达到全局最小值,而不是陷入局部最小值。

3.解释机器学习中常用的一些相似性度量。

一些最常用的相似性度量如下:

  • 余弦相似性-通过考虑n维的两个向量,我们计算两者之间夹角的余弦。该相似性度量的范围从[-1,1]变化,其中值1表示两个向量高度相似,而-1表示两个向量彼此完全不同。
  • 欧几里得或曼哈顿距离-这两个值表示n维平面中两点之间的距离。两者之间的唯一区别在于两者的计算方式。
  • Jaccard相似性-它也被称为IoU或Intersection over union,它广泛用于对象检测领域,以评估预测边界框和地面真实边界框之间的重叠。

4.当数据分布右偏和左偏时,均值、中位数和众数会发生什么变化?

标准正态分布特征:均值=中位数=众数

左偏态特征:众数>中位数>均值

右偏态特征:均值>中位数>众数

右偏分布
在这里插入图片描述

左偏分布,
在这里插入图片描述

5.对于离群值,决策树和随机森林谁的鲁棒性更强。

决策树和随机森林对离群值都相对稳健。随机森林模型是多个决策树的集成,因此,随机森林模型的输出是多个决策树的聚合。因此,当我们对结果进行平均时,过拟合的可能性就会降低。因此,我们可以说随机森林模型对离群值更具鲁棒性。

6.L1正则化和L2正则化有什么区别?它们的意义是什么?

L1正则化:在L1正则化中,也被称为Lasso正则化,其中我们在损失函数中添加模型权重的绝对值之和。

在L1正则化中,那些根本不重要的特征的权重被惩罚为零,因此,反过来,我们通过使用L1正则化技术来获得特征选择。

L2正则化:在L2正则化中,也称为岭正则化,我们将权重的平方添加到损失函数中。在这两种正则化方法中,权重都是不利的,但它们帮助实现的目标之间存在细微的差异。

在L2正则化中,权重不会被惩罚为0,但对于不相关的特征,它们接近于零。它通常用于通过将权重缩小到零来防止过拟合,特别是当有许多特征并且数据有噪声时。

7.什么是径向基函数?解释它的用途。

RBF(径向基函数)是一种用于机器学习的实值函数,其值仅取决于输入和称为中心的固定点。径向基函数的公式如下:

在这里插入图片描述
机器学习系统经常将RBF函数用于各种函数,包括:

  • RBF网络可以用来逼近复杂函数。通过训练网络的权重以适应一组输入输出对,
  • RBF网络可以用于无监督学习来定位数据组。通过将RBF中心视为聚类中心,
  • RBF网络可以用于分类任务,通过训练网络的权重,根据输入与RBF节点的距离将输入分组。

它是SVM算法中通常使用的非常著名的内核之一,用于将低维数据映射到高维平面,因此,我们可以确定一个边界,该边界可以将这些平面的不同区域中的类以尽可能多的余量分开。

8.解释用于处理数据不平衡的SMOTE方法。

SMOTE是用来处理数据集中数据不平衡问题的方法之一。在这种方法中,基于现有的少数类,我们通过使用线性插值合成新的数据点。使用这种方法的优点是模型不会在相同的数据上进行训练。但是使用这种方法的缺点是它向数据集添加了不需要的噪声,并且可能对模型的性能产生负面影响。

9.准确率得分是否总是衡量分类模型性能的良好指标?

不,有时候我们在不平衡的数据集上训练模型时,准确度分数并不是衡量模型性能的好指标。在这种情况下,我们使用查准率和查全率来衡量分类模型的性能。此外,f1-score是另一个可用于衡量性能的指标,但最终,f1-score也是使用精确度和召回率计算的,因为f1-score只是精确度和召回率的调和平均值。

10.什么是 KNN 插值填充?

我们通常通过数据的描述性统计测量(如平均值、众数或中位数)来估算空值,但KNN 插值是一种更复杂的填补空值的方法。在该方法中还使用距离参数,其也被称为k参数。这项工作在某种程度上类似于聚类算法。缺失值是参照缺失值的邻域点进行插补的。

11.解释XGB模型的工作流程。

XGB模型是机器学习集成技术的一个例子,在这种方法中,权重通过将它们传递到决策树来以顺序的方式进行优化。在每一遍之后,权重变得越来越好,因为每棵树都试图优化权重,最终,我们获得了手头问题的最佳权重。像正则化梯度和小批量梯度下降这样的技术已经被用来实现这个算法,所以它以非常快速和优化的方式工作。

12.将给定数据集拆分为训练和验证数据的目的是什么?

主要目的是保留一些模型尚未训练的剩余数据,以便我们可以在训练后评估机器学习模型的性能。此外,有时我们使用验证数据集在多个先进的机器学习模型中进行选择。就像我们首先训练一些模型一样,比如LogisticRegression,XGBoost或任何其他模型,而不是使用验证数据测试它们的性能,并选择验证和训练精度之间差异较小的模型。

13.解释一些处理数据中缺失值的方法。

处理缺失值的一些方法如下:

  • 删除具有空值的行,可能会导致丢失一些重要信息。
  • 如果列包含的信息价值很低,则删除包含空值的列。可能会导致丢失一些重要信息。
  • 使用描述性统计测量(如平均值、众数和中位数)插补空值。
  • 使用KNN 插值等方法以更复杂的方式估算空值。

14.k-means和KNN算法有什么区别?

k-means算法是用于聚类目的的流行的无监督机器学习算法之一。但KNN是一种通常用于分类任务的模型,是一种有监督的机器学习算法。k-means算法通过在数据集中形成聚类来帮助我们标记数据。

15.什么是LDA线性判别分析?

LDA是一种有监督的机器学习降维技术,因为它也使用目标变量进行降维。它通常用于分类问题。LDA主要致力于两个目标:

  • 最大化两个类的均值之间的距离。
  • 最大限度地减少每个类中的差异。

16.如何在二维中可视化高维数据?

最常用和有效的方法之一是使用t-SNE算法。该算法采用了一些非线性的复合形方法对给定的数据进行降维。我们还可以使用PCA或LDA将n维数据转换为2维,以便我们可以绘制它以获得更好的分析视觉效果。但是PCA和t-SNE之间的区别在于前者试图保持数据集的方差,而t-SNE试图保持数据集中的局部相似性。

17.维度灾难背后的原因是什么?

随着输入数据的维度增加,概括或学习数据中存在的模式所需的数据量也增加。对于模型,很难从有限数量的数据集中识别每个特征的模式,或者我们可以说,由于数据的高维性和用于训练模型的有限数量的示例,权重没有得到适当的优化。由于这一点,在输入数据的维数达到一定的阈值后,我们不得不面对维数灾难。

18.度量MAE或MSE或RMSE, 哪个对离群值有更好的鲁棒性。

在上述三个指标中,与MSE或RMSE相比,MAE对离群值具有鲁棒性。这背后的主要原因是因为平方误差值。在离群值的情况下,误差值已经很高,然后我们将其平方,这导致误差值的爆炸超过预期,并为梯度产生误导性结果。

19.为什么删除高度相关的特征被认为是一种良好的做法?

当两个特征高度相关时,它们可能向模型提供类似的信息,这可能导致过拟合。如果数据集中存在高度相关的特征,那么它们不必要地增加了特征空间的维数,有时会产生维数灾难的问题。如果特征空间的维数很高,那么模型训练可能需要比预期更多的时间,这将增加模型的复杂性和出错的机会。这在某种程度上也有助于我们实现数据压缩,因为这些功能已经被删除,而没有太多的数据丢失。

20.推荐系统中基于内容的过滤算法和协同过滤算法有什么区别?

在一个基于内容的推荐系统中,内容和服务的相似性进行评估,然后通过使用这些相似性措施,从过去的数据,我们推荐产品给用户。但另一方面,在协同过滤中,我们根据相似用户的偏好推荐内容和服务。例如,如果一个用户过去已经使用了A和B服务,并且新用户已经使用了服务A,则将基于另一用户的偏好向他推荐服务A。

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

TypeScript 扩展

扩展 ?:可选参数 可选链事实上并不是TypeScript独有的特性&#xff0c;它是ES11&#xff08;ES2020&#xff09;中增加的特性 可选链使用可选链操作符 ? 作用是当对象的属性不存在时&#xff0c;会短路&#xff0c;直接返回undefined&#xff0c;如果存在&#xff0c;那么…

小程序开发设计-小程序简介①

1.小程序与普通网页开发的区别&#xff1a; 1.运行环境不同&#xff1a; 网页运行在浏览器环境中。 小程序运行在微信环境中。 2.API不同&#xff1a; 由于运行环境不同&#xff0c;所以小程序中&#xff0c;无法调用DOM和BOM的API。但是&#xff0c;小程序中可以调用微信环境提…

摊牌了!一文教会你轻松上手豆包MarsCode 编程助手!

豆包MarsCode 编程助手是豆包旗下的 AI 编程助手&#xff0c;提供以智能代码补全为代表的 AI 功能。豆包MarsCode 编程助手支持主流的编程语言和 IDE&#xff0c;在开发过程中提供单行代码或整个函数的编写建议。此外&#xff0c;它还支持代码解释、单测生成和问题修复等功能&a…

收藏!6个PPT素材模板网站,快速做出好看的PPT

找PPT模板一定要收藏好这6个网站&#xff0c;能让你快速做出好看的PPT&#xff0c;重点十可以免费下载&#xff0c;赶紧收藏&#xff01; 1、菜鸟图库 ppt模板免费下载|ppt背景图片 - 菜鸟图库 菜鸟图库网有非常丰富的免费素材&#xff0c;像设计类、办公类、自媒体类等素材都…

时序必读论文05|PatchTST : 时序数据Patch已成趋势【ICLR 2023】

书接上回&#xff0c;我们在之前的文章已经分析了直接把transformer应用到时间序列预测问题的不足&#xff0c;其中我们总结了4个不足&#xff1a;分别是&#xff1a; 注意力机制的计算复杂度高&#xff0c;为 O(N^2)&#xff0c;并且计算得出的权重仅有少部分有用&#xff1b;…

【TCP三次握手+四次挥手(个人理解版本)】

TCP协议介绍 TCP&#xff08;传输控制协议&#xff09;是一种面向连接的、可靠的、基于字节流的传输层通信协议&#xff08;它是全双工工作模式&#xff09;。以下是对它的具体介绍&#xff1a; 基本概念 定义&#xff1a;TCP是Transmission Control Protocol的缩写&#xff…

PHP无缝对接预订无忧场馆预订系统小程序源码

无缝对接&#xff0c;预订无忧 —— 场馆预订系统&#xff0c;让每一次活动都完美启航&#xff01; 一、告别繁琐流程&#xff0c;预订从未如此简单 你是否曾经为了预订一个合适的场馆而焦头烂额&#xff1f;繁琐的咨询、确认、支付流程&#xff0c;让人心力交瘁。但现在&…

如何利用Java进行快速的足球大小球及亚盘数据处理与分析

在当今信息爆炸的时代&#xff0c;大量的数据产生和积累&#xff0c;对于企业和个人来说&#xff0c;如何高效地处理和分析这些数据成为了一项重要的任务。Java作为一门强大的编程语言&#xff0c;提供了丰富的工具和库&#xff0c;可以帮助我们快速进行数据处理与分析。下面将…

vue3中实现拖拽排序(vue-draggable-next的使用)

1.安装插件 npm i vue-draggable-next 2.引入使用 <template> <vue-draggable-next v-model"list" tag"div" handle".warn-card" group"warngroup" ghost-class"ghost"class"mb10 warn-card-box" ani…

【mysql】逻辑运算符

逻辑运算符 逻辑运算符主要是为了判断表达式的真假,返回结果也是1,0,null OR 这里面或就是两个条件或的关系,比如我要department_id等于10和等于20的情况就可以使用或. SELECT last_name,salary,department_id FROM employees WHERE department_id10 OR department_id20 …

Unreal游戏初始化流程

前言 本文主要是总结Unreal在游戏启动时的初始化流程&#xff0c;包括讨论PIE和Standalone的区别&#xff0c;避免把一些初始化逻辑放在不合适的位置&#xff0c;比如我希望在所有Actor BeginPlay后执行某个逻辑&#xff0c;那我如果把它放在Subsystem的initialize中显然就会搞…

Golang使用ReverseProxy实现反向代理

目录 1.源码结构体 2.官方单机示例 3.使用示例 4.简单的http服务&#xff08;用于测试&#xff09; 1.源码结构体 type ReverseProxy struct {// Rewrite 必须是一个函数&#xff0c;用于将请求修改为要使用 Transport 发送的新请求。然后&#xff0c;其响应将原封不动地…

打造古风炫酷个人网页:用HTML和CSS3传递笔墨韵味

需要用到的背景大家可以自己找喜欢的风格!!! 当然俺把俺用的背景放到文章最后了哦&#xff01;&#xff01;&#xff01;&#xff01;&#xff01; 感谢关注和支持 长期更新哦~~~ 1. 简洁的页面布局&#xff1a;保持优雅和对称 在古风设计中&#xff0c;布局的对称性非常重要…

【知识图谱】3.Protege下载安装

一、Protege 1.相关介绍 Protg软件是斯坦福大学医学院生物信息研究中心基于Java语言开发的本体编辑和知识获取软件&#xff0c;或者说是本体开发工具&#xff0c;也是基于知识的编辑器&#xff0c;属于开放源代码软件。 这个软件主要用于语义网中本体的构建&#xff0c;是语义…

第15-02章:理解Class类并获取Class实例

我的后端学习大纲 我的Java学习大纲 1、Java反射机制原理图&#xff1a; 源代码通过Javac编译得到字节码文件&#xff0c;当我执行到new一个对象的时候&#xff0c;字节码文件会通过ClassLoader被加载&#xff0c;然后得到一个Class类对象&#xff0c;存放在堆中&#xff0c;加…

系统分析师10:知识产权与标准化

1 内容提要 保护范围与对象&#xff08;★★★★)保护期限&#xff08;★)知识产权人确定(★★★)侵权判断(★★★)标准的分类标准代号的识别 2 保护范围与对象 使用许可 按照被许可使用权的排他性强弱不同&#xff0c;可以将使用许可分为以下三种: ①独占使用许可-仅1个授权…

中国电子学会202406青少年软件编程(Python)等级考试试卷(一级)真题与解析

青少年软件编程(Python)等级考试试卷(一级) 分数:100题数:37 一、单选题(共25题,共50分) 1.在使用turtle绘制图形时,如果要控制小海龟移动到 x 坐标为 200,y 坐标为150 的位置,以下代码能够实现效果的是?( ) A. turtle.go(150, 200) B. turtle.go(200, 150) …

在线客服如何与呼叫系统结合使用?

以下是在线客服与呼叫系统结合使用的常见方式&#xff1a; 1.从客户接入角度 a多渠道整合&#xff1a; 将网站在线客服、手机APP在线客服、社交媒体平台&#xff08;如微信公众号、微博私信等&#xff09;以及呼叫系统的电话接入渠道整合在一个统一的平台上。例如&#xf…

HTTP跨域请求时为什么要发送options请求

跨域请求 浏览器同源策略同源策略一般限制Ajax网络请求&#xff0c;不能跨域请求server不会限制<link> <img> <script> <iframe> 加载第三方资源 JSONP实现跨域 <!-- aa.com网页 --> <script>window.onSuccess function(data) {consol…

如何选择PCB板材?

pcb板材的基本参数有哪些&#xff1f; 1. 厚度&#xff1a;PCB板材厚度是指板子的整体厚度。常见的厚度有0.8mm、1.0mm、1.6mm、2.0mm等。在选择时需要根据实际需求进行选择&#xff0c;通常需要根据元件数量、限制空间和性能要求来决定。 2. 热膨胀系数&#xff1a;热膨胀系数…