解除固定固定关闭

中国区总部
Beckhoff Automation (Shanghai) Co., Ltd.

市北智汇园4号楼
静安区汶水路 299 弄 9-10 号
上海, 200072, 中国

+86 21 6631 2666
info@beckhoff.com.cn
www.beckhoff.com.cn/zh-cn/

2021年5月4日

“人工智能是人类的下一个进化阶段”

人物专访 | 倍福 Fabian Bause 博士

发表于《Computer & AUTOMATION》03/2021,www.computer-automation.de,WEKA 行业媒体

采访人:来自《Computer & AUTOMATION》杂志的 Andrea Gillhuber

倍福已经将机器学习集成到其 TwinCAT 3 控制平台中,并在该领域积累了宝贵的经验。在此次采访中,倍福 TwinCAT 产品经理 Fabian Bause 博士向大家介绍了如何能够用有利的方式布署机器学习算法和模型。

在企业布署实施机器学习之前,第一步应该做什么?

Fabian Bause 博士:首先要详细分析可以在哪里成功布署机器学习(简称 ML),即部署必须富有成效。人们在对待新技术时往往会出现两种极端态度。要么会因为缺乏经验持保留态度,要么会非常兴奋,想用这些新技术来解决过去无法充分解决的难题。我们不应该偏向任何一方,而是客观地分析 ML 在哪些方面真正有用。

一旦找到了潜在适合机器学习的应用,就应该及时将其作为原型实施,项目团队的敏捷性在这里是关键。ML 项目实际上是一个进化过程,不能被预设的方法等事项所限制。

倍福在 2019 年的汉诺威工业博览会上宣布他们将在 TwinCAT 3 控制平台中整合机器学习。自那时起到现在,机器学习在哪些应用领域中的表现比较突出?

去年,我们成功完成了测试,并非常成功地推出了我们的第一款产品 — 一个无缝集成到 TwinCAT 3 中的机器学习模型推理引擎。该解决方案的特点是能够直接在 TwinCAT 实时环境中执行神经网络等模型,这也意味着这类机器的应用领域是无限的。

在用户方面,已经形成了一个基于 ML 的质量控制和过程监测/优化的解决方案集群。一个完全自动化和控制器集成的质量控制系统,它可以基于如电机电流、转速和跟随误差等现有的机器数据对生产的货物进行全检测。它可以 7 天 24 小时工作不休息,不会感到疲倦,而且能够实现远远超过人类所能做到的周期时间。过程监测和优化是两个连续的步骤。如果用训练好的模型来进行过程监测,机器可以通知其操作员,而操作员又可以即时调整过程,以保持产品质量的稳定性。下一步是向这名有经验的机器操作员学习,并以这样的方式训练模型,让模型能够自主地进行所需的参数调整,或在中间步骤中作为“智能助手”发挥作用,给出参数设置建议。

除了控制系统中用于 ML 的基础组件外,我们越来越关注倍福产品在图像处理和运动控制领域的应用,目标是为用户提供硬件和软件方面经过优化的组件,无需事先掌握 ML 知识即可使用这些组件。

实时机器学习尤其是对需要高处理性能同时快速运行各种工艺过程的工厂车间提出了挑战。然而,如何将 ML 用于实时控制的应用,如运动控制应用?

首先,我们必须认识到,训练基于 ML 的模型要比执行(即推理)训练好的模型花费更多的时间。在硬件方面,推理在我们的工业 PC 上运行。它能够在 CPU 中高效执行的一个重要原因是持续使用 SIMD 命令扩展,并结合高度优化的缓存管理。此外,目前 CPU 中的处理器内核越来越多地支持神经网络的加速执行,因为它们可以非常高效地并行执行。 仔细观察训练好的模型也非常重要,它就像“手工编写”的源代码一样。执行一个庞大、低效的源代码要比执行一个精简、优化的源代码需要的时间长很多。必须根据特定的任务对训练好的 ML 模型进行调整和优化。现在,可以非常轻松地实现微秒级神经网络执行速度。例如我们有一个展览就是由 250 个神经元组成的多层感知神经网络。通过我们高度优化的推理引擎,它在 Intel Core i3 CPU 上的执行时间仅需几微秒。因此,我们可以确信,在图像处理和运动应用中使用 ML 时,在算力方面不会有任何障碍。

倍福 TwinCAT 产品经理 Fabian Bause:“目前 CPU 中的处理器内核越来越多地支持神经网络的加速执行,因为它们可以非常高效地并行执行。”
倍福 TwinCAT 产品经理 Fabian Bause:“目前 CPU 中的处理器内核越来越多地支持神经网络的加速执行,因为它们可以非常高效地并行执行。”

应该何时将机器学习集成到应用中?在开发时还是在运行后期?

正如我开始时提到的,ML 项目是一个进化过程,应该尽可能在设备制造商的价值链早期阶段开始。当设备在终端客户那里投入使用时,并不是每个应用都会有一个最佳解决方案。此外,在设备运行时可以识别和分析新的相关数据。这样就可以不断改进 ML 模型。为了在技术层面支持这一过程,倍福的推理引擎采用了结构化设计,即能够在不中断设备运行的情况下加载新创建的模型,而无需停止 TwinCAT,也无需编译源代码。在很多情况下,用户的设备可能已经配备不包含 ML 功能的控制器。他们想要提高产量,因此他们越来越多地考虑使用 ML。这就是开放式控制方案发挥关键作用之处。由于它接口众多,即使将 TwinCAT 控制器改装到现有的控制方案中也不会构成障碍。我们在已经使用(并将继续使用)第三方控制器的 TwinCAT Machine Learning 第一个客户身上看到了这一点。他添加了一台安装有 TwinCAT 3 软件的倍福嵌入式控制器,它可以从第三方控制器中读取基本数据并进行推理,以便在 TwinCAT 环境中实施质量控制系统。可靠的 ML 应用以数据库作为起点和终点。

如何选择在 TwinCAT Machine Learning 中处理的训练数据?需要数据科学家吗?

ML 项目需要团队合作,项目团队由不同的专家组成。团队核心成员是某一领域的专家,例如,机器建造师或线性驱动或成型工艺专家。他或她确定想要通过机器学习来应对的挑战,即他或她已经设立了一个目标,并且对机器很熟悉。他或她必须与主要关注数据分析的数据科学家一起,定义在达成目标中发挥作用的基本机器参数有哪些。数据科学家总是与领域专家紧密合作,以强调某个特定数据模式和行为的重要性。如果没有来自领域专家的反馈或者反馈给领域专家,数据科学家就不能充分发挥作用。倍福会根据客户的具体情况与客户灵活沟通。某些设备制造商已经设立了数据科学部门,即使其中一些只是一个人在唱独角戏,也可以完成这项任务。而其他很多制造商则需要我们的帮助。当然,也有客户联系我们,想要我们提供“全包式”的数据科学家服务。在这种情形下,我们很乐意让他们与我们的专业合作伙伴网络取得联系。

需要为每个 ML 模型准备训练数据吗?

是的,这始终是一个前提。机器学习总是基于用于训练模型的样本数据。在训练阶段,模型的区别主要在于训练数据是否带有标签。如果数据带有标签,就可以在训练过程中识别出某一特定输入的预期输出样本,即训练基于具体的样本。如果数据不带标签,输出信息就会缺失,算法也就仅限于寻找内部的抽象关系。例如,这可能是训练数据集内一定数目的聚类。

当异常情况未知时,如何训练一个模型来检测异常?

有很多方法可以实现这个目标。一个比较简单的方法就是用一个已知类别,即“无异常”类别来训练一个分类模型。使用包含无异常情况的数据来训练模型,并将这组数据定义为“A 类”。在这个过程中,算法识别出“A 类”。但当数据表现出另一种未知结构,并报告一种未指明的异常情况时,它也能一一识别出。重复一下:人工智能是人类的下一个进化阶段。在持续收集机器数据并与分类结果存储在一起后,数据科学家可以与领域专家合作,详细分析工艺序列中检测到的异常情况。需要时可以使用一个不仅能够识别异常情况,而且能够更详细地识别案例的模型。