网站首页 > 设计名人> 文章内容

面试干货!21个必知数据科学面试题和答案

※发布时间:2016-10-1 21:42:29   ※发布作者:habao   ※出自何处: 

  限时干货下载:

  回复【】免费获取【超全数据分析资料免费下载(包含SQL,R语言,SPSS,SAS,python,数据挖掘)!】

  来源:“数盟社区”

  作者GregoryPiatetsky,KDnuggets.

  原文链接:

  图1.Lp球:p的值减少,相应的L-p空间的大小也会减少。

  Q2.你最崇拜哪些数据科学家和创业公司?

  回答者:GregoryPiatetsky

  这个问题没有标准答案,下面是我个人最崇拜的12名数据科学家,排名不分先后。

  GeoffHinton,YannLeCun,和YoshuaBengio-因他们对神经网络的坚持不懈的研究,和开启了当前深度学习的革命。

  DemisHassabis,因他在DeepMind的杰出表现——在Atari游戏中实现了人或超人的表现和最近Go的表现。

  来自datakind的JakePorway和芝加哥大学DSSG的RayidGhani因他们让数据科学对社会产生贡献。

  DJPatil,美国第一首席数据科学家,利用数据科学使美国政府工作效率更高。

  KirkD.Borne,因其在大众传媒中的影响力和领导力。

  ClaudiaPerlich,因其在广告生态系统的贡献,和作为kdd-2014的领头人。

  HilaryMason在Bitly杰出的工作,和作为一个大数据的明星激发他人。

  UsamaFayyad,展示了其领导力,为KDD和数据科学设立了高目标,这帮助我和成千上万的人不断激励自己做到最好。

  HadleyWickham,因他在数据科学和数据可视化方面的出色的成果,包括dplyr,ggplot2,和RStudio。

  数据科学领域里有太多优秀的创业公司,但我不会在这里列出它们,以避免利益冲突。

  Q3.如何验证一个用多元回归生成的对定量结果变量的预测模型。

  回答者:MatthewMayo

  模型验证方法:

  如果模型预测的值远远超出响应变量范围,这将立即显示较差的估计或模型不准确。

  如果值看似是合理的,检查参数;下列情况表示较差估计或多重共线性:预期相反的迹象,不寻常的或大或小的值,或添加新数据时观察到不一致。

  利用该模型预测新的数据,并使用计算的系数(平方)作为模型的有效性措施。

  使用数据拆分,以形成一个单独的数据集,用于估计模型参数,另一个用于验证预测。

  如果数据集包含一个实例的较小数字,用对折重新采样,测量效度与R平方和均方误差(MSE)。

  Q4.解释准确率和召回率。它们和ROC曲线有什么关系?

  回答者:GregoryPiatetsky

  这是kdnuggets常见问题的答案:精度和召回

  计算精度和召回其实相当容易。想象一下10000例中有100例负数。你想预测哪一个是积极的,你选择200个以更好的机会来捕捉100个积极的案例。你记录下你预测的ID,当你得到实际结果时,你总结你是对的或错的。以下是正确或错误的四种可能:

  TN/真阴性:例阴性且预测阴性

  TP/真阳性:例阳性且预测阳性

  FN/假阴性:例阳性而预测阴性

  FP/假阳性:例阴性而预测阳性

  意义何在?现在你要计算10000个例子中有多少进入了每一个bucket:

  现在,你的雇主会问你三个问题:

  1.你的预测正确率有几成?

  你回答:确切值是(9760+60)除以10000=98.2%

  2.你获得阳性的例子占多少比例?

  你回答:召回比例为60除以100=60%

  3.正值预测的百分比多少?

  你回答:精确值是60除以200=30%

  看一个维基上的精度和召回的优秀范例。

  图4.精度和召回

  ROC曲线代表了灵敏度(召回)与特异性(不准确)之间的关系,常用来衡量二元分类的性能。然而,在处理高倾斜度的数据集的时候,精度-召回(PR)曲线给出一个更具代表性的表现。见Quora回答:ROC曲线和精度-召回曲线之间的区别是什么?。

  Q5.如何证明你对一个算法的改进确实比什么都不做更好?

  回答者:AnmolRajpurohit

  我们会在追求快速创新中(又名“快速成名”)经常看到,违反科学方法的原则导致误导性的创新,即有吸引力的观点却没有经过严格的验证。一个这样的场景是,对于一个给定的任务:提高算法,产生更好的结果,你可能会有几个关于潜在的改善想法。

  人们通常会产生的一个明显冲动是尽快公布这些想法,并要求尽快实施它们。当被问及支持数据,往往是共享的是有限的结果,这是很有可能受到选择偏差的影响(已知或未知)或一个误导性的全局最小值(由于缺乏各种合适的测试数据)。

  数据科学家不让自己的情绪操控自己的逻辑推理。但是确切的方法来证明你对一个算法的改进确实比什么都不做更好将取决于实际情况,有几个共同的指导方针:

  确保性能比较的测试数据没有选择偏差

  确保测试数据足够,以成为各种真实性的数据的代表(有助于避免过拟合)

  确保“受控实验”的原则,即在比较运行的原始算法和新算法的表现的时候,性能、测试环境(硬件等)方面必须是完全相同的。

  确保结果是可重复的,当接近类似的结果出现的时候

  检查结果是否反映局部极大值/极小值或全局极大值/最小值

  来实现上述方针的一种常见的方式是通过A/B测试,这里面两个版本的算法是,在随机分割的两者之间不停地运行在类似的环境中的相当长的时间和输入数据。这种方法是特别常见的网络分析方法。

  Q6.什么是根本原因分析?

  回答者:GregoryPiatetsky

  根据维基百科:

  根本原因分析(RCA)是一种用于识别错误或问题的根源的解决方法。一个因素如果从problem-fault-sequence的循环中删除后,阻止了最终的不良事件重复出现,则被认为是其根源;而一个因果因素则影响一个事件的结果,但不其是根本原因。

  根本原因分析最初用于分析工业事故,但现在广泛应用于其他领域,如医疗、项目管理、软件测试。

  这是一个来自明尼苏达州的实用根本原因分析工具包。

  本质上,你可以找到问题的根源和原因的关系反复问“为什么”,直到找到问题的根源。这种技术通常被称为“5个为什么”,当时涉及到的问题可能比5个更少或更多。

  图“5个为什么”分析实例,来自《根本原因分析的艺术》

  Q7.你是否熟悉价格优化、价格弹性、库存管理、竞争情报?举例说明。

  回答者:GregoryPiatetsky

  这些问题属于经济学范畴,不会经常用于数据科学家面试,但是值得了解。

  价格优化是使用数学工具来确定客户会如何应对不同渠道产品和服务的不同价格。

  大数据和数据挖掘使得个性化的价格优化成为可能。现在像亚马逊这样的公司甚至可以进一步优化,对不同的游客根据他们的购买历史显示不同的价格,尽管有强烈的争论这否公平。

  通常所说的价格弹性是指需求的价格弹性,是对价格敏感性的衡量。它的计算方法是:

  需求的价格弹性=需求量变动%÷价格变动%。

  同样,供应的价格弹性是一个经济衡量标准,显示了产品或服务的变化如何响应价格变化。

  库存管理是一个企业在生产过程中使用的产品的订购、储存和使用的监督和控制,它将销售的产品和销售的成品数量进行监督和控制。

  维基百科定义:

  竞争情报:定义、收集、分析和分发有关产品、客户、竞争对手和所需环境的任何方面的情报,以支持管理人员和管理者为组织做出战略决策的环境。

  像GoogleTrends,Alexa,Compete这样的工具可以用来确定趋势和分析你的竞争对手的网站。

  下面是一些有用的资源:

  竞争情报的报告指标byAvinashKaushik

  37款监视你的竞争对手的最好的营销工具fromKISSmetrics

  来自10位专家的10款最佳竞争情报工具

  Q8.什么是统计检定力?

  回答者:GregoryPiatetsky

  维基百科定义二元假设检验的统计检定力或灵敏度为测试正确率拒绝零假设的概率(H0)在备择假设(H1)是真的。

  换句话说,统计检定力是一种可能性研究,研究将检测到的效果时效果为本。统计能力越高,你就越不可能犯第二类错误(结论是没有效果的,然而事实上有)。

  这里有一些工具来计算统计检定力。

  Q9.解释什么是重抽样方法和它们为什么有用。并说明它们的局限。

  回答者:GregoryPiatetsky

  经典的统计参数检验比较理论抽样分布。重采样的数据驱动的,而不是理论驱动的方法,这是基于相同的样本内重复采样。

  重采样指的是这样做的方法之一

  估计样本统计精度(中位数、方差、百分位数)利用可用数据的子集(折叠)或随机抽取的一组数据点置换(引导)

  在进行意义测试时,在数据点上交换标签(置换测试),也叫做精确测试,随机测试,或是再随机测试)

  利用随机子集验证模型(引导,交叉验证)

  维基百科里关于bootstrapping,jackknifing。

  见HowtoCheckHypotheseswithBootstrapandApacheSpark

  这里是一个很好重采样统计的概述。

  Q10.有太多假阳性或太多假阴性哪个相比之下更好?说明原因。

  回答者:DevendraDesale

  这取决于问题本身以及我们正在试图解决的问题领域。

  在医学检验中,假阴性可能会给病人和医生提供一个虚假的安慰,表面上看它不存在的时候,它实际上是存在的。这有时会导致不恰当的或不充分的治疗病人和他们的疾病。因此,人们会希望有很多假阳性。

  对于垃圾邮件过滤,当垃圾邮件过滤或垃圾邮件拦截技术错误地将一个合法的电子邮件信息归类为垃圾邮件,并影响其投递结果时,会出现假阳性。虽然大多数反垃圾邮件策略阻止和过滤垃圾邮件的比例很高,排除没有意义假阳性结果是一个更艰巨的任务。所以,我们更倾向于假阴性而不是假阳性。

  Q11.什么是选择偏差,为什么它是重要的,你如何避免它?

  回答者:MatthewMayo

  选择偏差,一般而言,是由于一个非随机群体样本造成的问题。例如,如果一个给定的样本的100个测试案例是一个60/20/15/5的4个类,实际上发生在在群体中相对相等的数字,那么一个给定的模型可能会造成错误的假设,概率可能取决于预测因素。避免非随机样本是处理选择偏差最好的方式,但是这是不切实际的。可以引入技术,如重新采样,和提高权重的策略,以帮助解决问题。

  Q12.举例说明如何使用实验设计回答有关用户行为的问题。

  回答者:BhavyaGeethika.

  步骤1.制定研究问题

  页面加载时间对用户满意度评级的影响有哪些?

  步骤2.确定变量

  我们确定原因和结果。独立变量——页面加载时间,非独立变量——用户满意评级

  步骤3.生成假说

  减少页面下载时间能够影响到用户对一个网页的满意度评级。在这里,我们分析的因素是页面加载时间。

  图12.一个有缺陷的实验设计(漫画)

  步骤4.确定实验设计

  我们考量实验的复杂性,也就是说改变一个因素或多个因素,同时在这种情况下,我们用阶乘设计(2^k设计)。选择设计也是基于目标的类型(比较、筛选、响应面)和许多其他因素。

  在这里我们也确定包含参与者/参与者之间及二者混合模型。如,有两个版本的页面,一个版本的购买按钮(行动呼吁)在左边,另一个版本的在右边。

  包含参与者设计——所有用户组看到两个版本

  参与者之间设计——一组用户看到版本A,娶她用户组看到版本B。

  步骤5.开发实验任务和过程:

  详细描述实验的步骤、用于测量用户行为的工具,并制定目标和成功标准。收集有关用户参与度的定性数据,以便统计分析。

  步骤6.确定操作步骤和测量标准

  操作:一个因素的级别将被控制,其他的将用于操作,我们还要确定行为上的标准:

  在提示和行为发生之间的持续时间(用户点击购买了产品花了多长时间)。

  频率-行为发生的次数(用户点击次数的一个给定的页面在一个时间)

  持续-特定行为持续时间(添加所有产品的时间)

  程度-行为发生时的强烈的冲动(用户购买商品有多快)

  步骤7:分析结果

  识别用户行为数据,假说成立,或根据观察结果反驳例子:用户满意度评级与页面加载时间的比重是多少。

  Q13“长”数据和“宽”数据有什么不同之处?

  回答者:GregoryPiatetsky

  在大多数数据挖掘/数据科学应用记录(行)比特性(列)更多——这些数据有时被称为“高”(或“长”)的数据。

  在某些应用程序中,如基因组学和生物信息学,你可能只有一个小数量的记录(病人),如100,或许是20000为每个病人的观察。为了“高”工作数据的标准方法将导致过度拟合数据,所以需要特殊的方法。

  图13.对于高数据和宽数据不同的方法,与表示稀疏筛查确切数据简化,byJiepingYe。

  问题不仅仅是重塑数据(这里是有用的R包),还要避免假阳性,通过减少特征找到最相关的数据。

  套索等方法减少特性和稀疏覆盖在统计学习:套索和概括,由HastieTibshirani,Wainwright。(你可以免费下载PDF的书)套索等方法减少特性,在“统计学习稀疏”中很好地包含了:《套索和概括》byHastie,Tibshirani,andWainwright(你可以免费下载PDF的书)

  Q14你用什么方法确定一篇文章(比如报纸上的)中公布的统计数字是错误的或者是为了支持作者观点,而不是关于某主题正确全面的事实信息?

  一个简单的规则,由ZackLipton建议的:如果一些统计数据发表在报纸上,那么它们是错的。这里有一个更严重的答案,来自AnmolRajpurohit:每一个媒体组织都有目标受众。这个选择很大地影响着决策,如这篇文章的发布、如何缩写一篇文章,一篇文章强调的哪一部分,如何叙述一个给定的事件等。

  确定发表任何文章统计的有效性,第一个步骤是检查出版机构和它的目标受众。即使是相同的新闻涉及的统计数据,你会注意到它的出版非常不同,在福克斯新闻、《华尔街日报》、ACM/IEEE期刊都不一样。因此,数据科学家很聪明的知道在哪里获取消息(以及从来源来判断事件的可信度!)。

推荐: