读完这21个机器学习面试问题和答案,入职率提升99%

来源:互联网 发布:吴大伟的淘宝店叫什么 编辑:程序博客网 时间:2024/06/05 22:45

全局

基本的ML理论,如偏差方差权衡。

向外行人解释机器学习。

想象一个好奇的孩子,将他的手掌放在蜡烛火焰上,并在感受到短暂的灼热后立刻把手缩回来。第二天,他碰到一个热的炉子,顶部看到红色,感觉到前一天像蜡烛一样的热浪。

这个孩子从来没有碰过炉灶,但幸运的是,他从以前的数据中学到了,避免了红色的灼伤。

“拟合”模型意味着什么?超参数如何相关?

拟合模型是使用训练数据学习模型参数的过程。

参数有助于定义机器学习模型的数学公式。

然而,还有一些称为超参数的数据不能被学习的“较高级”参数。

超参数定义模型的属性,如模型复杂度或学习率。

解释偏差方差权衡。

预测模型在偏差(拟合模型数据的方式)和方差(基于输入变化的多少)之间有权衡。

更简单的模型是稳定的(低方差),但它们不接近真相(高偏差)。

更复杂的模型更容易被过度使用(高差异),但它们具有足够的表达能够接近真实性(低偏倚)。

给定问题的最佳模式通常位于中间的某处。

▍优化

找到模型最佳参数的算法。

随机梯度下降(SGD)和梯度下降(GD)之间有什么区别?

两种算法都是通过对数据进行参数评估,然后进行调整,找到一组最小化损失函数的参数的方法。

在标准梯度下降中,您将评估每组参数的所有训练样本。这类似于为解决这个问题而采取了大而缓慢的步骤。

在随机梯度下降中,在更新参数集之前,您只需评估1个训练样本。这类似于向解决方案迈出的小步骤。

什么时候使用GD超过SDG,反之亦然?

GD理论上最大限度地减少误差函数比SGD更好。然而,一旦数据集变大,SGD就会收敛得更快。

这意味着GD对于小数据集是优选的,而SGD对于较大的数据是优选的。

然而,实际上,SGD用于大多数应用程序,因为它可以将误差函数最小化,同时为大型数据集提供更快的速度和更高的内存效率。

数据预处理

处理丢失的数据,偏态分布,异常值等

什么是Box-Cox转换?

Box-Cox转换是一种广泛的“权力转型”,它转换数据,使分布更加正常。

例如,当lambda参数为0时,它相当于对数转换。

它用于稳定方差(消除异方差)并使分布正常化。

什么是3种数据预处理技术来处理异常值?

1.Winsorize(cap 阈值)。

2.转换以减少偏态(使用Box-Cox或类似的)。

3.如果你确定它们是异常或测量错误,请删除异常值。

减少维度的3种方法是什么?

1.去除共线特征。

2.执行PCA,ICA或降低其他形式的算法维数。

3.结合特征与特征工程。

抽样与拆分

如何分割数据集以调整参数并避免过度拟合。

你应该为你的训练,验证和测试集分配多少数据?

你必须找到平衡,每个问题都没有正确的答案。

如果你的测试集太小,你将对模型性能有一个不可靠的估计(性能统计量会有很大差异)。

如果你的训练集太小,你的实际模型参数会有很大差异。

一个好的经验是使用80/20训练集/测试拆分法则。

然后,您的训练集可以进一步分为训练/验证或分区进行交叉验证。

如果你将数据分成训练/测试拆分,是否还有可能超过你的模型?

是的,绝对有可能。

一个常见的初学者错误是在查看其在测试集上的表现后,重新调整模型或训练具有不同参数的新模型。

在这种情况下,它的模型选择过程导致过度拟合。

测试集不应该被影响,直到你准备好进行最后的选择。

监督学习

使用分类和回归模型学习标记数据。

KNN邻近算法的优缺点是什么?

优点: 最近有一个很好的直观的解释,往往工作运行中非常好,工作的可比对象先天会指明问题。例如,你可以通过在该地区其他房屋建模,建立一个kNN房屋价格模型,分析具有相似数量的卧室,占地面积等。

缺点:它们是内存密集型的,也没有内置的功能选择或正则化,所以它们不能很好的处理高维数。

神经网络的优缺点有哪些?

优点: 神经网络(特别是deep NNs)已经导致非结构化数据集(如图像,音频和视频)的性能突破。他们令人难以置信的灵活性允许他们学习其他ML算法没有的学习模式。

缺点:但是,它们需要大量的训练数据才能汇聚。选择正确的架构也很困难,而内部的“隐藏”层是难以理解的。

如何根据训练集大小选择分类器?

如果训练集小,高偏置/低方差模型(例如朴素贝叶斯)往往是因为他们不太可能被过度拟合有更好的表现。

如果训练集很大,低偏差/高方差模型(如Logistic回归)往往表现更好,因为它们可以反映更复杂的关系。

无监督学习

使用因子和聚类分析模型学习未标记的数据。

解释LDA(文档主题生成模型)。

LDA是主题建模的常见方法,或按主题对文档进行分类。

LDA是一种生成模型,将文档表示为每个具有个性化的可能词汇,进行概率分布的主题的模型。

“Dirichlet”分布仅仅是分布的分布。在LDA中,文档是分发的话题分布。

什么是层次聚类模型?举个例子

分层(或连通性)集群模型是基于距离的模型,其表示使用树形图的集群。

它们不提供数据集的单个分区,而是产生在一定距离合并的集群层次结构。

一个例子是单链聚类。

模型评估

根据各种绩效指标做出决策。

什么是ROC曲线,什么是AUC(又名AUROC)?

ROC(接受者操作特性曲线)True Positive Rate(y-axis)与False Positive Rate(x

轴)的二进制分类器的性能曲线。

AUC是ROC曲线下的面积,它是评估二值分类模型的常用性能指标。

这等于在统一绘制的随机正值,在均匀绘制的随机负数之前排列的预期概率。

为什么ROC曲线下的区域(AUROC)比原始精度更好,作为样本外的评估指标?

与原始准确度不同,AUROC对类不平衡状况很强。

例如,如果你想检测出只有1%人口普遍存在的癌症,您可以通过简单地分类每个人都无癌症,建立一个达到99%准确度的模型。

集成学习

组合多种模型以获得更好的性能。

为什么整体方法优于单个模型?

他们平均偏差,减少差异,并且不太可能过度。

机器学习有一个共同点:“集成,获得2%”。

这意味着你可以像往常一样构建模型,通常期望从集合中获得小的性能提升。

Explain bagging

Bagging或Bootstrap聚合是一种集合方法,其中首先通过重采样将数据集分成多个子集。

然后,每个子集用于训练一个模型,最后的预测是通过投票或平均组件模型进行的。

并行进行引导聚合。

▍商业应用

机器学习如何帮助不同类型的企业。

(SaaS|零售银行|电子商务网站)的一些关键业务指标是什么?

关键业务指标,通常成为为KPI(关键绩效指标),是数据科学家工作的重要组成部分。这里有几个例子,但你应该练习头脑风暴。

提示:如有疑问,请从“这个业务如何赚钱”这个简单的问题开始吧。

SaaS:客户终身价值,新帐户,帐户终身,流失率,使用率,市场份额

零售银行:离线潜在客户,在线潜在客户,新帐户(按帐户类型划分),风险因素,产品亲和力

电子商务:产品销售额,ARPU值,购物车流失率,电子邮件打开率,转换率

如何帮助我们的营销团队更有效率?

答案将取决于公司的类型,这里有些例子。

聚类算法为每种类型的营销活动构建定制客户细分。

自然语言处理标题来预测广告支出前的效果。

基于用户的网站行为预测转换概率,以创建更好的重定向广告系列。

原创粉丝点击