雷锋网 AI 研习社按:本篇是来自 Schibsted 多媒体组的数据科学经理 Alex 发布于 Medium 上的一篇文章,作者结合自身四年的行业经验,详细介绍了实际的数据科学工作,以及如何管理好数据科学团队,雷锋网(公众号:雷锋网) AI 研习社对原文进行了编译整理。
本文为上篇,主要讲了实际的数据科学工作。下篇讲了如何管理好数据科学团队。
2014 年我加入 Schibsted 传媒集团的一个小团队,当时是第六位数据科学家。这些年,我在这家公司研究了许多数据科学方法,目前该公司已经有 40 多名数据科学家了。在这篇文章中,我将回顾过去四年所学到的经验-——首先是作为数据科学家的经验,然后是作为数据科学管理者的经验。
这篇文章仿效 Robert Chang「在推特搞数据科学」一文,他的那篇文章非常有价值。我希望能为世界各地的数据科学家和数据科学管理人员提供同样有价值的思考。
这篇文章分为两部分:
第一部分:数据科学家的实际工作
第二部分:如何管理数据科学家团队
第一部分着重于描述数据科学家要做的实际工作,而第二部分则讨论如何管理数据科学团队以获得最大的影响力。我认为这两个部分对科学家和管理者来说是相互联系的。
我不会花很多时间来界定怎样才算或不算数据科学家 ,网上已经有很多文章来讨论这一点了。
关于 Schibsted:这是一家在全球 20 多个国家拥有用户和市场的媒体公司,我主要负责市场业务。如果你想看几个 Schibsted 数据科学工作的一些具体案例,这里有 3 个选择:
说完这些,让我们进入正题吧!
第一部分:现实世界中的数据科学
充满雄心壮志,在一家公司当数据科学家,这真的很让人兴奋,但也会让人望而生畏。比如:周围人对自己的期望是什么?同龄人有什么技能?应该怎样工作才能对公司有用?
作为一位被吹得天花乱坠的数据科学家,有时很难觉得自己不是骗子。
由于担心被认为是在做一些容易的事情,数据科学家常常被迫选择首先关注更复杂的情形。这就引出了第一课。
1. 太复杂会增加成本——从简单的开始
他们聘请了一名数据科学家,所以这个问题肯定很复杂,对吧?
不要被复杂的事物所诱惑
这种假设常常会使你误入歧途,从而不能成为一名真正的数据科学家。
首先,你在行业中遇到的问题通常可以用相当简单的方法来解决。
其次,重要的是要记住太复杂会增加成本。一个复杂的模型可能需要更多的工作,具有更高的错误风险,更难向股东解释清楚。因此,你首先应该采取最简单的方法。
那么,怎么知道最简单的方法是否足够好呢?
2. 总有基准
如果没有比较模型性能的基准,那么你的评估指标可能毫无意义。
我们建立了一个模型(保留模型,retention model)来预测用户回到我们网站的概率。基于用户的行为,我们的模型大约有15个特征,ROC-AUC 在 0.8 左右。与随机性能的 0.5 相比,我们对这个结果相当满意。
但当我们把模型分解为两个最有预测能力的特征:recency(最近访问的那一天)和 frequency(过去访问的天数),通过这两个变量的 logistic 回归,ROC-AUC 达到了 78% 。换句话说,我们可以扔掉多余 85% 的特征来达到超过 97% 的性能。
我有很多次看到数据科学家基于复杂的模型报告离线实验结果,没有任何比较基准。每当你看到这种情况,你都应该问:我们能用一个更简单的模型取得同样的结果吗?
3. 使用你所拥有的数据
一天,我和一名数据工程师、一名数据科学家共进午餐。这位科学家谈到,只要他有 X,Y,Z 的数据,就能做出令人惊奇的事情。他的眼神都在发光。但工程师突然说道:“你们数据科学家总是在谈论你获取了实际获取不到的数据时能做什么。那么就你所拥有的数据你能做些什么呢?!”
这听起来很刺耳,但工程师表达了一个重要的真理:永远也不会有完美的数据集,而且总会有你可以使用的数据。在大多数情况下,你可以用你的数据做点什么。
4. 拥有数据
与上述观点相关的是,数据质量和完整性几乎总是同一个问题。你需要去获取你需要的数据,而不是坐在那里等待某人把数据给你。
我不是在讨论数据治理模型中的真正所有权。我的意思是扩展你的角色,帮助你找到自己需要的数据。
这可能有助于数据收集的模式和格式,这可能意味着查看 Web 应用程序前端执行的 JavaScript 代码,以确保在合适的时候才触发事件。或者这可能意味着建立数据管道——不要期望数据工程师来为你做好一切。
5. 忘记数据
这似乎与我上面说的一切相矛盾,非常重要的一点是不要太受束缚于手头的数据。
空白的黑板
当出现一个新问题时,首先应该尝试忘记数据。为什么?现有的数据会限制你想出更多的解决办法,它会分散你寻找最佳方法的注意力。你会陷入局部最优,只在手头已有数据的基础上思考问题(开发胜于研究)。
6. 形成一种微妙的因果性
我们都知道相关性并不意味着存在因果关系。问题在于,许多数据科学家都止步于此,并回避做出因果声明。
懦夫对因果关系的探讨
为什么那是个问题?因为产品经理、营销团队、CEO,或者和你一起工作的人都不在乎相关性。他们更关心因果关系。
产品经理希望当她决定推出这个新功能时,有信心将订单量提高 10%。营销团队希望知道,电子邮件数量从每周 2 封增加到 4 封不会导致人们退出邮件列表。CEO 想知道,投资于更精准的功能可以带来广告收入的增加。
那么有折中办法吗?似乎有两个。
最著名的是在线实验。基本上你会进行随机试验 —— A/B 测试是最常见的。想法很简单,随机选择目标群体和对照组,如果发现两组之间有统计学上的显著差异,我们所采用的办法就被认为是因果参数。
另一个不太有名的因果关系推断方法是因果模型。这里的想法是,你假设世界的因果结构,然后你使用观察(非实验)数据来检验这些假设是否与预测数据一致,或者估计不同因果效应的强度。Adam Kelleher写了一系列很好的因果数据科学文章,我推荐阅读下。除此之外,因果关系分析的圣经数据是 Judea Pearl 的因果关系(Causality)。
根据我的经验,大多数数据科学家在构建机器学习模型和离线评估方面有丰富的经验。而在在线评估和实验方面有经验的数据科学家要少得多。原因很简单:你可以从 Kaggle 上下载一个数据集,训练一个模型,并在几分钟内对它进行线下评估。另一方面,对该模型进行在线评估,需要访问真实世界。即使你在一家拥有数百万用户的互联网公司工作,你也常常需要越过层层关卡找到一个针对当前用户的机器学习模型。
现在,很少有数据科学家有广泛的在线评估以及因果模型推断的经验,出现这一现象的原因有很多。其中一个原因是大多数因果关系的文献都是相当理论性的,对于如何在现实世界中构建因果模型并没有实际的指导意义。我预测在未来几年我们会看到更多关于因果建模的实用指南。
形成微妙的因果关系观意味着你可以给股东提供可行的建议,同时也能保证科学性。
via:4 Years of Data Science at Schibsted Media Group,雷锋网 AI 研习社编译整理。
雷锋网版权文章,未经授权禁止转载。详情见。
原创文章,作者:ItWorker,如若转载,请注明出处:https://blog.ytso.com/129733.html