从橡子橡树:播种联合学习物理模型
我们将穿过端到端流程,特别强调流数据的集成到开发环境和福利数据科学家的一个模拟生产环境。我们展示物理模型加快引导系统。我们将讨论系统MLOps的上下文中。,我们总结这样的体系结构权衡的影响在一个操作系统通知系统的进化
谢谢你来参加我们今天的演讲。我是彼得·韦伯。我的工作在MathWorks关注MATLAB部署和远程执行。我今天加入了卢西奥Cetto,谁知道更多关于机器学习和数学比我。
我们在这里与你们分享一个用例的故事。我们使用机器学习联邦制定预见性维护申请工业冷却风扇。我们训练一个模型在传感器来检测异常数据流从球迷和触发警报服务。我们生产在30天内准备好。
我们怎么这么快就把这样一个大系统放在一起?没有大的秘密。我们使用一个盒子——你知道,那个盒子出来的一切。开箱即用的,现成的软件我们可以得到和使用。我们的身体需要一个准确的模拟器生成训练数据,传输传感器数据的流媒体服务的球迷一个分析引擎,以及指标的可视化平台。我们必须配置连接器胶各个片段组合在一起。
然后我们可以专注于重要的工作。卢西奥写了机器学习分析。我必须创建度量仪表板。但是在我们到达之前,项目本身。
这是一般的想法。扫描的数据由球迷从工厂来生成服务警报。但是我们得到的不仅仅是一个工厂。和他们每个人的知识,别人不喜欢。
如果我们把所有的数据从工厂,我们有更好的模型,但是这需要额外的基础设施,一个中央服务器来培训和更新模型,和一些大的管道数据到服务器。然后,一旦模型的更新,当地分类器暂停去拿新模型。建筑工程,但我们认为我们可以做得更好。
我们想要被称为联合学习。我们取代中央计算服务器更简单和更便宜的数据存储。然后来回我们唯一需要发送的信息模型和它们的参数,不需要那些昂贵的数据管道。和当地的分类器在每个工厂仍然受益于同龄人的知识积累。
这留给我们一个问题。可以联合学习建立一个模型准确的教练访问所有数据?稍后,您将看到一些卢西奥的分析,有助于我们理解权衡。
我们使用联邦学习简化我们的基础设施。但另一个重要的用例是数据隐私。由于数据从未离开网站,拥有它,它包含任何秘密保持当地。虽然这可能不太重要的传感器数据,它可以是非常重要的医学或其他类型的监管或受保护的数据。
说到数据,我们的训练算法要很多很多。但它不仅仅是一个量的问题。如果是,我们可以将模型连接到球迷,数据和我们的数据科学家将会失业。所以,我们转向一个来源,可以为我们提供信号和标签——身体上准确、多域仿真模型。
这部分关于标签值得强调。从模型的生成数据流,它知道当风扇不正常工作和标签的信号的教练。没有这个模型,我们会有很多的手工分类。
我们需要模型三个特征的球迷,电气、机械、热——在每个域和扫描异常。加载异常,例如,意外表明外部温度上升很快,也许在应对增加的负载设备冷却风扇。并不足以模型独立域名,因为在一个真正的球迷,他们交互。
例如,当温度上升时,风扇控制器提高了电源电压。汽车跑得快,冷却速率增加。这为我们提供了足够的准确性是生产准备第一天。
我们在第一天。球迷是流数据分类器。和附近的仪表板为运营商提供了一个实时系统的观点。
但是现在我们有了另一个标签数据。分类器是标签现场粉丝的数据。我们如何利用这种改进算法?现在我们需要一个人类的循环。
运营商可能定期确定分类器错过了真正的异常或引起一场虚惊。这并不经常发生。但当它发生时,操作员可以发送信号分类错误和正确的标签教练。
积累了足以保证培训的时候,培训师更新模型并将它发送回给分类器。手工分类成为可行的只是偶尔因为它是必需的。机器学习算法处理的大部分工作。
与此同时,我希望我给你的背景了解下一节。卢西奥是要告诉你关于我们的建模技术和我们如何评估其有效性。卢西奥。
所以今天,我要玩数据科学家的角色。对我来说,不可能有一个更好的场景比拥有一个物理模型。这将帮助我们更好地理解我们的问题,这样我们可以提出一个增量和联合学习方法可以让我们检测和球迷的异常进行分类。
我们先来了解我们可以观察到的数据。我们观察到三种不同的变量在每个系统传感器。或者如果你愿意,我们也可以称之为球迷。我们观察电机的电压,angulary风扇的速度和温度。
可视化的目的,在这些例子中,我们有了更多的异常,我们通常期望。异常注释顶部的第一个情节。有三种类型的异常。
负载检测到异常时,系统在重载条件下工作。我们要求更多的工作系统设计。风机异常的发现当坏事发生在电动机的机械子系统或风扇。最后,电源显示异常是一种缺陷,电压下降。
现在让我放大一个小区域。这个区域是约2米。在我们的示例中,异常表现为小脉冲痕迹,持续10到100秒。注意,不同类型的异常有不同的配置文件。中包含的信息只有一个这些痕迹通常是不够做一个完美的分类,不同类型的异常,作为一个异常或另一个异常可以体现在几个信号。
这里有一些复杂。例如,第二异常脉冲在定义速度,让我向你们展示,在噪声振幅。也有两个明显的脉冲在末期温度跟踪。但他们不代表任何异常。
这些都是数据分析的挑战,我们可以确定在这个问题。系统在不同位置不同。例如,负载规模——第二跟踪,你可以看到在右边,沿着天温度变化。
个人系统是不同的。这意味着每个风扇的年龄可能有所不同。因此,特征可能不同,我们测量的东西。
同时,观察到的异常在几个不同的位置。有些情况下,在一些工厂,我们只能观察一种类型的异常。最后,异常检测延迟的顺序应该是秒。所以我们不能使用大窗户为了纠正这些信号。
在讨论联合学习之前,让我们做一些假设。正如我们之前看到的幻灯片,有本地系统条件,要么是依赖的工厂,工厂,或者个人风扇本身。例如,给定的工厂可能有一个数组的球迷在一个控制环境温度。也可能是工作时间减少24/7。
此外,每一个球迷可能会在不同的点在其生命周期。因此,我们将假设这些变量条件将主要由小信号的变化趋势。等,我们将使用剩余使用寿命建模和一些强劲趋势的机制。
我就不详细。我们已经谈了谈这一年前在我们之前的演讲。然而,我将向您展示应用这些修正后数据的影响。
在这里,我阴谋只看两个数据点的变量。我们可以看到,消除局部作用后,我们可以明显区分负载异常和正常的数据。顺便说一下,电源异常也歧视很容易当我们看模型的电压,这不是在这些数据绘制。
最重要的是,让我强调任何关于当地情况的信息——这意味着强劲retrending和剩余使用寿命——不是传达到其他系统,也没有联合会。它将保持本地每个模型。
现在让我们去建模技术。异常模型,我们使用的一组二元分类器模型给定类型的异常和正常的行为。我们尝试用增量线性支持向量机和增量摘要分类器。万博1manbetx
支持向量机使用随机梯度下降算法来更新模型,从一个随机的超平面。摘要对分类器更新夏天的代表一个独立的正态分布的统计数据。摘要对分类器有一个好处,那就是它们可以提供概率框架内得分。然而,在我们的实验中,我们发现支持向量机更准确的对这类问题。万博1manbetx
现在,回想一下,并不是所有的异常可能是充分代表在每一个节点。因此,我们只训练那些二进制学习者在每一个粉丝,我们有足够的证据。让我们做一个小括号的标签。
我们假设这些都是由以下两个方面。在第一种情况下,操作员在给定工厂可能标签异常在经历他们,改造的信息到极致。在第二种情况下,我们可以考虑一个工程团队,可能开始的操作系统在一个给定的工厂在一定条件下,他们已经创建了一个物理计算机模型生成标签中的数据。
好的,让我们看看联盟是如何工作的。假设我们有五个节点。每个节点已被训练其本地数据和增量学习算法。模型参数和模型权重被送往联邦。
权重是一个值,它包含大量的证据表明,我们发现在每个本地节点为每个异常。联盟,我们还保持全球模型参数和全球体重,表示在W零和θ零。我们可以简单地计算使用加权和模型参数。在支持向量机的情况下,我们计算新的水上万博1manbetx飞机系数和偏差。在摘要中,分类器我们计算重量本身的每个变量的标准差和均值。
这个计算可以同步或异步。也就是说,我们可以更新全球模型一旦我们收到一个模型更新。或者我们可以批量更新当我们收到所有模型更新。之后,彼得将告诉你,我们也可以计算全球更新在每个节点。
有三个重要方面记住从这个设置。联合权重模型参数使用证据的数量为每个类型的异常。联合会还负责协调新类型的异常报告的节点。这就意味着,随着新异常出现,联合会将更新库存的异常。
我已经说过,全球联盟重量限制在一个任意值。我们继续考虑节点引入的新奇。然后发送回联合新更新。我们有更新的模型每个,每个其中之一,球迷。
让我们看看分类模型的准确性。回想一下,在这里,我们提出两种不同的范例——增量学习的结合,学习和联合。更好地理解的准确性如何准确性的影响,我们要探索精度以下步骤。所以我们先开始看这个简单的线性支持向量机的准确性。这是一个离线线性支持向量机。所以我们得到的所有数据,一次我们训练支持向量机。
让我们看一下离线线性支持向量机模型的比较图。计算精度是通过观察5倍交叉验证所有数据10风机系统运行24小时以上。第一行和列代表正常的数据,你可以看到显然是最常见的条件。
接下来,我们有三种类型的异常。最后一行和列是最罕见的状况。对我们来说,它代表当我们观察两个或两个以上的异常同时,这是一种非常罕见的情况。你可以注意到我们,唯一缺失的国旗七真正正常的异常不重叠情况。
让我们来比较一下与增量支持向量机的学习者。万博1manbetx这里,我们测量的准确性通过看天气预报预测一个周期后24小时。请注意,我们也很少小姐异常。然而,模型会产生更多的假警报。
值得强调的是,我们不分类异常。这是由于建模的本质。,因为我们使用二进制模式之间的正常数据和类型的异常,有一个误分类会意味着一个错误在两个二进制学习者,这可能是小得多。总之,这两个场景中,我们有非常低的假阴性率和错误发现率,这是好的。
好,现在让我们来比较一下联合增量学习方法。在这种情况下,每一个局部模型只有火车使用一种类型的异常。然后发送到联合模式,我们测量使用联邦预测预测模型的准确性。我们仍然想念一些真正的异常。
但在这种情况下,错误发现率约增加一个错误每200标记异常。我在这里强调,左边的增量式模型需要访问所有数据,右边的联合模型不需要分享或交流任何数据。相反,我们只共享各个模型,联合学习范式。
让我告诉你一些典型的错误,我们正在做的事情。最常见的错误是当两个异常发生在同一时间。我们预计这种类型的错误,因为信息的数量并不足以调整模型。
另一个错误发生在系统的瞬变。这也是预期。有两个可能的解决方法,我们没有完全实现在我们的概念证明。首先,我们可以考虑一些较小的滞后。我们也可以纳入系统分数或后验概率给操作员发现任何异常的重要性的概念。
关闭数据分析报告的一部分,让我向你展示我如何包装我们刚刚描述的算法。有三个流媒体功能。其中两个本地运行在每一个节点。和两个更新联邦模型。异常预测接收流与观察和提要输出流与异常类型和分数。
还有其他分类模型的输入和当地的条件。而第一个不需要被更新,每一个模型或风扇的当地条件需要被更新。回想一下,我们为每个风扇或系统保持当地条件。
增量学习的功能异常分类器也有类似的签名的区别也接收输入流的异常水平。同时也更新分类模型与更新的参数。最后,更新联邦的函数模型不接收任何数据,标签,或当地的条件。输入和输出只是分类模型和证据权重。
就是这样。现在让我们回到彼得,他会告诉我们如何配置整个系统和驱动我们通过一些实现细节。谢谢你!
谢谢,卢西奥,解释异常探测器将模拟信号转化为方波,离散状态改变,我们需要计算。这是我们开始的任务,毕竟,扫描一套实时信号来创建一个冷却系统运营商的预见性维护解决方案。让我们看一看这系统和我们一起把它稍微详细地如此之快。
系统基本上由三个组件——一个数据源,分析引擎和度量仪表板。连接器连接或与流媒体服务管理交互流的消息通过这个管道。这是一个高层次、整个系统的抽象视图。但它不会做任何事情直到我们填写这些抽象。
现在我们回到盒子,拿出所有的复杂的软件。Simscape的多域模型生成我们的培训数据。MATLAB生产服务器运行的训练和分类算法。复述,保留了模型参数和其他国家。和InfluxDB Grafana提供仪表板。
帮助你理解权衡在构建这样的一个系统,我想我们会遵循一个信号通过管道在其旅程。我们将停止,在这三个组件。否则我要强调我们所面临的挑战和选择。让我们看一下数据生成。
这个模型允许我不同的类型和数量异常,发生在一个给定的时期。提高场景的多样性变化我能扔在教练和提高最终模型的准确性。你所看到的颜色表示不同的模拟域。
这里是模拟器,产生大约一个小时的标记合成数据。这里有四个图表——三个风扇信号,并且负载异常。它运行,你会明白我的意思的异常标签。
负载异常是那些你看到在上面图表。在本节中,您看到几个我们的注射负载异常。温度上升,和风扇速度,吸引更多的权利和补偿。
前图,你看标签,这是逻辑值,真正在异常发生时,和假当一切是正常的。这就是为什么异常信号是方波。这是一个电压异常。看到底部的大压降图和相应的风扇速度放缓。温度上升,但并不足以引发异常的标签。
另一个要注意的是,这些红色区域宽约90秒,因此包含大约900条消息。这些方波标签碎成许多小块。这将是重要的。我们旅行的下一站信号分类器,我们将看到如何设计联盟高吞吐量。
这是异常检测管道在我们的一个知识共享工厂。让我们来看看在信号分类器。每个工厂都有一个异常探测器数量,每使用一个缓存在本地数据存储模型。联合会所需的参数存储在一个共享的数据存储,可以访问所有的工厂。异常探测器同时运行,每个处理信号从一个独特的粉丝。
时从其他工厂到本地集成参数模型,我们想暂停每个局部检测器在尽可能短的时间内。事实证明,如果我们联盟合并到每个探测器,原子读对了保证我们的数据存储使每个探测器完全独立运作。一旦任何检测器确定它已经足够的数据来改变参数测量的方式,它将新的参数从共享存储和更新模型。
注意,与此同时,绿色工厂发送一个更新共享存储。联邦探测器得到更新吗?它并不重要。如果不是,它会在下一个周期。重要的是,其他的探测器不需要停止和参数数据没有损坏。
然后联邦探测器更新工厂的模型和本地存储。同时,不同的检测器加载模型。再一次,我们不知道它是否有前置或后更新版本,它并不重要。因为每个探测器可以联合就其本身而言,不需要同步阶段,这将使他们中的一些人等待。这使我们的高吞吐量。
我们现在已经变成一个方波信号,前往仪表板。我要用这最后一阶段信号的旅程强调几个微妙的点关于时间序列数据。你至少需要考虑这些问题,当你设计自己的数据模型。虽然看起来像原子不可分割的单元,这两个信号的采样率划分成段。这就是他们运输通过系统,多个消息。
现在你可能已经看到了问题。所需的数据并行性高吞吐量可以结合网络延迟争夺你的信号。大多数信息服务将给您的数据摄取或到达时间戳。这是系统接受消息的时间。
但再次一起把这些消息,我们需要事件的时间戳,记录信号生成的时间。所以如果你生成时间序列数据,确保数据模型包括事件的时间。现在我们的信号是在野外,流媒体在网络上。我们接下来会遇到它的连接器。
我们穷,方波的四块,碎片不再。但连接器使用消息的时间戳重新组装它,把它变成小缓冲区称为窗口。然后它发出每个窗口作为一个更大的消息。在我们的例子中,窗口InfluxDB。
我希望你能明白为什么使用事件的时间戳是重要的。注意,对面的异常信号分割窗口边界。这就是为什么信号是装饰着那些小方块。这些代表的是单一的,独特的信号标识符,数据库查询使用加入windows。
所以最后,time-coherent窗口的数据绑定的仪表板。让我们看看会发生什么。你已经看到视频的传感器数据,所以我想先分类器,然后向您展示指标指示板。
这是在开发过程中分类器。我用MATLAB会话作为登机区服务器,为生产太缓慢,但很方便调试。现在我们停在一个断点。我们可以看看风扇的输入数据,存储为一个时间表。
有几个传感器信号的值。这些数据通过生产函数后,我们可以检查结果。我将能更好地判断这些是正确的如果我是一个更好的数据科学家。但是我相信卢西奥的数学,所以我相信他们。
现在,同样的分类器是我eight-worker本地服务器上运行生产。在很大程度上,我想强调这里的吞吐量,因为每个请求包含大约1000条消息。你可以看到我们每秒处理6000年和8000年之间消息。
这是仪表板。这是冷却系统的概述——数量的异常,条形图;下面,异常的故障风扇。在右边,有一个总异常的时间轴,显示当他们发生。
我们还可以深入到每个粉丝看到更多的细节。这是风扇6。你可以看到异常计数和触发信号值。
现在我们在运行,你可以看到另一个很少有球迷上线。让我们看看风扇9。只是到目前为止报道一种类型的异常。在右侧,您可以看到有更大的下行的风扇速度峰值图。
现在,我将回到主屏幕。你可以看到我们已经积累了几百更多的异常。这就是Grafana仪表板我们开发的概述。
这是我们学到了什么。物理模型提供的训练数据给你一个头开始。使用现成的组件,可以把系统放在一起很快。
联盟使得模型更聪明。和仔细的关注点分离和界面设计让它更容易在必要时。物理模型提供的种子快速增长的一个健壮的预见性维护分类器。非常感谢。
你也可以从下面的列表中选择一个网站:
表现最好的网站怎么走吗
选择中国网站(中文或英文)最佳站点的性能。其他MathWorks国家网站不优化的访问你的位置。