在应用机器学习时如何处理不良数据?

编辑时间: 2018-06-13 23:21:52    关键字:

 我们在收集、储存和处理大量数据方面取得的进展对于机器学习,或者说人工智能的发展起着重要的作用。许多问题都需要大数据的支持来解决,幸运的是,现在收集、存储和处理大数据的成本比以前要小得多,速度也要快得多。

 [URL]66fea572e0c78877b62d8c6fc60cb972.jpg

译者 | 郝毅编辑 | Debra微信公众号 | AI 前线(ID:ai-front)

从推动复杂市场的预测分析到到效率更高的自动化流程,技术明显可以加速化企业在前沿竞争的步伐。但是,如果推动这些创新的数据良莠不齐,那么不管使用哪种工具效果都会大打折扣。

“数据质量不佳是阻碍机器学习广泛发展的主要原因”——数据质量管理的先驱者之一,数据博士 Thomas C. Redman 如是说,当然这样想的不止他一个人。

众所周知,训练数据决定了机器学习系统的性能。高质量的数据可以得到更好的结果,不好的数据会流经整个系统产生没用的信息。

下面我们就来谈谈错误的数据是如何影响机器学习的,以及如何减轻风险。

在数据缺陷带来的影响中,公司首先看到了错误分析、错误预测和糟糕决策。随着人工智能技术越来越流行,高质量的机器学习的需求越来越清晰,计算机科学的 GIGO 原则变得更加重要了。

Redman 提醒我们“不良数据的引入可能会出现在两个地方:第一个便是用于训练模型的数据,第二个便是用于测试的新数据。虽说数据科学家和工程师正在努力的精炼他们的人工智能、机器学习和深度学习算法,但是“只有 %3 的公司”能够提供符合基本质量标准的数据。

我们不能将失败归结于机器,但是我们可以采取一些措施缓解不良数据产生的影响。

数据丢失或不完整

有些时候,由于某些信息不能直接获取到,数据会被组合并某些字段进行留空。或者当数据被收集时执行的分析和当前的分析所面临的目标不同,导致某些值被省略。然而,然而,学习,解释和预测 ——ML 的主要目标 ,很难通过不完整的信息来实现。

面对上述问题,对应的解决方案是:尽管消除问题数据的方法对结果会有很大提升,但是仅在问题数据所占比例较小时候,这种方法的去除效果会比较好。另一种方案是使用合成数据:通过算法创建符合真实数据特征的模拟数据。合成数据是一种新兴技术,可以帮助消除访问完整训练数据的障碍。

数据不准确

部署 ML 项目时的是在训练预测模型之前清洗数据。但清洗数据并不总能识别或纠正每一个错误,并且数据仍然可能会不完美。 数据科学家已经花费了大部分时间来对抗这一问题,然而,一个预测模型的输出会作为后续模型的输入,这意味着即使是一个小错误也会产生显著的负面影响。

面对上述问题,对应的解决方案是:提供足够的时间清洗数据,评估数据源并在每个阶段对性能进行测试。 保持数据集的清洁是很困难的,但如果将清洗数据的任务分配给特定的团队,则会变得容易。 为传入数据的质量创建和执行明确的标准,并立即寻找并消除错误的根本原因。

数据有偏差在机器学习训练过程中,如果数据存在偏差,数据的完整性会受损,这会直接影响到预测结果。例如,当搜索一位女性联系人时,LinkedIn 的搜索引擎可能存在性别偏差,从而促使该网站以男性名字作出回应。当在平台上搜索“Michelle”返回“Micheal”时,这是一种引起用户反感的明显错误。

面对上述问题,对应的解决方案是:确保数据和分析数据的算法与当前项目的值和目标保持一致。经常检查机器学习模型并仔细检查训练数据,以发现有意和无意的偏差。如果发现偏差,请将其隔离并移除输入数据集中与其相关的部分。

总结

发现有缺陷的数据并改进能够有效的提升机器学习算法。然而,Looker(一家领先的数据平台公司)首席数据传播者丹尼尔•明茨(Daniel Mintz)强调了一个更令人沮丧的现实。“真正令人害怕的是何时发现不好的数据。虽然用于清洗数据的时间宝贵,但没有发现问题而导致的后果往往更加可怕。”

他继续说道,“当你知道你不知道的时候,你是很谨慎的。但是,有缺陷的数据会让你陷入一种不自知的状态,那么你就有可能根据这些错误的信息做出错误的决策。这就是真正的危险所在。“

在你的机器学习项目中建立质量数据文化是可能的。彻底的测试、清洗和审计确保准确性,同时仔细的计划可以发现并消除隐藏在训练集中的偏差。最后,你可以花更多的时间来了解您的数据 ——它来自哪里以及你想通过它实现的目标,你的机器学习项目将会更成功。

推荐热图

合作推荐

2010-2018 可思数据版权所有 About SYKV | ICP备案:京ICP备14056871号