随着我们进入2017年下半年,是时候看看那些使用数据科学和机器学习的公司面临的共同挑战。假设你的公司已经在大规模收集数据,需要用到分析工具,而且你已经认识到数据科学可以发挥重大作用(包括改善决策或企业经营、增加收入等等),并进行了优先排序。收集数据和识别感兴趣的问题并非小事,但假设你已经在这些方面起了个好头,那么还剩下哪些挑战呢?
数据科学是一个宽泛的话题,所以我要说明一下:本文主要探讨的是督导式机器学习的使用现状。
一切从(训练)数据开始
假设你有一支处理数据摄取和整合的团队,以及一支维护数据平台(“真相来源”)的团队,新的数据来源不断出现,由领域专家负责找出这些数据来源。而且,由于我们主要探讨督导式学习,因此,训练数据的缺乏依然是机器学习项目的首要瓶颈,这一点毫不意外。
在迅速创建庞大的训练数据集(或者加强现有的训练数据集)方面,有一些很好的研究项目和工具。斯坦福大学的研究人员已经证明,弱监督和数据编程可以用来训练模型,不必使用大量手工标记的训练数据。深度学习研究人员对生成式模型的初步研究,已经在无督导式学习的计算机视觉和其他领域取得了可喜的成果。
“思考特性而不是算法”,这是在机器学习背景下评估数据的另一个有用方法。友情提示:数据扩充可能改善你的现有模型,在某些情况下,甚至有助于缓解冷启动问题。大部分数据科学家可能已经利用开源数据或者通过第三方数据提供商,来扩充他们的现有数据集,但我发现,数据扩充有时会遭到忽视。人们觉得,获取外部数据、使之规范化、并利用这些数据进行实验,这不像开发模型和算法那么具有吸引力。
从原型到产品
让数据科学项目实现产品化,这是许多用例的目标。为了使这一过程更有效率,近来出现了一个新的工作角色——机器学习工程师。还有一套新的工具用于推进从原型到产品的转变,帮助追踪与分析产品有关的背景和元数据。
机器学习在产品中的应用还处于早期阶段,最佳实践才刚刚开始出现。随着高级分析模型的普及,有几点需要考虑,包括:
模型开发
媒体对模型和算法开发的报道越来越多,但如果你同数据科学家交谈,他们中的大多数人都会告诉你,训练数据的匮乏以及数据科学的产品化是更加紧迫的问题。通常来说,市面上已有足够多的简单明了的用例,让你可以开发你喜欢的(基本或高级的)算法,并在以后进行调整或替换。
由于工具使算法的应用变得容易,因此,先回想一下如何评估机器学习模型的结果,这很有必要。尽管如此,不要忽视了你的业务指标和目标,因为它们未必与调试得最好或表现得最好的模型完全相符。关注与公正和透明有关的事情进展,研究人员和企业正开始检查、解决这方面的问题。对隐私的担忧,加之设备的激增,催生了不依赖于集中式数据集的技术。
深度学习正逐渐变成数据科学家必须了解的算法。深度学习最初用于计算机视觉和语音识别,现在开始涉及数据科学家能想到的各种数据类型和问题。其中的挑战包括,选择适当的网络结构(结构工程是新的特征工程),超参数调整,以及描述问题和转换数据以适合深度学习。(巧合的是,今年我见过的最有趣的大型数据产品之一,并不是基于深度学习。)
很多时候,用户更喜欢可解释的模型(某些情况下,黑盒模型不被人们所接受)。考虑到基本机制易于理解,可解释的模型也更容易改进。随着深度学习的兴起,企业开始使用那些能解释模型预测原理的工具,以及能解释模型从何而来(通过追踪学习算法和训练数据)的工具。
工具
我不想列出一个工具清单,因为可列举的工具实在太多了。帮助我们摄取、整合、处理、准备和存储数据以及部署模型的工具都非常重要。以下是对机器学习工具的几点看法:
企业如果想评估哪些问题、哪些用例适合于运用机器学习,眼下就是一个很好的时机。我总结了一些近期的趋势和尚未解决的瓶颈,你从中得出的主要结论应该是:现在可以开始使用机器学习了。先从已经拥有一部分数据的问题入手,然后建立出色的模型。