使用 CNN 预测造纸机中的断纸
预测造纸机中的断纸 使用 CNN 的
使用图像分类来预测即将发生的过程故障
介绍
本文演示了使用 CNN(卷积神经网络)来预测使用真实世界数据集的造纸机中即将发生的过程故障。
这是通过将表示几个连续时间片的数据样本排列成一幅图像来完成的,该图像是过去和当前状态的快照。如果故障前的条件与正常操作不同,则该条件的图像可以警告即将发生的故障。目的不是将故障与正常操作进行分类,而是将运行状态分类为正常或即将发生故障的警告。
图像构建、模型性能和洞察力通过跨越一个月的过程数据的几个图表进行了讨论。
为什么要这样做?
工业系统在过程控制上运行。这些使系统在参数范围内运行。然而,系统关闭了。排除人工停机或设备故障等其他因素,仍然会发生故障。识别即将发生的故障可以让操作人员有时间防止出现故障。此外,以这种方式分析过程可以深入了解为什么或哪些事件组合会导致不安,并提供调整控制系统的机会。
数据集
本文中使用的数据来自 ProcessMiner Inc.,可以通过论文中的下载请求表链接找到“ 多元时间序列中的罕见事件分类 ” [1],经许可使用。
该数据集涵盖了造纸机大约一个月的运行时间,每两分钟记录一次样本。这些特征没有用特定的过程变量名称来标识,并且数据可能已针对 IP 目的进行了调整。有一个分类特征似乎将数据分成八个离散的操作场景,这些场景可能与纸张的类型或重量或其他一些参数有关。我从该特征中选择了构成 36% 数据的最频繁子集(其中特征 X28 为 96),并通过数据分析和使用特征和排列重要性减少了特征的数量。了解具体特征可以改进这一步。本文中的图表来自性能最佳的模型和特征子集,并与其他版本的结果进行了一些比较。
断纸和功能 X28 如下所示。断纸是时间上的垂直线。蓝线是功能 X28。如箭头所示,值 96 出现在月初、月中和月末。
Image by Author
更多数据和对每个特征背后含义的了解可能会产生更好的模型,该模型也可以逐月使用新数据进行改进。可以使用更多数据构建其他 X28 值的单独模型,或者可以通过具有专家过程知识的特征转换来包含这些样本。
该数据集仅每两分钟记录一次过程值。原始原始数据可能在时间上更详细。不同或多个时间间隔可以与其他数据集一起使用,以获得洞察力或提供短期或长期预测。
制作一个图像需要六个样本,因此在中断之间少于 6 个样本的任何数据都被消除了。
将数据转换为图像
数据从正常和断纸的 0 和 1 重新标记为正常的 0、警告的 1 和断纸的 2。每次断纸前的五个样本都设置为标签 1。
过程测量值随时间产生两个导数,并作为新数据表保存在内存中。这给出了过程测量的变化率作为相对于位置的“速度”和相对于速度的“加速度”。我的想法是,即使特征值在设定点范围内,当变化率很高时,这些衍生样本也可能表明纸张中断。
然后将三个数据表在 0 到 1 的范围内缩放,并将 6 个数据周期分配给覆盖 12 分钟周期的图像。每个连续图像与前一个图像重叠 5 个时间段。每个图像都按该图像中最后一个时间片对应的标签进行分类:正常、警告或断纸。
图像构建在 3 层中,过程变量值或“位置”作为第一层。过程值或“速度”的导数是第二层,第三层是“加速度”值。
一旦故障时间片位于图像的最后一行,该过程通过构建下一个图像来重复,从前一个故障时间片之后的接下来的 6 个时间段开始。
下图显示了从导致断纸的数据集构建的十二个连续图像以及代表重新启动机器后的情况的最后一张图像。每个图像中都可以看到控制点或测量点值(位置)、“速度”和“加速度”带。图像顺序从左到右逐行排列,左上为第一张,右下为最后一张。左边的数字是每个图像中最后一次样本对应的原始法线 (0) 和断纸 (1) 标签。右边的数字是调整后的标签,带有正常(0)、警告(1)和断纸(2)。前五个图像正常运行 (00)。接下来的五个是实际断纸之前五个样本的警告条件(01)。接下来是断纸 (12),然后是正常重启 (00)。所有 6168 个样本都是以这种方式创建的。
5 normal images, then 5 warning images, the paper break image, and a restart image
Image by Author
楷模
我使用三个不同的图像集训练了三个独立的模型。这些模型在为图像构建选择的特征上有所不同。 EDA / Position Feature Importance 模型在仅离散样本上的原始位置值的随机森林模型上使用特征重要性(不使用具有堆叠样本的图像)。这是我使用的第一个模型/功能列表。特征
Sample Performance (Chart 3 Below) — Image by Author
训练
训练类似于原型 CNN 模型。我使用了一个带有两个序列的 CNN 模型 二维卷积 , 二 最大池化 , 和一个 展平层 喂一个 三层 128–64–3 网络与 退出 .我没有对正常班级进行抽样,以保持正常情况“看起来”的尽可能多的可变性。因此,初始精度高。详细信息可以在 Github 上找到 这里 .
Feature Importance Model Training, Image by Author
结果
由于数据集中的不平衡,我将自定义分类器应用于模型概率预测 (predict_proba),而不是使用标准 argmax 预测。大部分图像(约 94%)来自普通类,警告和断纸图像分别占约 5% 和 1%。如果预测的类概率低于数据集中该类的频率,则自定义分类器会消除该类。例如,如果警告和断纸概率分别为 8% 和 3%,则正常概率将为 89%,然后被排除。预测是剩余两个概率的 argmax,将是一个警告。自定义分类器混淆矩阵在左侧,标准 argmax 预测在右侧。显示了三种不同模型的结果。
Image by Author
与 Argmax 相比,自定义分类器在警告状态上的真阳性率更高,但假阳性率更高,根据模型预测正常状态条件下的警告的频率高出 4 到 9 倍。
目标是在论文中断之前预测它,以便有时间进行干预。因此,自定义分类器(调整预测)更高的真阳性性能在这个阶段很有吸引力,即使以更高的假阳性警告状态为代价。尽管我们希望减少生产模型中误报(滋扰警报)的数量,但这并不是处于那种状态。在这种情况下,可能从错误警告中学到很多东西,而不是仅仅跳到前面并采用具有标准 Argmax 分类的特征重要性模型的低错误警告。请参阅下面使用相同型号的两个图表。这首先使用自定义分类器,第二个使用标准 Argmax 选择。 Argmax 忽略了进程似乎不稳定并最终出现断纸(用圆圈突出显示)并避免“错误警告”并错过许多命名警告的时间,而自定义分类器显示几乎所有警告。这些样品与在长时间稳定运行后断纸之前的样品之间的真正区别是什么?
Possible Unstable Operation Custom Classifier Shows Warnings — Image by Author
Possible Unstable Operation, Argmax Classifier Shows Few Warnings — Image by Author
查看混淆矩阵和下面图表的结果,我发现这些模型和数据集可能会发生三件事。
首先,模型可能表现不佳。
其次,请记住原始数据只有正常和断纸类。我在论文休息前随意选择了五个样本作为警告类。可能有许多“正常”样本,其中过程状态类似于故障前条件,并且某些警告误报实际上是系统接近断纸但恢复到正常运行水平而不会发生休息。这将是有见地的,并且可能是获得最高价值的地方。例如,与操作一起探索实际故障前样本和其他“正常”样本的相似性,或者了解特征的变化率是否更能表明问题,即使特征值在设定点限制内。数据集的特征是匿名的,在不知道这些特征并且不是造纸机专家的情况下,对我的结果的解释是有限的。通过良好的迭代实践了解实际特征并与领域专家(即造纸机专家)一起审查将确认见解或识别建模问题。
具有误报的初始模型对于理解过程或过程控制系统中的细微差别很有价值。换句话说,即使一个样本被标记为正常,并不意味着它没有运行接近或趋向于断纸(或其他系统中的过程故障)。
第三,我标记警告状态的方式可能存在偏见,导致更高的误报。我在实际休息前选择了 5 个时间段(10 分钟),将其标记为警告,以便为时间干预提供一些实用性。造纸机中的情况可能会更快地发展为断纸,因此在一些或所有断纸之前的 2 或 3 个警告状态可能并不代表过程偏差。因此,当数据完全正常时将数据标记为警告状态可能会导致模型预测小的过程偏差作为即将发生断纸的证据和/或降低测试集中预测警告的性能。在断纸之前减少警告状态的数量可能会改进模型,但也会减少干预以防止断纸的时间。
图表
我已经包含了几个图表来概述模型的表现以及数据中的不同时期如何表现为平稳运行的机器或有点不稳定的机器,有时在启动后。图表来自使用从特征重要性派生的特征构建的模型,该模型使用调整后的预测器在具有位置和两个导数的样本上运行(根据类概率和样本集中该类的频率进行分类)。更多图表在我的 Github 上的 Jupyter Notebooks 中。
这些图表显示了按样本的日期和时间绘制在一起的测试和训练结果(通过最终模型运行训练集)。我以这种方式呈现它们是因为按样本连续排序的训练集和测试集的图没有显示整个月的性能变化,因为样本被打乱了。此外,测试集和训练集按时间分开的图与测试集或训练集中的缺失数据存在差距。
这些地块有两条轨迹。上轨道具有模型的预测类别、正常 (0)、警告 (1) 和断纸 (2)。这条轨道还有实际的警告标签,如圆圈,纸折断为菱形。测试预测是蓝点,训练预测是蓝色 X。使用更短的时间间隔,很容易看出预测和实际值在哪里对齐。
较低的轨道具有为测试和训练预测绘制的类别概率(0 到 1)。这里测试结果是点,训练结果是 X。按类别划分的概率是绿色表示正常,黄色表示警告,红色表示断纸(也标记为故障)。
图表 1 显示了样本子集在一个月内的分布,该数据子集中有 58 篇论文中断。
Chart 1 — Image by Author
图 2 是 5 月 5 日 13:00 至 17:30 的 4–1/2 小时运行时段。这显示了低于 94% 的正常概率的小幅下降如何伴随着高于其在数据中出现频率的警告概率,从而产生警告预测。有几个“错误”警告可能是由于不规则的操作条件造成的。这些高度“错误”警告的时期往往更频繁地发生在断纸附近或从启动到断纸的运行时间很短的时候。图表中的两个中断被预测为警告与中断。
Chart 2 — Image by Author
图 3 有 68 分钟的缺失数据。机器似乎一直在运行,直到 23:00 断纸。这个区间的错误警告比上面的图表 2 少得多。
Chart 3 — Image by Author
图 4 显示了大约 28 小时的平稳运行时间。在机器重新启动后(左侧)和每月 14 日 15:00 左右的断纸前,错误警告更加频繁。
Chart 4 — Image by Author
图 5 显示了在图 6 之前的 11 小时干净运行时间。
Chart 5 — Image by Author
图 6 在时间上紧随上面的图 5,并显示了模型在断纸之前始终如一地预测警告。
Chart 6 — Image by Author
图 6a 是基础模型(EDA/位置特征重要性模型)的相应结果。该模型使用了不同的特征,并且比上面的特征重要性模型(在特征选择中使用位置、速度和加速度)具有更多的“错误警告”。这些具有不同特征的错误警告可能有价值,但需要了解这些特征来确定洞察力和较差的模型性能之间的差异。
Chart 6a — Image by Author
回顾
目标不是将断纸与正常操作条件进行分类,因为在断纸发生后识别断纸并没有任何操作优势。识别可能导致断纸的操作条件变化可能对操作员干预、改进过程控制逻辑或了解多个过程测量中同时变化的二阶或复合效应具有价值。
这项工作表明,CNN 模型可用于预测或警告现实世界数据集上即将发生的过程故障。该模型可以通过更多数据和有关产生数据的实际造纸机的知识来改进。这种方法可以用于其他过程,不一定作为控制系统,而是探索扰动和微调系统。
这不是一个生产级模型,其中最小化错误警告很重要。挖掘误报是已恢复的偏差案例的可能性(如上所述)是开发生产模型所需的迭代方法的一部分,其中包括在流程设计和操作中咨询主题专家。模型不是一步训练和部署的。可以通过多学科方法获得洞察力,以了解模型是否不好,或者模型是否在告诉您某些内容并使用它来改进模型或了解工业流程。
我欢迎你的意见。
特别感谢
特别感谢 ProcessMiner Inc. 的科学总监 Chitta Ranjan,他慷慨地允许我发表这篇文章并分享我的方法和结果。
相关文章
这是一篇原型文章的扩展,在该文章中我创建了一个合成数据集,并在代表正常条件和故障前时间片作为警告状态的图像上训练了一个 CNN 图像分类模型。
[
CNN 预测过程故障
原型 - 在单个图像中堆叠多个时间片并分类:正常、警告或失败
向datascience.com
](/cnns-to-predict-process-failures-28c17e5fd6c2)
参考
[1]Chitta Ranjan、Markku Mustonen、Kamran Paynabar、Karim Pourak,“ 多元时间序列中的罕见事件分类 ”, 2018, arXiv:1809.10717, 数据集经许可使用。
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明