技术文章和通讯

自动化机器学习MATLAB和Simulink的DevOps万博1manbetx

由彼得·韦伯和Gokhan Atinc说MathWorks


随着越来越多的组织依赖于机器学习应用程序的核心业务功能,许多正在仔细看看这些应用程序的完整生命周期。最初专注于开发和部署的机器学习模型已经扩大到包括连续监测和更新。输入数据的变化可能会降低模型的预测或分类的准确性。提示培训和模型评价产生更好的模型和更准确的决策。

在机器学习操作,或毫升行动、计划、设计、构建和测试活动的开发与部署操作,操作和监视活动在一个连续的反馈回路(图1)。许多数据科学团队已经开始自动化部分的ML运维周期,如部署和操作。

机器学习模型的连续的反馈回路。

图1所示。毫升运维周期。

完全自动化循环,然而,需要额外的步骤:性能监测和评价模型,将评价结果纳入一个更好的执行模型,并重新部署新模型。实现这种自动化提供了显著的好处,使数据科学家们花更多的时间来设计有用的ML解决方案和更少的时间管理和乏味,容易出错的手工任务。万博 尤文图斯

为了说明如何使用MATLAB基于模型的设计®和仿真软万博1manbetx件®可用于自动化毫升运维流程,我们实现了一个预见性维护申请一个虚构的城市交通系统。组织需要一种方法来计划维修或更换的电池的电动汽车电池之前失败的风险,而在路上。

应用程序包含一个机器学习模型,使用电池电荷状态(SOC),预测电池的电流,和其他测量健康状况(SOH)。其他组件包括一个应用程序服务器运行大规模机器学习模型,一个漂移检测组件,与训练数据观测数据进行比较,以确定当培训是必需的,和一个高保真电池的物理模型,使观测数据的自动标注。

对于许多组织来说,这最后的武器(高保真物理中缺少的那一块,使完全自动化。没有它,人类需要检查观测数据和应用标签;,这基本步骤和完整的ML运维周期可以自动化。

建筑模型电池数据生成和自动标记

我们可以开始之前培训机器学习模型预测电池的健康状态,我们需要的数据。在某些情况下,一个组织中可能存在大量的数据来自真实世界的系统操作。其他人,包括为我们虚构的交通系统,数据必须通过模拟生成。

生成训练数据的交通网络的电池系统,我们创建了两个基于物理模型仿真软件和Simscape™。万博1manbetx第一个模型,把从电气和热动力学领域,产生现实的原始传感器测量,包括电流、电压、温度和SOC(图2)。第二个计算SOH从电池的估计能力和内部阻力,这是来自第一个模型产生的测量。第二个模型,允许我们自动标签观测数据,大大减少人类干预的必要性的再循环。

基于物理的图模型电池模型,生成原始传感器测量。万博1manbetx

图2。基于物理模型的电池模型用于生成原始传万博1manbetx感器测量。

通过应用独立概要个别电池老化和不同的输入环境温度第一个模型,我们创建了一个车辆的历史数据集的大舰队,适合训练我们的预见性维护机器学习模型。

毫升模型构建和部署

一旦我们有训练数据,我们将我们的注意力转向毫升模型。我们使用了诊断功能设计应用探索原始测量数据,提取多畴的特性,选择最佳状态指标的特性集。因为我们的目标是自动化整个周期,我们需要自动模型选择和培训。为此,我们创建了一个组件,我们称之为AutoML。建立与统计和机器学习MATLAB工具箱™,该组件负责自动寻找最佳机器学习模型和最优hyperparameters对于一个给定的训练数据集。AutoML组件得到了周期开始:它产生我们最初的机器学习模型从最初的训练数据和特性集。

除了支持向量机,AutoML组万博1manbetx件火车和评价线性回归模型、高斯过程回归模型,总体提高了决策树,随机森林,完全连接前馈神经网络(图3)。AutoML组件使用MATLAB并行服务器™来加速这个过程的一部分,同时培训和评估多个模型。

图3。动画显示的结果AutoML过程评估各种模型和hyperparameter选项。

当AutoML过程完成后,我们部署优化模型转化为本地生产环境中使用MATLAB生产服务器™。

识别和解决数据漂移

在许多机器学习问题,有一个隐含的假设,数据用于训练模型完全代表整个特征空间的潜在分布。换句话说,它假定的分布数据不会改变。在现实世界中并不总是这样。例如,在我们的电动汽车应用程序中,我们可能会训练我们的模型假设车辆将操作在一定的温度范围内。在生产中,但是,我们发现公共汽车经常在温度高于这个范围。这种变化的数据被称为漂移漂移,提高了模型的预测精度往往减少。因此,它往往是必要的数据科学家发现和应对变化的数据随着时间的发展,通常通过训练新模式。

在这里,重要的是要区分概念漂移数据漂移。在机器学习中,概念漂移的定义是联合概率的变化观察到的特性和标签或反应。可能非常难用机器学习概念漂移模型在生产中,因为两个特征值和响应值需要被人知道的。因此,许多组织专注于下一个最佳选择:数据漂移,或者只观察到的变化分布特征而不是标签。这是我们的方法。

我们开发了一个MATLAB应用程序比较值的漂移检测新观测数据模型的训练集的值。

在生产中,它读取近乎实时的观测数据从一个Apache®卡夫卡流,使电池健康预测与MATLAB函数处理观察使用我们的机器学习模型(图4)。我们开发了MATLAB函数使用MATLAB生产服务器的流数据框架,使我们很容易在处理历史数据文件在卡夫卡实时数据流。通过一系列的迭代框架流程流数据,因为完整的流不适合到内存中。每次迭代都包括四个步骤:从流读取一批观测,加载模型,作出预测并将它写入输出流,而且,如果有必要,下一次迭代所需保存任何数据。每一批的大小跨度时间间隔的时间足够长,以确保有效的提取特征捕获足够的电池特性SOH预测。

图显示了使用电池的健康结果和预测电池维护模型电池数据流。

图4。使用数据流预见性维护模型。

注意,即使漂移检测应用程序确定观测数据中有了很大的变化,这并不一定意味着已经过时的机器学习模型。过时的应用程序不能确定模型,直到获得响应值(或标签)为新观测数据,它是通过基于物理SOH传播新数据模型。在这一点上,应用程序可以比较基于物理模型的响应值与响应值的机器学习模型;如果值变化很大,现在是时候来调用汽车毫升组件与新数据,并自动创建一个新的机器学习模型优化的数据来自舰队。

公平地问为什么我们需要一个机器学习模型来预测电池的健康状态,如果我们可以在第一时间通过模拟估算。答案是,毫升模型可以生成预测在现实一次附近的速度比通过基于物理模拟是可行的。

一个可伸缩的、可概括的架构

我们设计的建筑自动化毫升运维水平伸缩。预测和监控组件运行在MATLAB生产服务器和模型训练是在MATLAB完成并行服务器体系结构(图5)。也可概括的。虽然我们的示例关注预见性维护和漂移检测电动公交车、体系结构可以很容易地适应其他应用程序和用例。例如,基于物理仿真软件模型可以取代数值模型在MATLAB开发的万博1manbetx。同样,许多现成的组件,我们使用这样的作为数据流的Apache卡夫卡,Grafana仪表板框架可以被替换为其他原生云服务。

图描绘的水平可伸缩架构毫升行动。

图5。水平可伸缩的架构自动化毫升行动。

使用现成的组件使我们关注架构而非实现细节,就像一个完全自动化的ML运维周期使数据科学家专注于设计机器学习解决方案而不是管理管理细节。万博 尤文图斯

2023年出版的