剑客
关注科技互联网

21天混入数据科学家队伍(上)

雷锋网 (搜索“雷锋网”公众号关注) 按:本文原载于KDnuggets,译者为白雪(某大型国企10年+IT从业者,初稿译者)和龙星镖局(互联网从业者,终稿译者),文章来自计算广告(微信id:Comp_Ad),雷锋网已获授权。

21天混入数据科学家队伍(上)

在KDnuggets上,《检测伪数据科学家的20个问题》是1月份阅读量最高的文章,由于作者只是提问而没有给出答案,这篇文章也让厨子和火车司机们混入数据科学家队伍的难度大增。

现在好了!KDnuggets的编辑们凑在一块解答了这些问题。另外,我还增加了一个经常被忽略的问题。问题正好是21个,您一天掌握一个,正好三周时间,又可以找到混入数据科学家队伍的捷径了!

请大家特别注意文中用蓝色字体标出的关键词,即便你对于内容完全无法理解,只要在日常交流中经常使用这些术语,做到耗子啃尿盆儿——一肚子骚词儿,也能算半个数据科学家了。

注:文中提到的一些重要参考资料和相关工具放在了网盘上,可请在公众号后台发送信息“data1”获取。

第一天:  什么是正则化(regularization)?它有什么作用?【Matthew Mayo解答】

答:正则化项是保证模型平滑性的一个调节参数,它可以起到防止过拟合的作用。正则化的通常做法,是将已有的权重向量经过L1(Lasso)或者L2(ridge)变换,当然变换也可以是其他形式。最终的模型优化目标,是加入了正则化项后的损失函数。Xavier Amatriain给了一个很好的例子,对L1和L2正则化进行比较。

21天混入数据科学家队伍(上)

Lp球:p值减小,对应Lp空间也减小

第二天:你最崇拜的数据科学家和创业公司有哪些?【Gregory Piatetsky解答】

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

21天混入数据科学家队伍(上)

12位知名的数据科学家

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

  • Demis Hassabis在DeepMind(AlphaGo发明者,Google子公司)的突出贡献,使机器在玩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。

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

第三天:用多元回归(multiple regression)生成了一个量化输出的预测模型,如何验证其有效性?【Matthew Mayo.解答】

答:验证多元回归模型的方法有很多,我们推荐如下的一些方法:

  • 如果模型预测值远在响应变量范围之外,那么模型的预估准确性显然存在问题。

  • 虽然预测值看起来合理,但是参数存在以下问题,也可以判断存在预估问题或者多重共线性问题:与期望值相反的迹象;值特别大或特别小;在给模型输入新数据时发现不一致。

  • 通过向模型输入新的数据,来做预测,然后用相关系数来评价模型的正确性。

  • 把数据分成两份,一份用来训练模型参数,另一份用来验证。

  • 如果数据集很小,就要使用 jackknife resampling技术,并用R平方和MSE(mean squared error)来测量效度。

第四天:什么是查准率(precision)和查全率(recall)?与ROC曲线的关系?【Gregory Piatetsky解答】

答:计算 查准率查全率 实际上很简单。比如,在10,000个实例中有100个正例,如果你预测的结果有200个正例,那么显然召回这100个正例的概率自然会大一些。根据你的预测结果和实际的标签,将结果中正确或者错误的次数分别加起来,有如下四个统计量:

1、 TN / True Negative:实例是负的,预测也是负的

2、 TP / True Positive:实例是正的,预测也是正的

3、 FN / False Negative:实例是正的,但是预测是负的

4、 FP / False Positive:实例是负的,但是预测是正的

21天混入数据科学家队伍(上)

现在可以回答如下三个问题:

1、 预测正确的百分比是?

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

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

回答:查全率(recall)是60 / 100 = 60%

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

回答:查准率(precision)是60 / 200 = 30%

21天混入数据科学家队伍(上)

查准率和查全率

ROC曲线体现了灵敏性(召回)[原文:sensitivity, (RECALL)]和特异性(不是精确度)[原文:specificity(Not PRECISION)]之间的关系。通常用于衡量二分类器的好坏。然而,当处理正负样本分布得极不均匀数据集,PR曲线展示信息更具代表性。

第五天:如何证明对一个算法的改进的确是有用的?【Anmol Rajpurohit解答】

答:在对快速迭代(又叫“快速成名”)[原文:rapid innovation (aka “quick fame”)]的追逐中,违反科学方法论的原则常导致误导性的创新,特别是一些很吸引人但没经过严格验证的观点。考虑如下场景,你要改进算法的效果,并且有好几个改进思路。心急的做法,是尽快列出这些思路并实施。当需要支撑数据时,只有很局限的结果可以共享,这些结果很容易受到已知或未知的选择偏差、或者误导性的全局最优(原因是缺乏适当变化的测试数据)影响。

数据科学家最忌讳的是将情感凌驾于逻辑推理之上。虽然证明算法改进有效的方法要看实际案例,但仍有一些通用的指导原则:

  • 确定用于效果评测的测试数据没有选择偏差(selection bias)。

  • 确保测试数据有足够的变化(variety),以便对真实数据有扩展性(有助于避免过拟合)。

  • 确保遵循对照实验(controlled experiment)原则,比如当对比效果时,确保新旧算法的测试环境(硬件等)完全一致。

  • 确定试验(近似)结果可以重复。

  • 检查结果反映了局部极大值/极小值(local maxima/minima)或是全局极大值/极小值(global maxima/minima)。

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

第六天:什么是根本原因分析(root cause analysis)?【Gregory Piatetsky解答】

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

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

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

21天混入数据科学家队伍(上)

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

第七天:你熟悉以下概念吗?价格优化(price optimization)、价格弹性(price elasticity)、库存管理(inventory management)、竞争情报(competitive intelligence)。请举例说明。【Gregory Piatetsky解答】

答:这些术语都来自经济学领域,在数据科学中并不常见。但是,了解这些术语很有意义。

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

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

价格弹性,分为需求价格弹性和供给价格弹性:

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

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

[原文:Price Elasticity of Demand = % Change in Quantity Demanded / % Change in Price]供给的价格弹性(Price elasticity of supply)指的是商品或服务的供给数量随商品价格变动而变动的情况。

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

竞争情报,维基百科上的定义如下:

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

像Google Trends, Alexa, Compete等工具都可以在网上获得总体趋势,进而分析竞争对手的情况。

第八天:什么是统计功效(statistical power)?【Gregory Piatetsky解答】 

答:维基百科这样定义二元假设检验(binary hypothesis test)的统计功效或者灵敏度(sensitivity):当备选假设(alternative hypthesis)H1为真时,正确地拒绝零假设(null hypothesis)H0的概率。另一种说法,统计功效是当效应(effect)存在时,能够检测到效应的可能性。功效越高,出现II类错误(Type II error)可能性越低(即检测结论没有效应,但事实上是有的。译者注:即假阴性)。

第九天:什么是重采样(resampling)?它有什么用?有什么局限?【Gregory Piatetsky解答】

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

以下各种方法都可以被称为重采样:

使用可用数据集的子集(jackknifing)或者随机可重复采样出一批的数据点(bootstrapping)来估计样本统计量(中位数、方差、百分位数)[原文:medians, variances, percentiles]的准确率。

在进行显著性检验时交换数据点的标记(置换检验,也被称为精确检验,随机化检验,或重随机化检验)[原文:permutation tests, also called exact tests, randomization tests, or re-randomization tests]

通过随机子集验证模型(bootstrapping,交叉验证)[原文:bootstrapping, cross validation]

第十天:假阳性(false positive)多还是假阴性(false negative)多比较好?请说明原因。【Devendra Desale解答】

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

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

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

第十一天:什么是选择偏差(selection bias)?它的重要性如何?怎样才能避免?【Matthew Mayo解答】

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

分享到:更多 ()

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址