机器学习产品团队中的角色、技能和组织结构(机器学习入门第四篇
本文是机器学习入门教程的第四篇,前三篇分别是:
1.机器学习能为你的业务做什么?有些事情你肯定猜不到
2.关于机器学习算法 你需要了解的东西
3.如何开发机器学习模型?
我们已经讨论了开发机器学习模型的整个过程,现在我们来谈谈谁来实现这个过程,以及团队是如何运作的。
一个欢乐的大家庭
一个“传统”的产品团队由设计师、工程师和产品经理组成,而数据分析师有时也会包含在其中,但大多数情况下是多个团队共享这个稀缺的资源。在数据科学成为公司DNA一部分的时候,数据科学家必须要成为产品团队的一个重要组成部分,而不是被视为一个单独的个体。开发具有业务影响力的模型需要设计师、项目经理、工程师与数据科学家一起通力协作。
模型开发中的角色和责任
我们以前讨论过机器学习的开发过程。在这里,我们将重点介绍团队的组成,以及在开发过程中不同人员角色的职责。
构思阶段:在这个阶段,需要有对问题相关领域有深入研究的专家,他们知道哪些因素可能会影响选择或者结果。例如,如果你正在建立房屋估值模型,那么你需要一个真正的房地产专家,他们知道如何对房屋进行估价以及影响价格的因素。即使数据科学家碰巧在这个领域有一些经验,但是从其他组织或者团队的商业专家那引入新的想法来检查你自己的想法也不失为一个好的主意。
数据准备:这通常由数据科学家主导,在工程师的帮助下收集数据、整合API等等。产品或业务人员必须重度参与进来,依靠现有的人际关系协助进行外部数据的采集。
原型化与测试:这个主要是数据科学家的工作。产品或者商务人士必须非常紧密地伴随在一旁,查看结果并帮助确定结果是否具有商业意义或是否需要进一步的迭代。
产品化:这需要数据科学与工程进行结合。支撑数据收集的任务在很大程度上依赖于数据需求和来源。如果使用外部数据,你可能需要通过构建刮板来收集数据,需要具备前端知识、调用各种API或从各种供应商和合作伙伴那里获取数据。另外,还需要对生产化数据和扩展数据进行清理和处理,这在很大程度上属于后端任务。工程师还要与数据科学家通力合作,确保模型的规模化,验证生产结果的质量是否符合要求。
整体系统架构:要确保整体系统满足业务需求,需要有具备架构和扩展复杂分布式系统经验的工程师。系统的复杂程度取决于要完成的任务。
数据科学团队的组成
数据科学是一个相对较新的领域,它以一种新的方式将各种现有领域融合在一起。在大学里,直到现在还没有“数据科学”学位,所以人们倾向于将其看成是一个由各种相关学科和背景组成的领域。
数据科学的关键是统计学、计算机科学、经济学或计量经济学。
不同背景和技能的组合对于一个团队来说可能是非常重要的。团队中的每个人都会带来不同的东西。特别是在你处于一个新兴领域,并需要大量新思维的时候,结合不同的背景往往会给问题的解决带来多种不同的创新方案。
数据科学家对工程团队的依赖程度各不相同。模型工程师通常能够端到端地工作,在没有其他人帮助的情况下进行模型地原型设计和系统部署,而其他人则需要工程团队的更多帮助。根据工程团队的可用性和组成,你可能需要一个或多个独立的数据科学家。另一个需要考虑的,是问题所属的领域。例如,拥有计量经济学的背景对于选股应用程序比自主驾驶车辆更为重要。
一个有道理的数据科学组织结构
工程、产品和数据科学之间有着紧密的联系。从传统上来讲,人们倾向于将数据科学包含在工程中,然而,随着数据科学在组织中作用的不断变化,新的结构正在出现。我看过三个不错的结构,每一个都有自己的优缺点。
选项1. 将数据科学划归给工程部门
将数据科学划归给工程部门能够使学科之间保持完全一致,并且无需将数据科学和工程技能割裂开来。许多与数据科学家一起工作的工程师对这门学科都很好奇,期望能深入学习来充实自己的技能。我看到一些工程师们对机器学习就像对“填字游戏”一样的热衷,而其他一些人则选修了机器学习课程,希望有朝一日能成为一名数据科学家。团队之间的界限越小,就越能培养出具备端到端工作能力(包括构建模型并生成代码)的数据科学家和工程师。
这种组织结构还有助于简化整个系统,包括数据科学使用的用于原型设计的机器学习框架,以及工程团队支撑的产品化系统和架构。这还有助于确保机器学习的框架和架构能得到它们应有的重视。
选项2. 将数据科学划归给产品部门
由于产品需求是数据科学发展的外部驱动因素,因此将数据科学划归给产品部门可以保证原有目标和可交付成果之间的一致性。从本质上讲,产品负责人对所有数据科学项目和活动都有报告级别的可见性,这有助于让项目成员优先考虑数据科学,并确保数据科学推动业务的发展。这也有助于促进产品和数据科学之间的紧密合作,这是至关重要的。这个的先决条件是产品部门的人,他既要了解数据科学和产品是如何协同工作的,还要致力于产品开发和数据科学基础设施的开发。
选项3. 与产品和工程分离的数据科学
这有利于提高数据科学团队的知名度,使其对于整个组织的接触更加便捷。这种模式能让数据科学团队负责人更直接地了解高层战略决策,并通盘考虑所有业务利益相关者的意见和需求。
并不存在一个“正确的答案”,这一切都取决于组织、目标、团队和团队领导的力量。根据经验,联合组织结构通常能促进团队之间的一致性,因为在顶层只有一个决策者。考虑一下在组织中哪些领域更容易发生沟通和协作问题,并让这些团队向同一个主管汇报。
文章原标题《Roles, Skills and Org Structure for Machine Learning Product Teams》,作者:Yael Gavish,译者:夏天,审校:主题曲哥哥。