如何避免AI困扰于数据项目的过度复杂化

文章 (137) 2021-01-31 22:03:00

在数据项目中,很多时候下意识的反应是“尽可能多地投掷AI”。

鉴于AI的承诺,这是可以理解的。但这值得我们退后一步,在匆忙前先考虑问题。要有效工作,必须以正确的方式将AI用于正确的应用程序。

您不会使用精密的激光来裁缝服装。它可以工作,但是会带来不必要的成本和风险,并且与剪刀相比没有任何实质性的改进。同样,您不应将复杂的AI用于可以轻松解决的问题。

如果确实需要处理诸如自动驾驶汽车或Google的图像搜索之类的大量复杂数据,则复杂AI很有用。但通常不是。

根据我的经验,我看到了许多AI实例,因为它是可用的最强大的工具,而不是最合适的工具。充其量,这可能意味着浪费时间和金钱来做本来可以更快,更便宜的事情。在最坏的情况下,这可能意味着项目失败或用户不信任的难以理解的系统。

AI复杂性/故障问题

AI应用程序的运行方式不同于传统的软件应用程序,传统的软件应用程序被编程为以某种方式对某些输入做出响应。AI会摄取数据并了解其中的关系。更高的复杂性意味着更多的困惑和失败机会。

常见的情况如下:组织有大量来自机器的传感器数据-振动,温度,运动等。它希望使用它来预测机器何时可能发生故障。它构建了一个神经网络来处理这些复杂的数据集,将其输入并了解传感器测量的哪些组合与即将发生的故障相关。

这可能是一个很好的方法,但是这种想法的问题在于,它错过了寻找可能更好的解决方案的机会。

每个问题的复杂程度不同,关键是使机器学习解决方案的复杂度与问题的复杂度相匹配。学习过机器学习的任何人都将熟悉问题复杂性,模型复杂性和模型错误之间的权衡。

有时候,复杂的AI是正确的选择。例如,图像识别或自然语言通常具有太多的复杂数据,无法简单地做事。Google的图片搜索效果不错,但是任何搜索都将很快开始显示超出我们预期范围的内容。我们可能会接受以下观点:在寻找购物灵感时,而不是在尝试发现需要立即关闭机器的情况时,则不会接受。

绝大多数问题并不那么复杂。“大量数据”与“大量复杂性”不同。更好的方法是“大量相关数据”。通常,解决当前问题所需的数据仅来自几个传感器。如果我们花时间识别那些关键数据集,我们可能会找到一个更准确,更健壮的解决方案,其中包含可以快速构建的简单模型。

成功的AI项目的诀窍是找到特定问题的最佳复杂度。

最合适的解决方案

在数据项目开始时,我们通常不知道问题所在的复杂性范围。我们可以从简单开始工作,也可以从复杂开始工作。我们赞成前者。

这种方式有两个优点。首先,如果您的简单模型(LASSO,岭回归,树木,随机森林)有效,那么您将节省时间和金钱,并且部署起来会更容易。在行业环境中,更简单的模型更加强大。

其次,您可以迭代地添加复杂性层,直到开始穿越最佳曲线相交为止。统计模型很容易理解,因此在进行迭代时,您会了解实际在实际中导致问题的原因,并且可以做出明智的改进,而不是根据数据假设进行猜测。

另一方面,很难从复杂过渡到简单。神经网络是复杂的黑匣子。弄清楚内部到底发生了什么,以及哪些决定在驱动决策是极其困难的(尽管这是一个活跃的研究领域)。

在许多情况下,我们使用简单的模型即可达到98%至99%的准确度,然后构建更复杂的神经网络来探索是否可以改善这一点-只是发现准确度有所下降。

AI可解释性问题

复杂AI的另一个问题是,由于它学会了在数据中许多复杂关系之间建立联系,因此人们有时无法理解决策逻辑。

这意味着复杂的AI需要用户不确定性的信任-并不是说这是错误的,但是很难确定。如果其决策具有高风险(关键组件故障)或需要作出解释(贷款拒绝,药品批准的监管案例),则可能不可接受。

明智的AI方法:保持简单

许多问题源于围绕AI的大肆宣传。每个人似乎都希望拥有最新,最酷的技术。一旦大多数人开始寻找AI解决方案,他们就会发现不乏愿意出售它们的新兴AI供应商,无论它是否最合适。

最好使事情尽可能简单。从最简单的解决方案开始,然后迭代建立准确性,而不是从最复杂的解决方案开始。逐步进行工作,直到您将问题的复杂性与正确的解决方案相匹配为止。尽管有时候工业神经网络是正确的答案,但往往有更合适的解决方案。

我相信AI决策者应该与有挑战经验的人合作,并寻求最佳解决方案,而不是与声称拥有最强大AI解决方案的人合作。像其他任何东西一样,该解决方案应设计为解决特定问题,而不是基于可以赋予它多少火力。

正如通常归因于爱因斯坦(Albert Einstein)的复述所言,“一切都应该变得尽可能简单,但不要简单。”

THE END

发表回复