摘要:秋招开始了,准备好在机器学习面试中脱颖而出了吗?云朵君给大家准备了一个机器学习 (ML) 面试题库,我们将深入探讨这个活跃领域背后的基本概念。从解读 F1 分数背后的原理到逻辑回归术语的细微差别,这些问题揭示了机器学习爱好者对相关知识的深度理解。在本次探索中,
秋招开始了,准备好在机器学习面试中脱颖而出了吗?云朵君给大家准备了一个机器学习 (ML) 面试题库,我们将深入探讨这个活跃领域背后的基本概念。从解读 F1 分数背后的原理到逻辑回归术语的细微差别,这些问题揭示了机器学习爱好者对相关知识的深度理解。在本次探索中,我们将揭示激活函数的重要性、召回率在癌症识别中的关键作用,以及倾斜数据对模型性能的影响。我们的探索涵盖了从集成方法的原理到偏差-方差相互作用中固有的权衡等诸多主题。随着我们逐一解答,机器学习知识的逐渐展开,为错综复杂的机器学习领域提供了一个整体视角。
Q1. 为什么我们在计算 F1 分数时要取精确率和召回率的调和平均值,而不是简单地取这两个指标的平均值?
答:F1 分数(精确度和召回率的调和平均值)平衡了精确度和召回率之间的权衡。调和平均值比算术平均值对极端值的惩罚力度更大。当其中一个指标明显低于另一个指标时,这一点至关重要。在分类任务中,精确度和召回率可能呈反比关系;因此,调和平均值可确保 F1 分数对精确度和召回率赋予同等权重,从而提供更均衡的评估指标。
Q2. 为什么逻辑回归即使专门用于分类,其名称中也有回归?答:逻辑回归并不直接进行分类,而是使用线性模型来估计事件的概率(0-1)。然后我们选择一个阈值(例如 50%),将其转换为“是”或“否”等类别。因此,尽管名称中带有“回归”一词,但它最终告诉我们某个事件属于哪个类别。
Q3. 神经网络中激活函数的目的是什么?答:激活函数为神经网络引入非线性,使其能够学习数据中的复杂模式和关系。如果没有激活函数,神经网络就会退化为线性模型,从而限制其捕捉复杂特征的能力。常用的激活函数包括 S 型函数 (sigmoid)、Tanh 函数和 ReLU 函数,它们各自在不同层面引入非线性。这些非线性变换使神经网络能够逼近复杂函数,使其成为图像识别和自然语言处理的强大工具。
Q4. 如果你不知道数据是否经过缩放,并且必须在不查看数据的情况下处理分类问题,那么在随机森林和逻辑回归中,你会使用哪种技术?为什么?
答:在这种情况下,随机森林会是更合适的选择。逻辑回归对输入特征的尺度敏感,未缩放的特征会影响其性能。另一方面,由于随机森林的集成特性,其受特征缩放的影响较小。随机森林独立构建决策树,特征的缩放不会影响树之间的拆分决策。因此,在处理未缩放数据和有限的洞察力时,随机森林可能会产生更可靠的结果。
Q5. 在一个旨在识别个体癌症的二元分类问题中,如果你必须优先考虑一个性能指标,考虑到你不想冒任何人的生命风险,你更愿意在哪个指标上做出妥协:精确率还是召回率?为什么?
答:在癌症识别中,召回率(敏感度)比精确度更重要。最大化召回率可确保模型正确识别尽可能多的阳性病例(癌症实例),从而降低假阴性(漏诊)的可能性。癌症识别中的假阴性可能会造成严重后果。虽然精确度对于最大限度地减少假阳性至关重要,但优先考虑召回率有助于确保在医学领域对实际阳性病例具有更高的敏感度。
Q6. 在建立机器学习模型时,P值有什么意义?答:P值在传统统计学中用于确定特定效应或参数的显著性。P值可用于找出与预测更相关的特征。值越接近0,该特征的相关性就越高。
Q7. 数据集分布的偏度如何影响机器学习模型的性能或行为?答: 数据集分布的偏度会显著影响机器学习模型的性能和行为。以下是对其影响以及如何处理偏度数据的解释:
倾斜数据对机器学习模型的影响:
模型性能偏差:倾斜的数据会在模型训练中引入偏差,尤其是在对类别分布敏感的算法中。模型可能会偏向多数类别,导致在分类任务中对少数类别的预测效果不佳。对算法的影响:倾斜的数据会影响模型学习到的决策边界。例如,在逻辑回归或支持向量机 (SVM) 中,当一个类别支配另一个类别时,决策边界可能会偏向主导类别。预测误差:数据偏差会导致准确率指标虚高。模型可能通过简单地预测多数类就能获得较高的准确率,但却无法检测到少数类中的模式。答:在处理复杂多样的数据集或旨在提升模型的鲁棒性和泛化能力时,集成方法尤其有用。例如,在医疗保健场景中,疾病的诊断涉及多种医学检测(特征),每种检测都有其优缺点,因此可以采用模型集成,例如随机森林或梯度提升。将这些模型组合起来有助于减轻个体偏差和不确定性,从而获得更可靠、更准确的整体预测。
Q9. 如何检测数据集中的异常值?答:可以使用多种方法检测异常值,包括:
Z 分数:识别 Z 分数超出特定阈值的数据点。IQR(四分位距):标记超出 IQR 范围 1.5 倍的数据点。可视化:绘制箱线图、直方图或散点图可以揭示明显偏离常态的数据点。机器学习模型:可以使用经过训练的识别异常的模型来检测异常值,例如单类 SVM 或孤立森林。Q10. 解释机器学习中的偏差-方差权衡。它如何影响模型性能?答:偏差-方差权衡是指机器学习模型中偏差和方差引入的误差之间的微妙平衡。高偏差的模型会过度简化底层模式,导致训练集和未见数据的性能不佳。相反,高方差的模型会捕获训练数据中的噪声,无法泛化到新数据。
平衡偏差和方差至关重要。降低偏差通常会增加方差,反之亦然。最佳模型性能在于找到合适的权衡点,以实现较低的训练和测试数据误差。
Q11. 描述支持向量机(SVM)的工作原理及其核技巧。什么时候你会选择 SVM 而不是其他算法?
答:SVM 的目标是找到一个能够以最大间隔分离类别的最优超平面。核技巧允许 SVM 在高维空间中运行,将非线性可分数据转换为线性可分数据。
在以下情况下选择 SVM:
处理高维数据。
力求在各个阶层之间建立明确的界限。
使用核技巧处理非线性关系。
在可解释性与预测准确性相比不那么重要的场景中。
Q12. 解释一下套索和岭正则化之间的区别。答:套索正则化和岭正则化都是通过在损失函数中添加惩罚项来防止过拟合的技术。关键区别在于惩罚的类型:
Lasso(L1 正则化):将系数的绝对值添加到损失函数中,以鼓励稀疏特征选择。它倾向于将某些系数逼近零。岭回归(L2 正则化):将系数的平方值添加到损失函数中。它不鼓励使用较大的系数,但很少导致稀疏性。当特征选择至关重要时,选择套索;当所有特征对模型都有有意义的贡献时,选择岭(过度拟合)。
Q13. 解释机器学习中自监督学习的概念。答:自监督学习是一种模型根据现有数据生成标签的范式。它利用数据中固有的结构或关系来创建监督信号,而无需人工提供的标签。常见的自监督任务包括预测图像中缺失的部分、填充句子中被掩盖的单词,或生成视频序列中的相关部分。当标记数据获取成本相对较低时,这种方法非常有价值。
Q14. 解释一下超参数调整中贝叶斯优化的概念。它与网格搜索或随机搜索方法有何不同?
贝叶斯优化是一种基于迭代模型的优化技术,它使用概率模型来指导寻找最优超参数。与网格搜索或随机搜索不同,贝叶斯优化会考虑从先前迭代中获得的信息,从而将搜索引导至超参数空间中更有利的区域。这种方法效率更高,所需的评估次数更少,因此适用于复杂且计算量巨大的模型。
Q15. 解释半监督学习和自监督学习之间的区别。半监督学习:使用标记数据和未标记数据训练模型。该模型从标记样本中学习,同时利用未标记数据中的结构或关系来提高泛化能力。自监督学习:模型无需外部注释,即可从现有数据中生成标签。该学习任务旨在使模型预测数据的某些部分或特征,从而创建监督信号。Q16. 机器学习算法中袋外误差的意义是什么?袋外误差 (OOB) 是集成方法中一个重要的指标,尤其是在 Bagging(自举聚合)中。OOB 误差衡量的是模型在训练期间对自举样本中未包含的实例的性能。它是对模型泛化误差的无偏估计,无需单独的验证集。OOB 误差对于评估集成性能至关重要,并且可以指导超参数调整以获得更好的预测精度。
Q17. 解释一下Bagging和Boosting的概念。Bagging(自举聚合):Bagging 涉及通过随机抽样和替换创建训练数据集的多个子集(即 bag)。每个子集用于独立训练一个基础模型。最终的预测结果会聚合所有模型的预测,通常可以减少过拟合并提高泛化能力。Boosting:Boosting 旨在通过赋予错误分类的实例更多权重来逐步改进模型。它会训练多个弱学习器,每个后续学习器都会纠正其前一个学习器的错误。与 bagging 不同,Boosting 是一种自适应方法,每个模型都会关注集成模型的错误,从而提高整体性能。Q18. 与单一决策树相比,使用随机森林有哪些优势?减少过度拟合:随机森林通过在不同数据子集上训练多棵树并平均其预测来减轻过度拟合,从而提供更通用的模型。提高准确性:与单个决策树相比,随机森林的集成特性通常具有更高的准确性,尤其是对于复杂的数据集。特征重要性:随机森林衡量特征重要性,帮助识别预测过程中最有影响力的变量。对异常值的鲁棒性:由于多棵树的平均效应,随机森林对异常值的敏感度较低。Q19. bagging 如何减少模型的方差?Bagging 通过在训练数据的不同子集上训练基础模型的多个实例来降低模型方差。通过对这些不同模型的预测进行平均或组合,可以降低单个异常值或噪声实例的影响。集成的聚合预测往往更加稳健,并且更不容易在单个数据子集中过度拟合特定模式。
Q20. 在引导和聚合过程中,数据中的一个样本可以多次包含同一个示例(记录)吗?例如,数据集的第 344 行可以在单个样本中多次包含吗?
在自举法中,样本可能包含原始数据的重复项。由于自举法涉及有放回的随机抽样,因此原始数据集中的某些行可能会在单个样本中被多次选中。这一特性有助于提升集成中基础模型的多样性。
Q21. 解释 bagging 与机器学习中“没有免费午餐”定理之间的联系。
“没有免费的午餐”定理指出,没有任何一种机器学习算法能够在所有可能的数据集上都表现最佳。Bagging 通过使用不同的数据子集创建多个模型来包容模型的多样性。它是“没有免费的午餐”定理的一个实际实现,承认不同的数据子集可能需要不同的模型才能获得最佳性能。Bagging 通过在数据的不同方面充分利用不同模型的优势,提供了一种稳健的方法。
Q22. 解释 boosting 算法中硬投票和软投票的区别。硬投票:在硬投票中,集成中的每个模型都会进行预测,最终预测结果由多数投票决定。获得最多票数的类别将成为集成的预测结果。软投票:在软投票中,每个模型为每个类别提供一个概率估计,最终预测基于这些概率的平均值或加权平均值。软投票会考虑每个模型预测的置信度。Q23. 投票提升与简单多数投票和 bagging 有何不同?投票提升:提升算法专注于按顺序训练弱学习器,赋予错误分类的实例更大的权重。每个后续模型都会纠正错误,从而提高整体性能。简单多数投票:在简单多数投票(例如 bagging 算法)中,每个模型都有相同的投票权,多数票决定最终预测结果。但是,不会对错误进行顺序纠正。Bagging:Bagging 涉及在不同的数据子集上独立训练多个模型,并汇总它们的预测。Bagging 旨在减少方差和过拟合。Q24. 弱学习器(例如决策树桩、决策树)的选择如何影响投票提升模型的性能?
弱学习器的选择会显著影响投票提升模型的性能。决策树桩(只有一个分支的浅树)通常用作弱学习器。它们的计算成本较低,且容易出现欠拟合,因此适合用于提升。然而,使用更复杂的弱学习器(例如更深的树)可能会导致过拟合,并降低模型的泛化能力。弱学习器的简单性和复杂性之间的平衡对于提升性能至关重要。
Q25. 前向填充和后向填充是什么意思?A.正向填充:正向填充是一种通过沿列向前传播最后观察到的非缺失值来填充数据集中缺失值的方法。当时间序列或序列数据中间歇性出现缺失值时,此方法非常有用。
向后填充:向后填充与此相反,通过沿列向后传播下一个观察到的非缺失值来填充缺失值。它适用于未来值可能与过去值相似的场景。
这两种方法通常用于数据预处理,以处理时间相关数据集中的缺失值。
Q26. 区分特征选择和特征提取。特征选择:特征选择涉及从原始特征集中选择最相关的特征子集。其目标是消除不相关或冗余的特征,降低维度,并提高模型的可解释性和效率。方法包括过滤方法(基于统计指标)、包装方法(使用模型评估特征子集)和嵌入方法(融入模型训练过程)。特征提取:特征提取将原始特征转换为一组新的特征,通常维度较低。主成分分析 (PCA) 和 t 分布随机邻域嵌入 (t-SNE) 等技术将数据投射到新的空间,从而捕获重要信息并丢弃不太相关的细节。在处理高维数据或特征解释不太重要的情况下,特征提取尤其有用。Q27. 交叉验证如何帮助提高模型的性能?答:交叉验证通过评估模型对新数据的泛化能力来帮助评估和提升模型性能。它包括将数据集拆分成多个子集(fold),在不同的fold上训练模型,并在剩余的fold上验证模型。此过程重复多次,并计算平均性能。交叉验证可以更稳健地估计模型的性能,帮助识别过拟合,并指导超参数调整以获得更好的泛化效果。
Q28. 区分特征缩放和特征归一化。它们的主要目标和区别是什么?特征缩放:特征缩放是一个通用术语,指将特征的尺度标准化或变换到一致的范围内。它可以防止在模型训练过程中,尺度较大的特征支配尺度较小的特征。缩放方法包括最小-最大缩放、Z-score(标准化)和稳健缩放。特征归一化:特征归一化涉及将特征转换为平均值为 0、标准差为 1 的标准正态分布(Z 分数归一化)。它是一种特征缩放,强调实现特征的特定分布。Q29. 解释如何为特定的机器学习任务选择合适的缩放/归一化方法。需要考虑哪些因素?
A. 选择缩放/规范化方法取决于数据的特点和机器学习任务的要求:
最小-最大缩放:适用于对特征规模敏感的算法(例如神经网络)。当数据服从均匀分布时效果很好。Z 分数归一化(标准化):适用于假设特征服从正态分布的算法。能够抵抗异常值。稳健缩放:适用于数据集包含异常值的情况。它根据四分位距对特征进行缩放。选择方法时,要考虑算法的特性、特征的分布以及异常值的存在。
Q30. 将 z-score与其他标准化方法(如Min-Max缩放)进行比较和对比。
Z -score标准化:尺度的平均值是 0,标准差是 1。适合正态分布,对异常值不太敏感。Min-Max缩放:通常,将特征变换到特定范围 [0, 1]。保留原始分布,对异常值敏感。两种方法都对特征进行了标准化,但 z 分数适用于正态分布,并且对异常值具有鲁棒性。同时,最小-最大缩放方法简单易行,尤其适用于需要保留原始分布的情况。
Q31. IVF评分是什么,它在建立机器学习模型中有什么意义?答:“IVF 分数”并非机器学习或特征工程的标准缩写。如果“IVF 分数”指的是特定领域的特定指标或概念,则需要提供额外的上下文或说明来提供相关解释。
Q32. 如何计算包含异常值的数据集的z-score?在这种情况下,可能还需要考虑哪些其他因素?
答:在计算包含异常值的数据集的 z 分数时,务必注意它们对平均值和标准差的影响,因为这些影响可能会使 z-score计算结果出现偏差。异常值会显著影响这些统计数据,导致 z 分数不可靠,并对正态性产生误解。为了解决这个问题,一种方法是考虑使用稳健的指标,例如中位数绝对偏差 (MAD),而不是平均值和标准差。MAD 受异常值的影响较小,可以提供更具弹性的离散度估计。通过使用 MAD 计算数据的中心和散度,可以得出不易受异常值影响的 z 分数,从而能够更准确地检测异常值并评估此类情况下的数据正态性。
Q33. 解释一下训练期间剪枝和训练后剪枝的概念。每种方法的优缺点是什么?
训练期间修剪:在训练期间,决策树会生长到最大深度,然后根据某些标准(例如信息增益)修剪不必要的分支。这有助于通过移除捕获训练数据中噪声的分支来防止过度拟合。训练后修剪:训练期间,允许树不受限制地生长,训练结束后进行修剪。这可能涉及删除对整体预测性能贡献不大的节点或分支。优点和缺点:
训练期间剪枝:优点包括减少过拟合,并可能提高训练效率。然而,它需要在训练期间设置超参数,如果选择不当,可能会导致欠拟合。训练后剪枝:允许树在训练期间捕获更多细节,并可能提高准确率。然而,这也可能导致过拟合,训练后的剪枝决策可能需要更加明智。选择取决于数据集以及模型复杂性和泛化之间的理想权衡。
Q34. 解释机器学习中模型量化和剪枝背后的核心原则。它们的主要目标是什么?它们之间有何不同?
模型量化:模型量化会降低神经网络中权重和激活函数的精度。它涉及用更少的位数来表示模型参数,例如将 32 位浮点数转换为 8 位整数。其主要目标是减少模型的内存占用和计算需求,使其更高效地部署在资源受限的设备上。剪枝:模型剪枝涉及从神经网络中移除不必要的连接(权重)或整个神经元。其主要目标是简化模型结构,减少参数数量,并提高推理速度。剪枝可以是结构化的(移除整个神经元),也可以是非结构化的(移除单个权重)。Q35. 你将如何处理图像分割问题?答:解决图像分割问题涉及以下步骤:
数据准备:收集一个带有图像和32个标签的数据集。如何计算包含异常值的数据集的z分数?在这种情况下,可能还需要考虑哪些其他因素?稳健统计数据:考虑使用稳健统计数据(例如中位数和四分位距)代替平均值和标准差,以减少异常值的影响。异常值处理:在计算 z 分数之前评估是否删除或转换异常值。相应的像素级注释指示对象边界。模型选择:根据任务的具体要求和特点,选择合适的分割模型,例如U-Net、Mask R-CNN或DeepLab。数据增强:使用旋转、翻转和缩放等技术增强数据集,以增加可变性并提高模型泛化能力。模型训练:使用标记数据集训练所选模型,优化分割精度。如果可以进行迁移学习,则利用预训练模型。超参数调整:微调学习率、批量大小和正则化等超参数,以优化模型性能。评估:使用验证集上的交集 (IoU) 或 Dice 系数等指标来评估模型性能。后处理:应用后处理技术来细化分割掩模并处理潜在的伪影或噪声。Q36. 什么是GridSearchCV?答: GridSearchCV ,即网格搜索交叉验证,是机器学习中的一种超参数调优技术。它会系统地搜索预定义的超参数网格,以找到能够实现最佳模型性能的组合。它会对每种超参数组合进行交叉验证,评估模型在不同训练数据子集上的性能。
该过程涉及定义超参数网格、指定机器学习算法以及选择评估指标。GridSearchCV 会详尽测试所有可能的超参数组合,从而帮助确定能够最大化模型性能的最佳组合。
Q37. 什么是假阳性和假阴性,它们有何重要性?假阳性(FP):在二元分类中,当模型错误地预测正类时,就会出现假阳性。这意味着模型错误地将一个实例识别为属于正类,而实际上它属于负类。假阴性(FN):当模型错误地预测负类时,就会出现假阴性。这意味着模型无法识别属于正类的实例。意义:
假阳性:在医疗诊断等应用中,假阳性可能导致不必要的治疗或干预,从而给患者带来痛苦和额外费用。假阴性:在疾病检测等关键情况下,假阴性可能会导致未被发现的问题,从而延误必要的行动并可能造成伤害。其重要性取决于问题的具体背景以及错误分类的相关成本或后果。
Q38. 机器学习中的 PCA 是什么?它可以用于选择特征吗?PCA(主成分分析):PCA是一种降维技术,它将高维数据转换为低维空间,同时尽可能保留方差。它识别主成分,即原始特征的线性组合。使用 PCA 进行特征选择:虽然 PCA 主要用于降维,但它通过突出显示最具信息量的成分间接地执行特征选择。然而,当单个特征的可解释性至关重要时,特征选择可能会有更好的选择。Q39. 你训练的模型偏差高、方差低。你会如何处理?解决高偏差和低方差的模型涉及:
增加模型复杂度:选择更复杂的模型,以便更好地捕捉数据中的潜在模式。例如,从线性模型转变为非线性模型。特征工程:引入模型可能缺少的额外相关特征,以提高其学习能力。减少正则化:如果模型具有正则化参数,请考虑减少它们以使其更紧密地适合训练数据。集成方法:利用集成方法,结合多种模型的预测,以提高整体性能。超参数调整:尝试超参数调整来找到模型的最佳设置。Q40. ROC曲线下面积的解释是什么?答:接收者操作特征 (ROC) 曲线是二分类模型在不同判别阈值下性能的图形表示。曲线下面积 (AUC) 衡量模型的整体性能。AUC 的解释如下:
AUC = 1:完美的分类器,没有假阳性和假阴性。
AUC = 0.5:该模型的表现并不比随机机会更好。
AUC > 0.5:该模型的表现优于随机机会。
AUC 值越高,表示判别能力越强,值越接近 1,表示性能越好。ROC AUC 值可用于评估存在类别不平衡的模型,或用于考虑不同的操作点。
在机器学习面试题的纷繁复杂中,我们探讨了一系列对于理解这门不断发展的学科的细微差别至关重要的主题。从 F1 分数中精确度和召回率的微妙平衡,到在不同数据集中策略性地运用集成方法,每个问题都揭示了机器学习专业知识的层面。无论是辨别医学诊断中召回率的关键性,还是偏差数据对模型行为的影响,这些问题都探究了知识的深度和分析思维。随着这段旅程的结束,它让我们对机器学习的多元领域有了全面的了解。它帮助我们做好准备,应对未来在充满活力的机器学习面试领域中面临的挑战和机遇。
来源:一个数据人的自留地