21个经典数据科学问题及答案(上)

译者:

白雪(某大型国企10年+IT从业者,初稿译者),龙星镖局(互联网从业者,终稿修订)

声明:

1)本文翻译自kdnuggets网站热文 21 Must-Know Data Science Interview Questions and Answers  本篇为第一部分,第二部分见链接

2)本文初稿已授权发表在@北冥乘海生 老师维护的“计算广告”相关账号上。

《检测伪数据科学家的20个问题》在1月获得了最多的阅读量。但作者并没有提供这些问题的答案,所以KDnuggets的编辑们聚在一起解答了这些问题。我也额外增加了一个通常容易被忽略的问题。下面是这些问题的回答。

问题1: 什么是正则化项以及它为什么有用。【Matthew Mayo解答】

正则化项是用以保证模型平滑性的一个调节参数,它可以起到防止过拟合的作用。(参考KDnuggets 关于过拟合的内容 Overfitting)。通常做法是将已有的权向量经过固定的变换,这种变换通常是L1(Lasso)或者L2(ridge),也可以是其他的形式。最终模型优化目标是最小化考虑了正则化后的损失函数。 Xavier Amatriain有一个很好的例子对L1和L2 正则化做了比较。

qa1

图1:Lp 球:当p的值减小,对应的L-p空间的大小也减小。

问题2:你最崇拜的数据科学家有哪些?创业公司呢?【Gregory Piatetsky解答】

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

qa2

Geoff HintonYann LeCun, 和 Yoshua Bengio 在神经网络方面坚持不懈的努力开启了当前深度学习的革命。

Demis Hassabis 在DeepMind的突出贡献,使机器在玩Atari游戏以及最近进行的围棋比赛中达到了人类或超人类的水平。

来自DataKind的Jake Porway和U. Chicago/DSSG的 Rayid Ghani,使数据科学可以在社会福利方面发挥作用。

DJ Patil 美国政府的第一位首席数据科学家,应用数据科学使美国政府更好的工作。

Kirk D. Borne以社交媒体上的影响力和领导力而被大家所知。

Claudia Perlich在广告生态圈方面有很出色工作,他还是KDD 2014的主席。

Hilary Mason 在Bitly 贡献伟大,激励着其他人成为大数据的摇滚明星。

Usama Fayyad 在KDD和Data Science展现出的领导力和规划才能,帮助和激励着我和其他千千万的数据科学工作者竭尽全力工作。

Hadley Wickham 在基于R的数据科学和数据可视化方面的卓越工作,包括 dplyr, ggplot2, 和 Rstudio。

在数据科学领域有很多出色的创业公司。为了避免利益冲突,我就不将它们都列出来了。

一些最近的创业公司的报道可以参见这个链接 startups.

问题3:如何验证使用多元回归生成的(定量结果变量)预测模型。【Matthew Mayo解答】

推荐的模型验证的方法:

  • 如果模型预测值远在响应变量范围之外,那么很显然,模型的预估或者准确性存在问题。
  • 如果值看起来合理,参数存在以下问题中任何一个也可以判断出预估的问题或者多重共线性问题:期望值相反的迹象,值特别大或特别小,或者在给模型输入新数据时发现不一致。
  • 通过向模型输入新的数据,来做预测,然后用相关系数(R平方)来评价模型的正确性。
  • 使用数据分割构建一个分离的数据集来训练模型参数,另一个来验证预测。
  • 如果数据集包含有很小数量的实例,就要使用jackknife resampling技术,并用R平方 和MSE来测量效度。

问题4:什么是查准率和查全率?与ROC曲线的关系?【Gregory Piatetsky解答】

来自KDnuggets FAQ之查准率和查全率的答案:

计算差准率和查全率实际上很简单。想象在10,000个实例中有100个正例。当你预测哪些是正类的时候如果选取了200个,那么召回这100个正类的概率自然会大一些。记下你预测的这些id,参照实际的标记,将结果中正确或者错误的次数分别加起来,有四种方法表示正确或错误。

  • TN / True Negative:实例是负的,预测也是负的
  • TP / True Positive:实例是正的,预测也是正的
  • FN / False Negative:实例是正的,但是预测是负的
  • FP / False Positive:实例是负的,但是预测是正的

Predicted Negative Predicted Positive
Negative Cases TN: 9,760 FP: 140
Positive Cases FN: 40 TP: 60

现在数一下10,000实例中分别在每一栏有多少,可以看到:

现在,你的老板问你三个问题:

  • 预测正确的百分比是?

回答:精度(accuracy)是(9,760 + 60)比上10,000 = 98.2%

  • 实际为正例的样本你预测对了多少?

回答:查全率是60比上100 = 60%

  • 预测为正例的样本中实际为正例的百分比?

回答:查准率是60比上200 = 30%

在维基百科关于查准率和查全率的解释 Precision and recall

qa3

图4查准率和查全率

ROC曲线体现了灵敏性(召回)和特异性(不是精确度)之间的关系。通常用于衡量二分类器的好坏。然而,当处理正负样本分布得极不均匀数据集,P-R曲线展示信息更具代表性。Quora上该问题的解答:ROC曲线和P-R曲线的差别是什么?

问题5:如何证明对一个算法的改进确实产生了作用?【Anmol Rajpurohit解答】

在对快速迭代(又叫“快速成名”)的追逐中,违反科学方法论的原则常导致误导性的创新。例如:没有经过严格验证的很吸引人的观点。一个这样的场景如下,你接到了旨在更好效果输出的算法改进任务,你可能会有好几个潜在的改进思路。心急的做法是尽快列出这些思路并实施。当需要支撑数据时,只有很局限的结果可以共享,这些结果很容易受到选择偏差(已知或未知)影响或者误导性的全局极小(缺乏适当变化的测试数据)影响。

数据科学家不应该让他们的情感凌驾于逻辑推理之上。尽管证明算法改进确实有效的真正办法要依赖于手边实际的案例,但仍有一些通用的指导原则可以遵循:

  • 确定用于效果评测的测试数据没有选择偏差。
  • 确保测试数据有足够的变化(多样性),以便对真实数据有扩展性(有助于避免过拟合)
  • 确保遵循“对照实验”原则,比如当对比效果时,确保新旧算法的测试环境(硬件等)完全一致。
  • 确定试验(近似)结果可以重复。
  • 检查结果反映了局部极大值/极小值或是全局极大值/极小值

遵循以上原则的通常做法是A/B测试,将两个算法都放到相似的环境里运行相当长一段时间,并且将实际输入数据随机的划分到两个算法上。这种方法在网络分析中很常用。

问题6:什么是根本原因分析?【Gregory Piatetsky解答】

维基百科上的解释:

(Root cause analysis)RCA是确定错误或问题的根本原因的方法。当把某个因素从问题故障序列中去除,能够防止最终不良事件的再次发生,该因素会被认定为根本原因;反之,诱因影响事件的结果,却不是根本原因。

根本原因分析法最初是用来分析工业事故,现在已经在其他领域广泛应用,例如:医疗保健,项目管理和软件测试。

这里有一些来自明尼苏达州的根本原因分析工具包Root Cause Analysis Toolkit 。

本质上来说,通过反复问“为什么”,就可以找到一个问题的根本原因和原因之间的关系,直到找到问题的根本。这个方法通常叫做“5 Whys”,实际上问题的个数并非一定是5个。

qa4

图5“为什么”分析法示例,来自 The Art of Root Cause Analysis .

问题7:你熟悉以下概念吗?价格优化、价格弹性、库存管理、竞争情报。请举例说明。【Gregory Piatetsky解答】

这些术语都是经济方面的,在数据科学中并不常被问道,但了解这些术语很有用。

价格优化是用数学工具来确定,消费者对通过不同渠道获得的产品或服务的不同价格的反应。

大数据和数据挖掘使价格优化能够进行个性化设置。现在像亚马逊这样的公司可以将价格优化更进一步,主要是基于用户的历史行为,实现不同用户不同的价格。尽管这样做是否公平仍存在很大的争论。

价格弹性在典型用法里特指:

  • 需求的价格弹性,对价格敏感度的一种度量。计算公式如下:

需求的价格弹性 = 需求量变化的百分之 / 价格变化的百分比

类似的,供给的价格弹性显示的是商品或服务的供给数量随商品价格变动而变动的情况。

库存管理是对公司在生产过程中使用的各种物品的订购、储存和使用的监督和控制,以及待售成品数量的监督和控制。

维基百科上的定义

Competitive intelligence:定义、收集、分析、和发布有关产品、客户、竞争对手以及制定战略决策所需的任何方面的情报。

像Google Trends, Alexa, Compete等工具都可以在网上获得总体趋势,进而分析竞争对手的情况。
下面是一些有用的资料:

问题8:什么是统计功效?【Gregory Piatetsky解答】

维基百科定义二元假设检验的统计功效或者灵敏度( Statistical power or sensitivity )为当备择假设H1为真时,正确地拒绝零假设(H0)的概率。

另一种说法,统计功效是当效应存在时,能够检测到效应的可能性。功效越高,出现ii类错误可能性越低(即检测结论没有效应,但事实上是有的,假阴性。)。

下面是一些计算统计功效的工具calculate statistical power. 。

问题9:什么是重采样及它们为什么有用。它们的局限是什么。【Gregory Piatetsky解答】

经典的统计参数检测把实测统计量当作理论抽样分布。而重采样是数据驱动的,而不是理论驱动的方法,后者是在同一个样本中反复采样的技术。

以下方法的任一种都可以被称为重采样

  • 使用可用数据集的子集或者随机可重复采样出一批的数据点(boosting)来估计样本统计量(中位数、方差、百分位数)的准确率。
  • 在进行显著性检验时交换数据点的标记(置换检验,也被称为精确检验,随机化检验,或重随机化检验)
  • 通过随机子集验证模型(拔靴法,交叉验证)

更多参见维基百科上的相关介绍bootstrapping, jackknifing.

也可参考How to Check Hypotheses with Bootstrap and Apache Spark

qa5

这里有一个很好的概览 Resampling Statistics.

问题10:假阳性多好还是假阴性多好?说明原因。【Devendra Desale解答】

这个问题取决于要解决的问题和领域。

在医学检验方面,当发生假阴性时,会给病人和医生提供错误的检查信息,但病人有病时却检测为没有病。这会导致病人和疾病得不到适合或足够的治疗。所以,这个时候我们希望多一些假阳性。

在垃圾邮件过滤时,假阳性意味着会错误地将正常邮件当成了垃圾邮件,从而干扰邮件的传送。尽管大多数的反垃圾邮件策略能够拦截或过滤大部分的垃圾邮件,但减少假阳性带来的误伤也非常重要。所以,这时我们希望多一些假阴性。

问题11:什么是选择偏差?为什么它很重要以及怎样避免它。【Matthew Mayo解答】

一般来说,选择偏差指的是由于非随机性产生样本而引发错误的一种情况。举例来说,如果一个给定的数量为100的测试样本,分别由60/20/15/5分成四类组成,但实际的训练样本中每类实例数量又是接近的,那么模型有可能给出错误的假设—每类占比是决定性的预测因素。避免非随机抽样是解决选择偏差的最好办法,但当它在实践中有困难时,使用类似重采样、boosting和加权这样的策略也有助于解决这个问题。

Report Story

留下你的评论