数据科学 | 为什么数据科学团队需要多面手而非专家?

数据科学 | 为什么数据科学团队需要多面手而非专家?

编者按

团队成员明确分工、各司其职,似乎是高效运转的前提。然而对于数据科学团队而言,更需要多专多能的多面手而非专家。对比传统工厂分工模式到现代的数据科学的特点,本文就此观点进行了深入的讨论,为你解开这其中的原因。

文章作者:余龙 (本文译者,某金融认知智能技术提供商数据产品经理)
责任编辑:余龙
文章发表于微信公众号【运筹OR帷幄】:数据科学 | 为什么数据科学团队需要多面手而非专家?
欢迎原链接转发,转载请私信@运筹OR帷幄获取信息,盗版必究。
敬请关注和扩散本专栏及同名公众号,会邀请全球知名学者发布运筹学、人工智能中优化理论等相关干货、知乎Live及行业动态:『运筹OR帷幄』大数据人工智能时代的运筹学

NO.1从国富论说起

在《国富论》中,亚当·斯密用制针厂生产线这个鲜活的例子,阐明了劳动分工如何成为生产力发展的主要源泉,他写道“第一个工人抽丝,第二个拉直,第三个切断,第四个削尖,第五个打磨。”随着围绕职责的专业化,每个工人在一项细分任务中高度熟练,进而使流程效率提升。单个工人的产出增长了许多倍,故而工厂产针效率变得非常高。

依据职责进行劳动分工,这个观念已经根深蒂固,以至于今天我们也还相应地组织团队。数据科学也不例外。端对端的业务能力需要许多职责,因此公司通常组建专家团队,包括研究科学家、数据工程师、机器学习工程师、因果推理科学家等。专家们的工作由产品经理协调,类似制针厂,有类似的手递手般的流程:第一个人做数据准备,另一个人建模,第三个人应用模型,第四个人测试模型等等。


NO.2数据科学团队不是制针厂

我们不应该为了提高所谓的生产力而优化我们的数据科学团队。只有当你知道你将产出的东西具体是什么比如针或者其他东西时,或者单纯只是为了追求效率时,才需要这么做。流水线的目标是执行。我们清楚地知道我们想要什么,制针厂的例子中,想要的是针,也可以是其他任何产品或服务,只要有一堆规定可以准确描述产品和其外在表现,工人们的角色就可以尽可能高效地执行这些规定。

但是数据科学的目标不是执行,相反,数据科学的目标是学习并发展出新的业务能力,包括算法产品和服务如推荐系统、获客、风格选择分类、尺寸匹配、流行设计系统、物流优化、季节趋势检测以及更多不能事先设计好的产品和服务。这些都需要学习,没有可以遵循的蓝图,这些都是新的业务能力,具有内在的不确定性。系数、模型、模型类别、超参数,这些元素都是需要通过试验、试错、迭代来学习的。而就制针而言,学习和设计过程都是在制造之前就已完成。就数据科学而言,你只能边做边学,而不是在做之前就搞定了一切。

在制针厂,我们不想工人做除了更高效地生产产品之外的事情。按职责组织是有意义的,因为任务专门化可以提高流程效率以及产品一致性(最终产品没有偏差)。


NO.3职责分工的弊端

但是当产品仍在演进,以及目标是学习的话,专门化就在以下方面阻碍目标实现:

第一、它提高了协调成本。也就是沟通、讨论、博弈以及排工作优先级的成本。随着牵涉人数的增加,这些成本会快速线性增长。(J. Richard Hackman 教导我们,关系数(r)和成员数(n)的函数关系满足这个方程:r = (n^2-n) / 2. 每条关系意味着一些协调成本。当数据科学家按职责组织,每一步需要很多专家,每一次变化,每一次对接等等,都让协调成本增高。比如,统计模型专家每次想要试验新特性,都要和负责增添数据集的数据工程师协调。同样的,每个新模型训练意味着建模者需要和部署者协调。协调成本就像迭代过程中要交的税费,让迭代更加困难与昂贵,也阻碍了探索更多可能性,这同样也阻碍了学习。

第二、它让等待时间更长。比协调成本高昂更糟糕的是,让工作和工作之间的等待时间更长。协调时间比如开会、讨论、设计复审时间,可以用小时来计算,等待时间则通常按天、周甚至月来计算。各司其职的专家员工们的日程很难安排,因为每个专家都被紧紧地束缚在流程中。一个讨论变更的一小时会议可能需要几个星期去安排。同时,就算会上安排好了,实际的工作又需要排期,和其他很多项目争抢专家的时间。只需要几小时或几天就能完成的代码修正或研究工作,在资源到位之前可能还需要等待很长的时间。因此,在这些完成之前,迭代和学习都是停滞的。

第三、让上下文缺失。劳动分工通过人为地奖励待在自己职责范围内的人,限制了学习。例如,研究科学家自我设限,专注于试验各类算法:回归算法,神经网络,随机森林等等。诚然,好的算法选择能让效果有细微改进。但是,通过和新的数据源结合等方式,通常会有更大的收获。类似地,研究科学家可能会开发模型来榨干数据内在的每一丝价值。然而,他们最大的机会可能在于改变目标函数或者放松一些限制。如果他们的工作职责受限制的话,就很难注意到或做到这一点。由于研究科学家专注于优化算法,因此不太可能追求其他的事情,即使做其他的事情能带来更多的收益。



NO.3多面手的好处

数据科学团队像制针厂一般运作时,会有些明显的征兆,比如在简单的状态更新上:等待数据管道变化,等待机器学习工程师,这都是常见的阻碍。不过,我认为更多的潜在影响,深藏于你没听过的东西,因为你不能抱怨你还没遇到的东西。对于规定的完美执行以及由于流程效率提升带来的自我满足感会掩盖残酷的真相,但是组织并不知晓他们错过的更有价值的学习。

上面这个问题的解决方法,自然地就是抛弃制针厂模式。为了鼓励学习和迭代,数据科学里的角色需要更加具有普适性,面对技术类职责的不可知性,要承担起更多的责任。也就是说,数据科学家的组织,应该朝着适于他们学习的方向优化。也就意味着要雇用"全栈数据科学家"——即本文标题所说的多面手,能担纲多重职责的,从概念设计到建模到实施再到测试。特别需要说明的是,我不是说雇用全栈数据科学家就意味着团队人数的减少,我只是说,当团队以另一种方式组织,他们受到的外部刺激更能契合学习和效率的提升。比如说,你有一个 3 人的团队,能创造出 3 项业务能力。在制针厂型团队,每一位专家有三分之一贡献在业务能力上,因为没人能替代他们的工作。在全栈型团队,每一位多面手完全贡献于一项业务能力,规模和学习都增加了。

整个流程里人更少,协调成本也降低了。多面手在多个职能中无缝切换,扩充数据渠道以添加更多的数据,在模型中试验新特性,部署新版生产系统以作测试,以及当有新的创意时快速重复上述步骤。当然,多面手型专家是顺序执行不同职责而不是并行执行的,毕竟啊,她也只是一个人。不过,这么执行工作,所占用的时间只会是之前专家等待其他专家资源所花时间的一小部分。所以,总的迭代时间降低了。

我们的多面手在任何一项职责方面,或许不如专家更加熟练。不过,我们不是在追求功能优势或者细小的改进。相反,我们是在追求学习和通过突变发现新的业务能力。由于知悉了整体的上下文信息,多面手可以看到专家所不能看到的机会。她可以有更多创意,做更多的尝试。当然,她也会失败更多次。不过,失败的成本相对低,学习的收获是很高的。这种不对称可以快速迭代,也会有学习的奖励。

值得一提的是,这种程度的全栈数据科学家技能方面的的自主性和多样性,很大程度上是基于有稳定的数据平台的假设。一个架构良好的数据平台将数据科学家从集装箱化、分布式处理、自动故障转移以及其他计算机科学概念中解救出来。除了抽象,一个健壮的数据平台还可以提供无缝对接,如实验性架构、自动监控和报警,提供自动分级,提供测试输出结果和算法结果的可视化。数据平台工程师设计和建造这些元件,不过这里不是说要数据科学家要甩锅给数据平台团队,数据科学家自己应对部署在平台顶层的代码负责。


NO.4试错出真知

基于职责的劳动分工会来带效率提升,我过去也曾被这吸引。但是,通过试错(没有比这更好的学习方法),我发现技能点更广的角色能够产生更多的学习和创新,提供正确的扩张途径:比单独一个专家发现和创建更多的业务能力。(相比试错,了解这个方法更有效的方法请参考 Amy C. Edmondson 的 Teaming: How Organizations Learn, Innovate, and Compete in the Knowledge Economy 一书)。

在一些公司中,这个方法能否能站得住脚,有一些值得考量的点。这个迭代过程假设试错成本很低。如果错误成本很高的话,那你或许要重新考虑(比如,医学应用或制造业应用就不建议用上面的方法)。除此之外,如果你在处理 PB 或 EB 级别的数据,还是要保证数据工程师的专业性。同样的,如果相比改进业务,维持在线业务的稳定性更重要,职责分工的优势更明显。最后,全栈数据科学模型依赖于优秀的人。他们不是难寻的独角兽,他们是可以被发现的,同时也是可以培训出来的。不过他们供不应求,要求有竞争力的补偿,有吸引力的企业价值以及有意思的工作来吸引并留住他们, 并且确保你们的企业文化支持这一点。


NO.5结论

尽管上面说了一些不好的观点,我仍然坚信全栈数据科学家模型是一个很好的开始。对于栈数据科学家来说,只有当职责分工不可避免时,才进行劳动分工。

职责专门化还有其他缺点,它会让工人的可靠性和激情丧失。斯密本人就批评了劳动分工,说这导致天赋钝化,工人因为角色被限制在重复性任务中,变得更加无知和狭隘。职责专门化在提升效率时,激励工人的可能性也降低了。

与之相反,多面手角色提供一切可以提升工作满意度的元素如自主性、掌控力,以及目标感。自主性是指他们的成功并不依赖他人,掌控力是指他们从头至尾地了解业务全流程。同时,他们也和正在创造的业务有最直接的联系,故而有目标感。如果我们成功地让人们对工作以及为公司施加影响充满激情,剩下的事情就自然而然了。


参考链接:

Eric Colson Why Data Science Teams Need Generalists, Not Specialists hbr.org/2019/03/why-dat


文章由『运筹OR帷幄』原创发布,如需转载请在公众号后台获取转载须知

扫二维码关注『运筹OR帷幄』公众号:

点击查看『运筹OR帷幄』志愿者招募介绍及加入方式

发布于 2019-03-28

文章被以下专栏收录