数据科学面临的共同挑战有哪些?

随着我们进入2017年下半年,是时候看看那些使用数据科学和机器学习的公司面临的共同挑战。假设你的公司已经在大规模收集数据,需要用到分析工具,而且你已经认识到数据科学可以发挥重大作用(包括改善决策或企业经营、增加收入等等),并进行了优先排序。收集数据和识别感兴趣的问题并非小事,但假设你已经在这些方面起了个好头,那么还剩下哪些挑战呢?

数据科学共同面对的挑战

数据科学是一个宽泛的话题,所以我要说明一下:本文主要探讨的是督导式机器学习的使用现状。

一切从(训练)数据开始

假设你有一支处理数据摄取和整合的团队,以及一支维护数据平台(“真相来源”)的团队,新的数据来源不断出现,由领域专家负责找出这些数据来源。而且,由于我们主要探讨督导式学习,因此,训练数据的缺乏依然是机器学习项目的首要瓶颈,这一点毫不意外。

在迅速创建庞大的训练数据集(或者加强现有的训练数据集)方面,有一些很好的研究项目和工具。斯坦福大学的研究人员已经证明,弱监督和数据编程可以用来训练模型,不必使用大量手工标记的训练数据。深度学习研究人员对生成式模型的初步研究,已经在无督导式学习的计算机视觉和其他领域取得了可喜的成果。

“思考特性而不是算法”,这是在机器学习背景下评估数据的另一个有用方法。友情提示:数据扩充可能改善你的现有模型,在某些情况下,甚至有助于缓解冷启动问题。大部分数据科学家可能已经利用开源数据或者通过第三方数据提供商,来扩充他们的现有数据集,但我发现,数据扩充有时会遭到忽视。人们觉得,获取外部数据、使之规范化、并利用这些数据进行实验,这不像开发模型和算法那么具有吸引力。

从原型到产品

让数据科学项目实现产品化,这是许多用例的目标。为了使这一过程更有效率,近来出现了一个新的工作角色——机器学习工程师。还有一套新的工具用于推进从原型到产品的转变,帮助追踪与分析产品有关的背景和元数据。

机器学习在产品中的应用还处于早期阶段,最佳实践才刚刚开始出现。随着高级分析模型的普及,有几点需要考虑,包括:

· 部署环境:你可能需要与已有的日志或A/B测试基础设施进行整合。除了把稳定、高性能的模型部署到服务器以外,部署环境还越来越多地包括,如何以及何时把模型部署到边缘侧(移动设备是常见的例子)。把模型部署到边缘设备的新工具和策略已经出现。

· 规模,延迟,新鲜度:需要用多少数据来训练模型 模型推导的响应时间应该是多少 重新训练模型和更新数据集的频率应该是多少 后者说明你拥有可重复的数据管道。

· 偏差:如果你的训练数据不具有代表性,那么你将得到不理想(甚至不公正)的结果。在某些情况下,你也许可以利用倾向得分或其他方法,相应地调整数据集。

· 监控模型:我认为人们低估了监控模型的重要性。在这个方面,学过统计学的人拥有竞争优势。想知道模型何时退化以及退化了多少,这可能很棘手。概念漂移也许是一个因素。就分类器而言,一个策略是把模型预测的类别分布与预测类别的观测分布进行比较。你也可以设立不同于机器学习模型评估指标的商业目标。比如,一个推荐系统的任务可能是帮助发现“隐藏或长尾”内容。

· 关键应用程序:与普通的消费者应用程序相比,在关键环境中部署的模型必须更加稳定。另外,这类环境中的机器学习应用程序必须能够数月“连续”运行(不会发生内存泄漏等故障)。

· 隐私和安全:通常来说,如果你能让用户和企业相信他们的数据是安全的,那么他们可能更愿意共享数据。如上文所述,用额外特征进行扩充的数据往往会带来更好的结果。对于在欧盟经商的企业而言,一个迫在眉睫的问题是,《一般数据保护条例》(GDPR)将于2018年5月生效。在其他领域,对抗性机器学习和安全性机器学习(包括能够处理加密数据)的实践研究开始出现。