如何在模型中正确考虑事件?大家好,
我想就建模向你咨询一下。
我有一个进程,其响应为 Y,参数为 X1、X2、X3 等。
这个过程的分析持续了 3 年之久。现在我想收集所有数据来对整个过程进行分析。问题是与这个过程相关的机器在这 3 年中经历了一些变化,甚至出现了一些危险。它们在特定日期都被确定为 Evt_A、Evt_B、Evt_C。为了对 Y 进行良好的建模,我想不仅考虑参数 X1、X2、X3 等,还考虑事件 A、B、C 等,以了解它们是否具有实际影响并量化它们的影响。目前,我将事件作为分类列引入,值为 -1 和 +1,-1 表示“事件前”,+1 表示“事件后”。
我问自己以下问题:
1. 这是唯一的办法吗?
2. 这是正确的做法吗?
3. 如何在“拟合模型”平台中正确引入这些事件?我应该使用特定属性吗?是否可以进行交互?
我提前感谢您给予我的所有帮助。
真挚地,
史蒂芬·乔治
消费者和市场研究质量与工艺工程可靠性分析回复:如何在模型中正确考虑事件?我的一个问题是这些事件是否都是不同的,或者它们是否可以聚合?就个人而言,我会将事件编码为 (0,1),如果可以将它们视为相同,则可以将事件简化为单个变量,指示它是否是事件时间。如果它们都不同,那么我怀疑每个事件都需要不同的指标变量。另一个问题是事件是否仅限于它发生的时间,或者事件时间之前或之后的时间段是否会受到事件的影响。换句话说,如果与事件时间的接近很重要,那么我将根据它们与事件时间的距离来编码所有时间段(例如 -3、-2、-1、0、1、2、3) .如果您可以提供有关事件性质及其影响的更多详细信息,那么我认为讨论适当的建模选择会更容易。我使用了事件分析——但应用于监管事件而不是机器事件。在这种情况下,重要的是不要过分关注实际事件时间,因为监管“事件”通常在很大程度上是可以预料的。当无法预见的政治“事件”发生时,指标变量方法更有意义。我怀疑机器事件更加离散,但这仍然取决于这些“事件”的性质。
回复:如何在模型中正确考虑事件?嗨,戴尔,
谢谢您的回答。 我会尝试更明确。
我有一个我正在尝试建模的激光焊接工艺。 在过去的 3 年中,我在我们的机器上使用各种等级和厚度的材料进行了超过 25 次 DoE。 我收集了所有这些知识和经验,以便创建焊接模型来正确预设机器。
在这 3 年中,这台机器在技术上继续小步发展。 在不同的时间,已经发生了变化(例如设计),可能会影响(或不影响)激光焊接现象。 因此,并非所有测试都是在相同条件下进行的。 我想考虑它们以评估它们的影响,并尽可能地消除它们,以便回到纯焊接参数的影响。 因此,即使事件是准时的,它们的影响也会在时间上持续存在。 这就是为什么我在谈论之前和之后。 我同意以 0/1 形式考虑效果(0:效果不存在,1:效果存在)。
因此,及时我们可以:
.....................T1....................... T2………………………………………………………………………………………………………………………………
-------------------------------------------------- -------------------------------------------
答:000000000000111111111111111111111111111111111111111
B: 0000000000000000000000000011111111111111111111111
在 T1 之前,测试独立于事件 A 和 B 的影响。 在 T1 之后,测试中必须考虑事件 A 的影响 在 T1 和 T2 日期之后,必须考虑 A 和 B 的影响。 日期本身并不重要,我感兴趣并想评估的是 A、B 等的影响。
回复:如何在模型中正确考虑事件?如果事件在某种意义上“相等”,我会简单地记录在每个时间点应用的事件数量。然而,似乎每个事件都有其独特的特征。这意味着您需要一个更复杂的功能来识别每个时间点出现的一系列效果。您可以通过在每个时间点连接所有 0/1 事件数据来创建这样一个变量 - 但是,我怀疑您没有足够的数据来对可能产生的大量特征进行建模。我认为减少特征数量的关键在于事件是累积的——也就是说,它们是在以前的事件之上添加的。如果您愿意只关心事件的数量(回到我的第一点),那么它只是每个时间点的事件数量。您可能能够识别出一些与其他事件不同/更重要的“关键”事件,并为这些关键事件使用指标变量 - 结合每个时间点的事件累积数量。
其他人可能对此类数据有更好的建议。我没有处理过这样的事情。
回复:如何在模型中正确考虑事件?你好@stephanegeorges ,
如果您想汇总您在此设备上收集的所有 DoE 数据,但记录机器设置的潜在变化(在 DoE/时间段之间),则可以引入一个新列,如“更改”或“设置”(默认情况下是分类的,除非您有更多信息可以通过数值连续值更准确地描述设置的变化),并且对于每个 DoE 或时间段,请指明它是在哪个条件下运行的。
示例:设置“A”(初始设备设置)时的 DoE 1 至 14,然后“B”处的 DoE 15 至 20,“C”处的 20 至 24...
我看到了两个建模/分析选项,具体取决于您希望如何在模型中设置此“更改”参数(作为固定效应或随机效应):
- 如果您只有有限的可重现更改(并且没有其他可能的未来设置更改),您可以将此新列视为分析中的固定效应。 然后你可以通过“Fit Least Squares”、“Stepwise”或“Generalized Regression”(JMP Pro)和你的其他效果来分析它,你会估计你遇到的每个级别的可能变化,所以你会能够非常精确地量化变化对响应的影响(例如,从 A 到 B 的更改设置将如何增加/减少响应)。
- 如果这些更改只是设备可能(和未来)更改的一小部分,因此您更想知道设备设置的更改是否导致方差更改,您可以将此新列视为随机通过“混合模型”或“广义混合模型”(JMP Pro) 指示此变量是随机效应来影响并分析您的结果。 然后,JMP 将为您提供 REML 分析(方差分析以了解此随机效应是否显着,即检查设置更改时方差是否有显着变化)。
这里有一个关于固定效应与随机效应的有趣讨论: https://community.jmp.com/t5/Discussions/Random-vs-Fixed-Blocking-Factor-in-DOE/td-p/461632?trMode=source
如果/需要时,这可能是在进入更复杂的建模之前进行分析的第一种方法。
我希望这会给你带来新的分析思路:)
回复:如何在模型中正确考虑事件?我的想法...
1. 为什么要对机器进行更改? 您之前的“大量”实验是否表明应该进行这些更改? 更改可以撤消吗? 这些变化是否对改变“系统”产生了足够大的影响?
2.如果这些变化确实产生了影响,那么你在变化之前形成的其他因素之间的关系可能会完全不同。 如果设计因素与所做的更改有任何相互作用,那么使用更改之前的数据可能没有用(除非您愿意改回来)。本质上,您可能已经更改了推理空间,而之前的关系可能根本没有用。 在这种情况下,继续...
3. 我可能会尝试创建一个列,对时间序列(1、2、3...)的变化进行编码并进行拟合模型经过那一栏。 这些变化的因子效应是否一致?
回复:如何在模型中正确考虑事件?嗨,戴尔,
我的事件确实不是同等重要的。 直觉上,有些可能对我的回答影响不大,而另一些则影响更大。 经过一些测试,仅考虑事件的数量并没有帮助……但这是一个很好的观点,值得测试。
谢谢你的支持。
回复:如何在模型中正确考虑事件?嗨维克多,
我最初介绍了几列,因为由于效果的累积性,我认为一列不能代表这种情况。 尽管如此,我还是按照建议进行了(使用您的符号):
DoE_01 A <= 初始情况
DoE_02 A
...
DoE_10 A
DoE_11 A+B <= B 添加(我认为效果有限但重要)
DoE_12 A+B
...
DoE_16 A+B+C <= C 添加到 A 和 B (同注)
...
我将新列作为固定效果引入并继续进行,暂时(我需要详细查看您的其他建议),使用“Fit Least Squares”进行简单分析。 使用这种技术,感兴趣的不是每个模态的值,而是 A 和 (A+B) 之间(以获得 B 的效果)之间、(A+B) 和 (A +B+C) (获得 C 的效果)等。当然,如果事件之间存在交互,则此技术不起作用(我认为没有任何作为第一个近似值)。
目前,分析器显示一致的结果:
- 响应中事件列中的 + 或 - 变化至少在物理上是可以解释的
- 控制过程的参数 X1、X2 等,针对这些小影响进行了校正,也更加一致。
这是个好消息! ......即使,我不知道,但有一些事情让我对影响的累积性质感到困扰。 我不能完全确定它,但我不确定我是否以这种方式正确地考虑到它。
尽管如此,非常感谢您的帮助。
回复:如何在模型中正确考虑事件?你好@stephanegeorges ,
如果此解决方案可以帮助您找出事件对您不同响应的可能影响,那就太好了。
第三个想法来自@statman也很有趣:如果您为在相同条件下实现的整个 DoE 数据集的每个子集分析并创建一个模型(分析使用相同设置 A 完成的响应,然后创建一个设置 A+B 的模型,然后设置 A+ B+C...),根据设置,您的因素对您的响应有相同或相似的影响吗? 估计值是否“足够接近”或者您是否在估计值中看到幅度和/或符号的变化(相反的影响取决于设置?)?
您可以将您的每个模型与具有固定效应“设置”的“大”模型进行比较,以了解这两种模型的行为方式,以及对您而言更有意义的物理方式。
最后但并非最不重要的一点是,您还可以尝试将“设置更改”建模为随机效应,您可以将其与前两种类型的模型进行比较,这应该为您提供一个很好的建模概述,了解作为第一个数据的可能性分析/发现。
玩得开心 ! 
回复:如何在模型中正确考虑事件?嗨,斯塔曼,
非常感谢您的回答。
1.关于改变,从机械的角度来看,它们是改进焊接机所必需的。 对于我最大的不幸:-),它们无法撤消。 对于某些更改,可以合理地认为它们会稍微影响流程。 挑战在于“稍微”量化这一点。
2. 我完全同意你的看法。 不幸的是,所有这些测试都很昂贵(时间和精力),考虑再次进行这些测试是不合理的。 我尽量利用可用数据尽我所能,尽量消除不良影响,以获得“错误但有用”的模型。
3. 我得试试你的建议。 非常感谢你的想法
回复:如何在模型中正确考虑事件?问题的描述与“可靠性增长”试图解决的问题惊人地相似。点击链接,查看文档中的介绍图。该图描绘了一个漫长的设计+改进+测试过程,涉及三个阶段:初始阶段、修订阶段和最终阶段。系统进行了两项设计变更:连续阶段之间的过渡点。
数据记录事件发生时间,其中示例中的事件是系统故障。因此,生成的模型可以描述各个阶段的故障率变化。
事件可以与严重程度相关联。例如,故障时的维修成本可以表示严重程度。在这种情况下,生成的模型可以描述维护成本在不同阶段的变化。
请查看该工具,并让我们知道它是否可以解决您的问题。