四步组建高效机器学习团队
作者头像
  • 莫非你是
  • 2020-02-29 12:12:50 2

在过去几年里,机器学习领域经历了巨大的发展,但作为一门相对较新的学科,其团队管理方式也在不断演变。目前,许多机器学习经理被赋予管理职责,往往是由于他们的专业能力或是在学术领域的深厚背景。有些公司在缺乏机器学习实战经验的情况下,就安排工程或产品负责人负责新机器学习功能的构建。

管理任何技术团队都是具有挑战性的: - 需要招聘优秀的人才。 - 要管理和提升这些人才。 - 要管理团队的输入,确保产品质量过关。 - 希望做出良好的长期技术选择,并管理技术债务。 - 还需要管理来自管理层的期望。

然而,管理一个机器学习团队更是充满挑战: - 机器学习人才稀缺且成本高昂。 - 机器学习团队需要多种不同的角色。 - 机器学习项目的时间表不确定,存在高度的不确定性。 - 机器学习被视为“高息信用卡的技术债”。 - 管理层通常对机器学习的理解有限。

我最近参加了加州大学伯克利分校的全栈深度学习训练营,这是一个教授全栈生产深度学习的优质课程。其中,Josh Tobin 教授的一次讲座提供了关于机器学习团队管理的最佳实践。这篇文章将概述其中的一些观点,如果你是管理者,这可能会帮助你思考如何建立和管理机器学习团队;如果你是求职者,它也可能帮助你在机器学习领域找到一份工作。

步骤 1:角色定义

让我们来看看最常见的机器学习团队角色及其所需技能: - 机器学习产品经理:负责与机器学习团队、其他业务部门及用户交流。他们设计文档、创建线框图,并制定机器学习项目的计划和优先级。 - 开发工程师:负责部署和监控产品系统,确保机器学习产品的基础设施运行良好。 - 数据工程师:构建数据管道,从数据存储中收集和监控数据行为。他们使用分布式系统,如 Hadoop、Kafka、Airflow。 - 机器学习工程师:负责训练和部署预测模型。他们使用 TensorFlow 和 Docker 等工具处理实际数据上的预测系统。 - 机器学习研究员:负责训练预测模型,但这些模型通常是前瞻性的,与实际应用联系不大。他们使用 TensorFlow/PyTorch/Jupyter 来建立模型,并撰写报告描述实验。 - 数据科学家:涵盖了从本科到博士背景的人,通常需要通过分析回答业务问题。

步骤 2:组建团队

关于如何组建机器学习团队尚未形成共识,但取决于组织类型和成熟度。以下是几种典型的组织模式:

原型1:初创和暂时 ML 团队

  • 这些组织可能没有专门的机器学习团队,或者只是临时组建。
  • 企业规模较小,或者机器学习技术含量较低。
  • 对机器学习的支持不足,难以吸引和留住顶尖人才。

原型 2:研究与开发 ML 团队

  • 机器学习工作集中在研发部门。
  • 雇佣了机器学习研究人员和有发表论文经历的博士生。
  • 这些公司通常是大公司,如石油、天然气、制造或电信行业。
  • 他们可以聘请有经验的研究人员,致力于长期项目,但难以获得高质量的数据,成果转化较少。

原型3:嵌入产品的 ML 团队

  • 机器学习团队与产品团队或业务部门紧密合作。
  • 这些公司可能是软件公司或金融服务公司。
  • 机器学习的改进可以带来商业价值,但招聘和培养顶尖人才依然困难,数据和计算资源可能滞后。

原型 4:独立的 ML 组织

  • 机器学习部门直接向高级管理层汇报。
  • 机器学习产品经理与研究人员和工程师合作,将机器学习集成到产品中。
  • 通常拥有丰富的数据和计算资源,但模型的推广和维护可能存在挑战。

原型 5:ML 优先团队

  • 整个组织专注于机器学习,机器学习部门致力于长期项目。
  • 这些公司包括大型科技公司和以机器学习为重点的初创企业。
  • 他们拥有最佳的数据和吸引顶尖人才的能力,但将机器学习思想融入所有业务线仍具挑战。

步骤 3:管理项目

管理机器学习项目极具挑战性: - 项目进展不可预知,需要灵活应对。 - 机器学习过程是非线性的,难以提前计划。 - 研究和工程之间存在文化差异,双方往往不注重彼此。 - 管理层通常缺乏对这些问题的理解。

有效的管理方法包括: - 计划机器学习项目。 - 尝试多种方式。 - 根据投入而非结果衡量进度。 - 让研究人员和工程师共同工作。 - 快速连接端到端管道,展示进度。 - 向管理层传达机器学习项目的不确定性。

步骤 4:招聘人才

机器学习人才供不应求,特别是顶级人才。以下是招聘策略: - 对于机器学习工程师:寻找具备软件工程技能并对机器学习有浓厚兴趣的人。 - 对于机器学习研究员:寻找高质量的论文作者,有实际经验的人,以及有自学能力的人。 - 寻找途径:LinkedIn、招聘会、学术会议等。

如何面试机器学习候选人

面试机器学习候选人时,需考虑以下几点: - 验证候选人的优势。 - 确保他们在不擅长的领域也能达到最低要求。 - 评估背景与文化的契合度、编码能力、机器学习知识、数学难题、项目经验和机器学习理论。

如何找到机器学习工作

如果你正在寻找机器学习工作,可以利用以下资源: - LinkedIn、招聘顾问、校园招聘会。 - 参加机器学习会议,建立人脉。 - 直接申请公司官网职位。

希望这些信息能帮助你有效地构建和管理机器学习团队。

    本文来源:图灵汇
责任编辑: : 莫非你是
声明:本文系图灵汇原创稿件,版权属图灵汇所有,未经授权不得转载,已经协议授权的媒体下载使用时须注明"稿件来源:图灵汇",违者将依法追究责任。
    分享
组建高效团队机器学习
    下一篇