作为我工作的一部分联合管理计划,我一直在探索如何应用结构方程模型(SEM)来帮助解决科学和工程问题。 我尝试过的想法之一是使用 SEM 进行大规模化学过程中的故障检测。 这可以通过以下方式实现:针对过程中的受控数据构建 SEM,然后将该模型应用于失控数据,看看是否可以检测到系统的变化。
我写这篇文章的目的是分享这个探索过程的一小部分,以强调将 SEM 应用于以前未以这种方式考虑的问题的潜在价值。 为此,我将简要解释我从哪里获取数据,然后我将从头到尾完成整个过程。 这应该提供有关如何设置基本 SEM 的一般教程JMP专业版。
田纳西伊士曼模拟器
为了进行这种口径的分析,我首先需要一个足够大小的数据集。 由于公司不披露其确切的制造细节,因此很难获取化学工艺数据集。 幸运的是,有一个名为田纳西伊士曼模拟器 (TES) 的模拟器,可以为大型化学过程生成数据集,以及系统出现故障后的数据。

上图称为管道和仪表图 (P&ID),用于显示有关系统的许多信息,但在本例中,使用它是为了让我们可以看到在何处进行测量以及进行了哪些测量。 如果完整的 TES P&ID 令人困惑,请不要担心。 当我们开始构建 SEM 时,系统的复杂性将大大降低。 但这提出了一个问题:我们可以在多大程度上简化我们的模型并仍然获得有意义的结果? 我将在示例的最后探讨这个想法。
在这种情况下,我的一位前同事,杰里米·阿什,为我提供了模拟的基线数据集,以及引入不同故障后系统的其他三个数据集。 为了简单起见,我决定只使用基线数据集和故障 1 的数据集,故障 1 是空调进给比中的错误。
探索性数据分析
为了在工程环境中展示尽可能简单的 SEM 示例,我对数据集进行了各种分析,试图找到一种减少数据集的方法。 这是必要的,因为这个数据集包含超过 50 个变量(也就是说,不考虑时间,这将在另一篇文章中介绍),这意味着系统将很快变得非常复杂。 为简单起见,仅选择七个变量用于构建 SEM;这个数字是一个有点任意的选择,您可能希望有比这个更多或更少的变量。 这完全取决于您愿意接受简化和丢失数据关系之间的权衡。
在这个控制案例中,我们知道导致偏离正常运行的故障是什么:空调进给比。 因此,为了使该 SEM 保持简单,我设计了仅检测这一故障的模型。 此时,您可以看到这些设计选择如何极大地影响模型的质量和可用性。 在这种情况下,创建的模型将无法推断以稳健地检测可能发生的其他故障。
在没有过多介绍我个人探索过程的细节的情况下,我包含了整个数据集和缩减数据集的相关图,以便您可以看到所选的变量彼此之间具有非常强的相关性。 当然,这是构建 SEM 的一个极其重要的部分。 如果我们的变量都没有显着相关性,那么就找不到潜在因素,也无法构建 SEM!


希望初始相关矩阵的大小能够突出显示为什么我决定在此示例中大幅减少数据集。 我应该在这里指出,在我的 EDA 中,我发现“A 流”和“C 流”变量与其他变量高度相关,但我没有将它们包含在矩阵中。 这是因为我们知道错误是由这些变量引起的。 因此,我研究了错误发生前后的相关矩阵来监控这种差异。 不过,这些变量将在最终模型中得到考虑,因为它们对于识别错误发生的时间和原因显然非常重要。
简化模型
现在数据集已经简化,分析数据和构建结构方程模型变得更加容易。 因此,下一步是进行因子分析,以确定 SEM 中应使用多少个因子。

在这里您可以看到,95% 的数据是通过两个因素表示的,而 98.5% 的数据是通过三个因素表示的。 这意味着当我们构建 SEM 时,我们应该使用两个或三个因素。 JMP Pro 还为我们提供了因子载荷,向我们展示了每个显变量和潜在变量之间的相关性。 因此,这作为SEM构建的基础。 如果我们将这些因子载荷与七变量相关矩阵进行比较,我们会发现因子载荷与相关分析一致。

我想在这里指出,压缩机工作和压缩机再循环阀对这些因素的影响并不像其他变量对它们各自因素的影响那么强。 这在构建 SEM 时非常重要,现阶段的结论是这两个变量与潜在的第三个因素的相关性更强。

因素识别
让我们花点时间来实际了解上一节中的所有因子信息告诉我们什么。 如果我们从因子 1 开始,我们会看到两个相关的明显变量是压力测量。 虽然其他两个变量与压缩机有关——因为压缩机的工作是增加系统的压力——这两个变量也必须与系统的压力有关。 这意味着我们这里的每个显性变量都是潜在因素 1(压力)的指标。
查看因子 2,可以发现类似的关系。 这里的每个明显变量都以某种方式与温度相关:汽提塔温度、蒸汽流量变量以及与压缩机工作的轻微相关性,这将为系统增加一些能量。 因此,潜在因子2必定与系统温度有关。
任何熟悉化学工程系统的人都会知道,温度和压力对于任何工业过程都至关重要,并且两者密切相关。 同样,对于真实系统中发生的情况,这是一个需要了解的重要关系,因此在构建 SEM 时也可能很重要。
结论
通过执行探索性数据分析JMP专业版在构建 SEM 之前,我们已经设法确定系统中的关键关系和因素。 这些初步发现为 SEM 的开发和比较提供了明确的范围。
下个月,我将为系统构建 SEM,并用它来尝试检测系统中何时何地发生故障。
@马克沙尔我也有同样的想法! SEM 似乎是一种非常有前途的方法,可以为像这样的复杂系统创建简单模型。 虽然存在一些缺点,但我希望在下一篇文章中强调 SEM 在控制系统方面的一些优点和缺点。 尽管如此,当将 SEM 应用于这些类型的数据时,时间序列的概念和时间序列点之间的相关性提出了一个有趣的问题。
期待您的下一篇文章! 我在石化行业工作。 使用著名的 TEP 数据集是一个不错的选择。 几年前,当我第一次了解 SEM 时,我想到的第一个应用是“SEM 应该能够告诉我我的反应器是否有问题”。 我不必查看 10 个测量值的时间序列。
不久前我偶然发现了 SEM,并开始着迷,试图找到一些工程应用的例子。这是一项非常有见地的工作。虽然它在露天采矿岩土力学中的应用需要更多的评估工作(如果我错了,请纠正我,因为我才刚刚开始探索它),但它让我对 SEM 的用处有了不少了解,例如岩土工程建模,其中的落石跟踪显示落石的起点和终点、落石距离和频率。
@jordanwalters我对 SEM 的构造特别感兴趣,但我在这篇文章中找不到它。您能给我指出正确的方向或分享您可能拥有的有关此主题的任何资源吗?我将不胜感激。