业界 | 如何建立一只高效的机器学习团队?这是你需要知道的四点经验
选自Mixpanel
作者:Suhail
机器之心编译
参与:曹瑞
从 CEO 到产品经理,再到风险投资人,每一个人都想加强对机器学习的理解,因为他们知道机器学习有潜力让他们的软件更上一层楼。他们因为机器学习感到兴奋。他们已经读过 TechCrunch 和 Fortune 的文章,也可能已经快速做了一次或者两次线性回归。
但是很多产品负责人在机器学习中所面临的最重要的问题在于,他们不仅仅想要的这些程序只会做数字运算,同时,他们还希望这些程序能够代替他们思考。
他们会说,「我希望这个算法能够告诉我为什么。为什么我的客户不能到我这边来呢?为什么这个功能没有我预期的好?我想知道原因!」
事情是这样的。机器学习的目的不是为了证明某些原因,它的存在是为了针对一些特定的数据、行为或者是模式做出一些高质量的预测。算法唯一的工作就是让你能够更加有效、更加精确地达成目标,而不是告诉你为什么。从表面上看来,这似乎有一些让人失望。
但事实上,只要你恰当使用,就能激发它的功效。机器学习带来了一次更高级别的数据分析革命。目前机器学习的基础就是帮助工程师制造出更好、更复杂精巧的软件。此外,一些精明的企业已经放弃了不惜一切代价追求增长的模式,开始投身这个具有可预测性的产业当中。可预测性,事实让就是机器学习的发展前景。
但是对于工程师来说,机器学习并不是小菜一碟。这并不是像在你已经了解 Ruby 的情况下选择 Python。在 2 年前,所有工程师,包括我自己,都对机器学习一无所知。我知道如果我们想利用机器学习分析产品,我们必须要认识到我们对于未知的情况完全一无所知,而且我们面对的是复杂的数学,而不是魔术。
我们最大的挑战以及要吸取的经验教训
机器学习最让我感兴趣的一件事情是它能够让软件自动做很多事情,而这些事情是我们直接用编程做不到的。对于一个工程师来讲,这真是太令人兴奋了。
但是对于一个产品负责人来说,机器学习也带来了新的挑战,这些挑战是我之前从未面临过的。我聘请了 Jenny Finkel 博士,她是一名真正的机器学习方面的专家,而不是尝试自己成为一名这方面的专家。我希望能够建立一个团队来成功应对机器学习带来的各种挑战,并帮助 Mixpanel 迈上一个新台阶。
我非常骄傲地看到我们在过去两年中所取得的成就,我更引以为傲的是我们在建立 Mixpanel 的机器学习团队中所学习到的。下面是我认为其中最重要的一些经验:
1. 你需要专家。这一点是我很快就意识到的,我们需要真正的机器学习专家来研发真正的机器学习产品。顶级的机器学习方面的博士,都去了谷歌和微软就职。为了弥补这一点的不足,人们用数据来武装自己的公司。这似乎让他们更加像是一个真正的机器学习团队,但是机器学习中所涉及到的数学问题,其复杂程度是无法和一些数学统计工作者所涉及的相比的。我认为我们需要真正的机器学习专家,如果重新决策的话,我还是会做同样的决定。
2. 我们很难知道从哪儿开始。你可能会迫切地希望立马就建立一些疯狂并且复杂的算法,但是在那之前,在数据方面你还有还有很多的事情要去做,甚至是从运用机器学习开始。起初,你可能并没有数据,你可能没有建立模型的可用数据,甚至你可能连模型都没有。所以,事情并不是像「我们就从运用机器学习开始」这么简单。这一定会让工程师感到精疲力竭。
3. 规模的问题总是存在。比起统计学所面临的,规模会在更大程度上影响到机器学习的成败。工程师们知道,在统计学当中数据量并不是非常重要。这就是为什么,比如说,我们随机抽取一些电子商务客户的样本,这样就能得到一个相对精确的模型,了解到所有的客户对在线促销的反应。我们不需要知道所有的购买产品组合,或者是了解每一种可能的潜在结果,才能明白可能出现的结果。
可在机器学习方面,数据量的作用要大得多。你对每一种可能结果的了解更多,你的预测能力就会越好。仅在一些过去的事件或是实时的动态当中取样是远远不够的,你的模型需要知道每一种情况,并且能够趋向于给出一种正确的解决方案,这样才能发挥可预测性的优势。
我们继续说电子商务的例子,如果说电子商务公司除了想要预测谁会对促销有所反应,了解更加复杂的购买模式之外,还想知道更多。机器学习需要了解电子商务公司 200 万客户当中每一个人的情况,了解他们购买的产品,用每一种可能的组合方式分析他们的购买情况,建立一个最精确的购买模型。这样,将来的购买模型就可以利用 数据粒度上的增长做出更加精准的预测。从如此庞大的数据当中得出这样的细节信息,似乎有一点疯狂。这就是为什么你需要一个真正的机器学习工程师团队,能够快马加鞭干正事,并且能建立出最好的模型。
4. 要记住,我们的目标是可预测性,而不是找原因。企业一直都盼望能够预测本季度的销售,看看通过促销他们到底能够吸引多少客户,或者是能够预测需求量的波动。机器学习主要能够提升模式识别,这同时会推动可预测性的发展。这就是为什么我知道我必须要在这一领域进行大型投资。
所有的这些经验都不应该让你灰心。毕竟,机器学习中的「为什么」对于产品团队来说很简单。机器学习能比人更快更准确地弄清楚人们觉得棘手的问题,继而自动采取行动。如果你能够创造一个用户反馈和更好的用户体验之间的良性循环,或许就可以让更多人使用你的产品。之后,你就可以利用这个数据网络效应,吸引更多的用户,这也会让你获取更多的数据,从而建立更好的模型,同样这会为了你带来更多的用户。
作为产品负责人,你的工作就是要创造出优良的产品,然后把它们推广给你的客户。从产品发展的角度来讲,机器学习是最令人兴奋的,因为它能够通过分析(比如说通过异常检测)自动处理你的很多工作和顾虑。所以,如果你在认真考虑要实行机器学习,那你就应该认真想一想你需要解决的问题。
在你成立一个机器学习团队之前,你必须要明白你是否具备完成你远大抱负的基础设施。认识到你可能不具备这一点并不能够能明你没有远见卓识,只是机器学习是一种有潜在风险的前沿技术,每个人都必须要清楚地知道如何才能最好地利用它的功能,并将它的所带来的利益最大化。
「创造 vs. 购买」这是一个错误的命题
底线是这样的:计算机在记忆大量数据方面非常在行,它们可以在记忆的所有数据当中找出一定的模式和趋势,而人类在这些方面的能力都很弱。如果你想要让公司的竞争力有所改善的话,就需要通过模型获得一些见解,以此来解决一些复杂的问题。现在能做到这一点的唯一方法就是通过机器学习,另外还需要具备一个技术娴熟的团队来帮你弄清楚这些模式是什么,为什么它们是这个样子。
如果是一个小公司,那么你的工程师可以在他们的电脑上建立一些模型,在开始阶段,这些模型应该就足够了。但是如果你拥有大量数据,你从只依靠自己来解决问题当中获得的,与在机器学习当中获得的是完全不同的,并且这样做也不利于公司保持竞争力。
最重要的一点是关于权衡。建立一个机器学习模型需要很长的时间。工程师在非核心功能上花费多一分钟,你在核心产品上花的时间就少一分钟。此外,大多数的机器学习都会涉及到大规模的迭代问题,因为有大量的数据需要收集、标注,并且进行重复处理。如果你想要自己解决这个问题,这对你的工程师团队来说就成了一项额外的负担,而且还要花费上万美元。你需要决定自己做什么,不做什么。在 Mixpanel,我们致力于将机器学习和产品分析用正确的方式结合起来,而不是用一些博人眼球的奇怪方式。
Predict 和 Smart Alerts 对我们来说只是开始,即使你才刚刚开始追踪分析,我 们想要帮你创造正确的产品――而不是一直在观察你的数据。
如果机器学习能够被正确使用,它的功能是非常强大的。机器学习能够创造准确的预测模型,这些模型能够做的事情也非常的令人兴奋,比如说创造高度定制的用户体验、用照片对成千上万中物体进行分类,还能在没有编程的条件下产生大量有突破性的、针对特定行业的结果。机器学习带给我们的机会让我们可以创造出全新的文明,而不是在一座空城里仅有一幢摩天大楼。
©本文由机器之心编译,机器之心系今日头条签约作者,本文首发于头条号, 转载请联系本公众号获得授权 。
?------------------------------------------------
加入机器之心(全职记者/实习生):hr@almosthuman.cn
投稿或寻求报道:editor@almosthuman.cn
广告&商务合作:bd@almosthuman.cn