前言:
题目来源于牛客的题库,因为自己是小白,所以一开始搞的题目都会比较简单,大佬勿喷~
🤗个人主页📦Github主页💠掘金主页📚知乎主页
Q1:均值漂移 Mean Shift 的核心思想?
一个词概括:迭代
Mean Shift 是一种聚类方法,其核心是通过迭代来寻找数据的聚类中心。对于每个数据点,计算其邻域内点的均值偏移向量,将点沿此向量方向移动,不断重复这一过程,直到点的移动距离小于设定阈值或达到最大迭代次数,此时收敛的点即为概率密度梯度为零的模式点,对应数据的聚类中心,如下图。
Q2:向量相似度有几种计算方式?
- 欧式距离:显然,欧式距离越小,说明两个向量越相似。
- 夹角余弦:计算两个向量的夹角余弦值来衡量它们的相似性,余弦值越接近 1,两个向量越相似。
- 曼哈顿距离:也称为城市街区距离,曼哈顿距离越小,两个向量越相似。
其实以上几种常见的就很够用了,这里再简单列举几个可能会用到的:杰卡德相似系数、汉明距离、皮尔逊相关系数、马氏距离。
Q3:如何解决数据类别不平衡问题?
- 下采样(随机降采样多样本)
- 过采样(对少样本进行扩充)
- 阈值偏移(直接训练模型,预测的时候调节阈值)
Q4:有关决策树
决策树通过一系列的条件判断对样本进行分类或预测。
- 内部节点:对数据集中某个属性进行的条件判断(例如判断水果的颜色,这个颜色就是所谓的属性)
- 分支:判断输出的结果(一般为 Yes or No)
- 叶节点:则代表类别或值
在分类任务中,从根节点开始,根据样本的属性值沿着相应的分支向下遍历,直到到达叶节点,叶节点所代表的类别就是该样本的预测类别。
-
ID3 决策树与信息增益
- ID3(Iterative Dichotomiser 3)是一种经典的决策树算法。它使用信息增益来选择划分属性。信息增益是指划分前后信息熵的变化量。信息熵是衡量数据不确定性的一个指标,不确定性越大,信息熵越高。ID3 算法选择信息增益最大的属性作为当前节点的划分属性,因为信息增益越大,说明使用该属性划分数据后,数据的不确定性下降得越多,即纯度提升得越高。
- 举个例子:在一个判断水果是苹果还是橙子的数据集里,可能有颜色、大小、形状等属性。ID3 算法会计算每个属性划分后的信息增益,选择信息增益最大的属性(如颜色)来划分节点。
-
C4.5 决策树与增益率
- C4.5 算法是对 ID3 算法的改进。C4.5 使用增益率来选择划分属性。增益率是信息增益与属性的固有值(分裂信息度量)的比值。引入增益率的原因是,信息增益倾向于选择取值较多的属性,而增益率可以避免这种偏向。
- 举个例子:在一个包含身份证号属性的数据集里,如果使用信息增益,身份证号属性可能会有很高的信息增益,因为它的取值非常多且每个值几乎唯一。但身份证号对分类任务通常没有实际意义,C4.5 的增益率可以避免选择这样的属性。
-
CART 决策树与基尼指数
-
CART(Classification and Regression Tree)即分类与回归树,它是一种非常常用的决策树算法。CART 算法选择基尼指数最小的属性作为划分属性。基尼指数反映了从样本集中随机抽取两个样本,其类别标记不一致的概率。
-
基尼指数的计算公式如下,其中 D 是样本集,|y| 是类别数, <math xmlns="http://www.w3.org/1998/Math/MathML"> p k p_{k} </math>pk 是样本集 D 中第 k 类样本所占的比例。基尼指数越小,说明样本集的纯度越高,即类别越一致。
<math xmlns="http://www.w3.org/1998/Math/MathML"> G i n i ( D ) = 1 − ∑ k = 1 ∣ y ∣ p k 2 Gini(D)=1-\sum_{k = 1}^{|y|}p_{k}^{2} </math>Gini(D)=1−∑k=1∣y∣pk2
-
-
基尼指数的含义
- 基尼指数反映了样本集的不纯度。从直观上理解,当从样本集中随机抽取两个样本,它们类别标记不一致的概率越小,说明样本集的纯度越高。在决策树构建过程中,我们希望每次划分后得到的子节点的基尼指数尽可能小,这样可以使决策树的分类效果更好。
Q5:有关岭回归
岭回归是一种用于处理线性回归中多重共线性问题的正则化方法,打个比方:
想象你要走一条路去一个目的地,路有很多条,而且有些路之间还有些相似(这就好比数据中的特征存在多重共线性)。普通的线性回归就像是不管路怎么样,直接找一条看起来能最快到达目的地的路走,但如果这些相似的路太多,它就容易迷路,不知道该选哪条,最后可能选了一条不太好的路,导致结果不准确(过拟合)。
而岭回归呢,就像是给每条路都设置了一个 "难度系数"。如果一条路和其他很多路都很相似,那它的 "难度系数" 就会增加。这样一来,在选择走哪条路的时候,就不会只看哪条路看起来能最快到达目的地,还会考虑这条路的 "难度"。通过这种方式,岭回归会避开那些和其他路太相似的路,选择一条更稳定、更可靠的路到达目的地,也就让我们得到的结果更准确、更不容易受到数据中一些干扰因素的影响,从而解决了多重共线性带来的问题。
这里的 "难度系数" 就是通过在损失函数中添加一个与参数平方和有关的正则化项来实现的,而正则化参数 λ 就像是控制 "难度系数" 大小的一个旋钮,通过调整它来找到最合适的 "难度",让模型达到最好的效果。
假如使用一个较复杂的岭回归模型(Ridge Regression),来拟合样本数据时,通过调整正则化参数 λ,来调整模型复杂度。当 λ 较大时,关于偏差(bias)和方差(variance):
结论:当 λ 增大时,偏差增大,方差减小,模型更简单,模型更稳定
原因:在岭回归中,正则化参数 λ 是用来控制模型复杂度的重要参数。当 λ 较大时,模型会更加简单(正则化效果更强),从而偏差增大,但方差减小。
具体来说,当 λ 增大时:
- 模型的复杂度降低,趋向于欠拟合
- 参数值被压缩向 0,使模型更简单 => 模型对训练数据的拟合程度降低,偏差增大
- 但模型变得更稳定,对不同训练集的敏感度降低,所以方差减小