随着我们每天与机器学习的互动越来越多,机器学习的概念正在得到更好的理解。从Netflix和亚马逊推荐,到Siri和Cortana语音识别,再到谷歌地图旅行时间计算,我们都越来越熟悉机器学习技术——即使我们还没有完全意识到它。
然而,将机器学习应用于工业则是另一回事。虽然有几家公司正在这样做,但它远没有上面提到的面向消费者的应用程序那么普遍。这就是在2018年点火社区大会上,感应自动化的Kathy Applebaum和Kevin McClusky的演讲如此有趣的原因。在他们的演讲中,他们解释了机器学习的主要分支,应用的不同类型的算法,以及最重要的是,工业用户可以采取哪些步骤开始在他们的设备中使用机器学习。
考虑到机器学习在当今工业应用的现状,Applebaum说预测性维护是该技术的主要应用,其次是质量控制、需求预测和机器人培训。
鉴于机器学习在工业应用中的明显和日益增长的兴趣,McClusky指出,归纳自动化的点火软件现在可以应用在这里。他说,随着今年5月Ignition 7.9.8版本的发布,Ignition的库现在包含了涵盖各种用例的机器学习算法。
机器学习的类型
Applebaum说,重要的是首先要理解机器学习有三种主要的技术类型,而且关于这三种技术之间重叠的争论也不少。这三种类型是:
- 分析是知识发现,Applebaum说。你可能已经在做描述性分析了(比如从数据库运行报告)。诊断分析在描述性分析中增加了一个“为什么”组件,以识别问题的原因(例如,为什么机器会崩溃?)预测分析着眼于未来可能发生的事情,通常不是非常具体,而是基于以前发生的事情。最后,说明性分析建立在预测性分析的基础上,建议下一步解决问题。”
- 机器学习本身是指自动使用数据从经验中学习和改进。
- 人工智能包括模拟人类智能的计算任务,Applebaum说。
算法
为了说明机器学习的三种不同算法是如何工作的,McClusky首先展示了如何使用Ignition的机器学习应用程序将不同的数据点组合在一起。在这个演示中,他使用了生产过程中各个部件的质量数据测量(如温度和湿度)。通过在Ignition中显示这些数据,McClusky向用户展示了如何在2D空间中从多个方面查看数据。他说:“Ignition会对来自传感器的数据进行分类,以便在图形对比中使用,这样你就可以看到每组(数据)如何相互比较。”
McClusky在这个例子中使用的机器学习算法被称为K-means,它聚类数据点。“K-means不知道类别代表什么,它只是通过计算每个数据点的位置和它们之间的距离来计算中心,”他解释道。这种能力使得K-means很好地为缺陷分析对数据进行分类。例如,当一个新零件通过(生产)时,你可以使用它的数据来查看它是否符合既定的“良好质量”参数,以确定该零件是否通过或需要进一步分析。
另一种机器学习算法类型被称为决策树。这个算法非常强大,因为它可以引导你一步一步地确定数据的类别或公式,Applebaum说。决策树对于预测性维护非常有用,因为您可以使用它们来查看决策是如何制定的。另外,您可以将它与其他算法结合使用。
回归分析是一种机器学习算法,可用于过程调整和生产预测。McClusky说:“对于流程调整,使用回归分析可以进行手动流程,并让系统生成推荐的设定值(用于手动应用),或者让设定值直接进入PLC。”“你甚至可以用它来进行高级过程控制和持续调优。”
他补充说,回归分析可以用于生产预测基于当前的一组变量(即任何数据点),以确定,例如,什么将生产在一条线或整体到一个班次结束。“还可以根据过去的经验对所有变量进行长期预测,例如:从现在开始一周或一个月后的生产情况如何?你甚至可以输入来自其他系统的变量,比如SAP。对于机器学习(回归分析的应用)来说,你使用的变量越多,结果就越好——当然,前提是数据一开始就很好。”
阿普勒鲍姆说,神经网络算法模拟了我们认为大脑工作的方式。神经网络在工业中广泛应用的一种方式是视觉系统。通过神经网络,你可以查看生产线或流程中的特定项目,并使用现有的传感器来推断(来自这些区域的)数据,从而简化流程。
McClusky提到了在Frito-Lay使用Ignition的视觉系统机器学习应用,他说公司将它应用于一条线上的一块区域,在那里有一个秤来称土豆。菲多利希望使用视觉系统来确定线上土豆的密度,这样每批土豆的烹饪时间就可以相应地调整。他们成功地做到了这一点,这使得他们不用为了称重而倾倒一部分土豆。
无论您计划使用哪种机器学习应用程序或应用哪种算法,您从一开始就需要良好的数据,这意味着您需要一种策略来找到正确的数据并处理它,从而确保其质量。麦克卢斯基说:“用统计数据抽样来判断它是否正确。”“你需要全面了解你正在处理的事情,才能得到好的结果。所以你不能只看历史数据;你必须研究抽样技术以及相关性和因果关系。然后,考虑一下你的结果有多好。这就是领域知识和过程知识很重要的地方。领域专家——而不是数据科学家——知道什么类型的数据有前途,什么时候的结果没有意义。”
实现
在对机器学习的类型和支持它们的算法有了很好的理解之后,下一步是开始考虑应用程序。Applebaum概述了机器学习成功实施的五个步骤:识别你想要解决的问题,收集数据,创建模型,部署模型,并监控成功。
Applebaum说,要找出问题所在,最好选择一个你想回答的问题。例如,你是否想要改进一个特定的过程,减少缺陷,等等?她警告说,在这样做的时候,要注意高价值与容易做出决定的区别。她建议:“首先选择一个容易实施的项目,因为高价值(项目)可能是一个很难开始的地方。”
尽管如此,Applebaum强调,即使是在简单的机器学习项目中,确保获得一些价值仍然很重要,而不是仅仅为了展示技术而存在的项目。“理解成本函数——基于你尝试做的事情,预测结果和实际结果之间的差异。”
这是领域知识的另一个领域可以扮演着重要的角色在机器学习应用程序而言,为项目选择有用的数据,获取丢失的数据,确保质量数据输入和识别因变量(即数据点是相互联系的,如温度和时间)。
McClusky补充说,在实施机器学习项目时,一定要使用提取转换负载(ETL)来获取数据,而不是生产数据库本身。将数据采集过程(使用ETL)自动化,从而自动获取、清理数据并处理丢失的值。
然后开始可视化Ignition中的数据以帮助理解它,这样你就可以看到你想应用哪种类型的算法,Applebaum建议道,“不要害怕尝试不止一种[算法]。”Ignition提供K-means、数据库扫描、神经网络和简单回归。Amazon Web Services, Microsoft Azure和谷歌Cloud为进一步的分析提供了其他工具。
“很多人试图在这个测试过程中偷懒,”阿普尔鲍姆指出。但是不要这样做。确保你的模型确实预测了你以前没有见过的东西。返回并重新测试尽可能多的需要得到一个有用的模型。花时间在这里把事情做对比以后再去解决问题要好得多。”