本教程的重点是监控机器的状态信息,以及识别和预测故障状态的问题。
数据是通过虚构的模拟创建的,由几个随时间测量的串联序列组成。 每条记录都是机器的快照报告,包括以下字段:
Time
。 整数。Power
。 整数。Temperature
。 整数。Pressure
.0
(如果正常) ,1
表示瞬时压力警告。Uptime
。 自上次服务以来经过的时间。Status
。 通常为0
,如果发生错误 (101
,202
或303
) ,那么将更改为错误代码。Outcome
。 此时间序列中显示的错误代码,如果未发生错误,那么为0
。 (提供这些代码唯一的好处是可在事后了解出现的错误。)
通常,大多数数据挖掘工程都会经历以下过程:
- 检查数据,确定哪些属性可能与预测或识别相关状态有关。
- 保留这些属性(如果已存在),或者在必要时导出这些属性并将其添加到数据中。
- 使用结果数据训练规则和神经网络。
- 使用独立的测试数据对训练有素的系统进行测试。
试用教程
在本教程中,您将完成这些任务:
建模流程和数据集样本
本教程使用示例项目中的状态监测流程。 使用的数据文件是cond1n.csv。 下图显示了建模流程示例。

如下图所示,每个时间序列都有一系列正常运行期间的记录,以及故障发生前的记录:

任务 1:打开示例项目
任务 2:检查数据资产
状态监测建模流程包括几个节点。 按照以下步骤检查数据资产节点:
- 从 "资产"选项卡打开 "状态监测"建模流程,等待画布加载。
- 双击cond1n.csv节点。 该节点是数据资产节点,指向项目中的cond1n.csv文件。
- 查看文件格式属性。
- 从调板的 "记录操作"部分,将 "选择"节点拖到画布上。 将鼠标悬停在节点上,单击 "编辑标题",然后将其重命名为 "
Select (101)
。 将其连接到cond1n.csv数据资产节点。 双击选择节点,为条件输入值 "Outcome == 101
。 - 单击保存。
- 然后,从调色板的 "图形"部分,将 "绘图"节点拖到画布上。 将鼠标悬停在节点上,单击 "编辑标题"按钮,将其重命名为 "时间 v。 Powerv. 温度 (101). 然后,将其连接到 "选择"节点。
- 双击绘图节点,然后单击3-D 图形按钮,为绘图添加第三个坐标轴。 从列表中选择要在三维图形上显示的字段。 本例中为:"
Time
、"Power
"和 "Temperature
。 - 将鼠标悬停在 "情节节点上,然后点击 "运行图标 "
。
- 在 "输出和模型"窗格中,点击名称为 "的输出结果。 Powerv. 温度 (101),查看结果。
图 3。 时间 v. Powerv. 温度图表 该图显示了温度上升和功率波动随时间变化而产生的 101 个误差。 尝试选择其他误差条件并显示其他图表。
根据这些图表,温度和功率变化的存在和变化率,以及波动的存在和程度,都与预测和区分故障有关。 这些属性可以在应用学习系统之前添加到数据中。
- 可选:删除 "选择"和"绘图"节点,以避免用户稍后运行流程时出现潜在错误。
检查您的进度
下图说明了该流。 现在您可以准备数据了。

任务 3:准备数据
基于探索数据的结果,以下流派生相关数据并学习预测故障。
本示例使用的流程名为 "状态监测",可在产品随附的示例项目中找到。 数据文件为 cond1n.csv 和 cond2n.csv。
- “数据资产”导入节点。 读取数据文件 cond1n.csv。
- 压力警报(派生)。 对瞬时压力警报数进行计数。 当时间返回到 0 时重置。
- TempInc(派生)。 使用 "
@DIFF1
计算瞬时温度变化率。 - PowerInc(派生)。 使用 "
@DIFF1
计算瞬时功率变化率。 - PowerFlux(派生)。 这是一个标志,如果在上一个记录和本记录中功率按相反的方向变化(即功率的峰值或波谷值),则此值为真。
- PowerState(派生)。 开始时为 "
Stable
,当检测到两个连续的功率通量时切换为 "Fluctuating
。 Switches back toStable
only when there is no power flux for five time intervals or whenTime
is reset. - PowerChange(派生)。
PowerInc
在过去五个时间区间的平均值。 - TempChange(派生)。
TempInc
在过去五个时间区间的平均值。 - Discard Initial(选择)。 丢弃每个时间序列的第一条记录,以避免 "
Power
和 "Temperature
在边界处出现较大(不正确)的跳变。 - 废弃字段(过滤)。 将记录缩减为 "
Uptime
"、"Status
"、"Outcome
"、"Pressure Warnings
"、"PowerState
"、"PowerChange
"和 "TempChange
"。 - 类型. 将 "
Outcome
定义为目标(要预测的字段)。 此外,将 "Outcome
定义为名义测量级别,"Pressure Warnings
定义为连续测量级别,"PowerState
定义为标志测量级别。
检查您的进度
下图显示了Derive节点。 现在您可以训练模型了。

任务 4:训练模型
运行该流程将训练 C5.0 规则和神经网络(网络)。 网络的训练可能需要一些时间,但可以提前中断训练,以保存能产生合理结果的网络。 学习完成后,会生成模型块:一个代表神经网络,一个代表规则。

通过这些模型块,您可以测试系统或导出模型结果。 在本例中,您要测试模型的结果。 请按照以下步骤训练模型:
- 单击全部运行,生成C5.0和神经网络模型。
- 查看每个模型。 双击结果(C5.0)模型,然后单击 "查看模型"检查结果。 对结果(神经网络)模型重复此步骤。
检查您的进度
下图显示了模型结果。 现在可以测试模型了。

任务 5:测试模型
请按照以下步骤测试模型:
- Reposition the nuggets, so that the 类型 node connects to the 神经网 nugget, which connects to the C5.0 nugget.
- 从调色板的 "输出"部分,将 "分析"节点拖到画布上,并将其连接到C5.0图元。
- 双击数据资产节点。
- 单击更改数据资产。
- 选择数据资产 >cond2n.csv。
- 单击选择。
- 单击保存。
- 将鼠标悬停在分析节点上,点击运行图标 "
。 这将生成可反映经过训练的网络和规则的准确性的图表。
- 在 "输出和模型"窗格中,单击名称为 "分析 "的输出结果以查看结果。
- 查看结果并比较每个模型的分析。
图 5. 查看输出:结果]分析
检查您的进度
下图显示了已完成的流程。

目录
该示例向您展示了如何监控机器的状态信息,因为这与识别和预测故障状态的问题有关。 您使用了一系列衍生节点来准备数据,然后建立了一个C5.0模型。
后续步骤
现在您可以尝试其他SPSS® Modeler教程了。