新智元报道
来源:wandb.com
作者:Lukas Biewald 编辑:木青
最近,来自不同规模、不同行业的朋友一直问我同样的问题:
“我如何将机器学习应用到我的公司里?”
这些人知道充分利用机会学习的话会得到甜头。而这里面每个人的困境都是如何将其转换成现实,如何发挥作用,如何雇用人员并获得成功。
所以,我根据这些公司不同的业务规模,给予不同的建议:
以下是我对处于早期创业阶段的公司或非盈利机构关于如何打造机器学习团队的建议:
对于一家小型的、没有资金或资金不足的公司来说,在企业内部获得机器学习专业知识应该是不可能的。但好消息是,许多机器学习从业者都对这种工作感到兴奋。
寻找那些关心公司使命的人。在这个规模上,您将依靠您的机器学习从业者实现从数据收集和清理到部署的端到端的一切。
雇用工程和数据专业的人才肯定是小企业的首选。那些已经返回校园或者线上工作的经验丰富的工程师可以顺利完成这些工作。因为目标并非完美,所以要让系统端到端工作,然后慢慢优化所有步骤。如果是我选择候选人,我会选择简历里展示了参加一些Kaggle比赛或自我导向的项目,开朗务实的人也是好的选择。那些希望在构建和测试模型之前将一种模型应用于所有内容,或者想要花费数月优化数据管道的研究人员却不是合适的人选。
当那些对机器学习应用程序感兴趣的不初创公司或中型企业建立机器ML团队时,我建议他们采取略微不同的方法。与谷歌不同,你不能雇用很多研究人员,因为你不需要他们来撰写研究论文。
成功组建团队的关键是聘请一位非常优秀的机器学习研究人员,并让他与数据工程师合作,以提高他们的工作效率。这样的人才就像珍贵的宝藏,请不要让他们编写代码,把他们安排在想要学习机器学习的工程师中,实现“王者带青铜”。
一些公司建立了一个功能性的机器学习小组,而一些公司将机器学习嵌入到团队中。很多人对此褒贬不一,但我必须实事求是地说,这两种组织结构都有效。
一个机器学习团队如何真正帮助人才?这通常是最大的瓶颈。您需要仔细管理团队,以确保他们正在为公司执行最相关的任务。在整个组织中合理分配机器学习专业知识是很实用的,因为这样机器学习专家就可以接近最终用户,但它也会使招聘更加困难。
雇用更多的机器学习工程师而不是机器学习科学家,并且保证分配给他们的任务是匹配适合的,这点至关重要。
通常来讲,机器学习团队进行算法优化的操作通常与商业需求并不相符。如果没有一个有效的端到端系统,这种错位可能会长达数月。另一个常见问题是需要更改或更新训练数据,但在训练和部署算法之前人们往往不会发现数据需要更新。因此,在更新数据之前,让端到端系统尽可能快地进行就变得至关重要。
与很多大公司合作,我一次又一次地看到了相同的错误。在这个范围内,一家公司能够雇用优质的ML人才,但没有更多预算与行业巨头竞争。
Facebook和谷歌的精英团队正在使用标准的开源模型和架构。最近,我与许多财富500强企业进交谈时发现,这些企业正在建立自己的神经网络架构而不测试是否有必要这样做。
机器学习研究人员喜欢做研究,而管理者则欺骗自己:研究人员正在构建有价值的IP。事实上,他们并非如此。他们浪费了大量的时间来进行一些重复的事情,而那段时间最好花在最新的尖端模型上。最好从最简单,最标准的事物和层着手,每增加一部分都应该保证能对算法的性能产生重大影响。
大公司应避免建立自己的机器学习基础设施。我与之交谈的所有科技公司几乎都在建立自己的定制机器学习堆栈,并且感到非常兴奋。使用开源工具比构建和维护自定义基础架构更具可持续性。
大公司应该培训他们的工程师进行机器学习。工程师非常渴望学习机器学习,如今的基础工具使得这个想法变得更容易。在这一点上,我认为培训工程师学习机器学习比培训机器学习从业者如何成为优秀的工程师更有效率。无论如何,具有一些机器学习培训的工程师可以通过多种渠道发挥作用。一些公司正在这样做,但我很惊讶更多的公司没有明白这一点。
招聘ML团队既昂贵又需要大量工作。一些公司雇用一支ML团队,但目的只是为投资者检查一些设备,这就太浪费资源了。无论公司的规模如何,如果没有明确的机器学习应用程序,这家公司必然会后悔进行这项投资。所以,组建之前,要问自己的关键问题是:
1)我有需要通过机器学习才能解决的问题吗?
2)我可以获取相关的培训数据吗?
3)我试图解决的问题对我的业务至关重要吗?
如果你对所有这些问题回答“是”,那么就可以着手准备了。
【加入社群】
新智元 AI 技术 + 产业社群招募中,欢迎对 AI 技术 + 产业落地感兴趣的同学,加小助手微信号:aiera2015_3 入群;通过审核后我们将邀请进群,加入社群后务必修改群备注(姓名 - 公司 - 职位;专业群审核较严,敬请谅解)。