扬声器 | 成绩单 |
| 安德里亚·库姆斯,JMP | 大家好,我叫 Andrea Coombs,是 JMP 的一名系统工程师。 所以今天我要讲述我在这个行业工作时的故事,特别是在制药行业。 |
| 因此,这就是我今天要简要介绍的内容。 |
| 有意义的应对策略 |
| 制造中的实时生产数据……在疫苗制造中。 在那次演讲中,我讨论了处理弯曲数据的方法 |
| 我们从生产车间的传感器实时获取信息。 |
| 今天,我想谈谈我们在 JMP 中拥有的一些新工具,特别是功能数据浏览器,以及它如何使所有这些工作变得轻而易举。 |
| 我将探讨使用功能数据浏览器进行流程理解、流程优化和流程监控的方法。 |
| 因此,让我们首先谈谈我们正在处理的过程和曲线。 所以在左边,我们有一个假设的疫苗制造过程的例子。 它从材料准备开始。 |
| 在这种情况下,我们分两个阶段进行细菌发酵,然后过滤、吸收和收获产品, |
| 然后在下游将产品离心,最后,将多个子批次的材料一起配制成一批材料。 |
| 今天我将重点关注这个过程的发酵阶段。 |
| 所以当细菌发酵时,它们正在生长,生长曲线看起来像右边的东西。 所以在生长过程中,有一个滞后阶段,一个指数增长阶段,一个稳定阶段,最后是一个对数死亡阶段。 |
| 当我在这家公司时,我们正在经历过程的演变……在过程理解下,特别是围绕这些增长曲线。 |
| 所以我们很早就开始了,只从这两个发酵阶段采集了五个样本,将这些样本发送到……QC 实验室并等待结果。 我们得到了 |
| 光密度,这样我们就可以知道这些样本中的细胞密度,我们得到的结果看起来就像你在右边看到的那样。 |
| 我们在那些特定的时间点有一个结果分布,但我们真的不知道增长曲线是什么样的。 它们可能看起来像我在下面的那些分布上绘制的任何曲线。 我们只是真的不知道。 |
| 但后来我们实施了内联探测器,所以我们实施了浊度探测器,这样我们就可以真正看到那些增长曲线是什么样子的。 然而,我们不得不穿上礼服进入制造车间 |
| 手动下载数据,将其带回我们的办公桌,然后尝试弄清楚我们将如何处理所有这些数据。 |
| 然后,最后,我们将 PLC 升级到现在我们可以在办公桌上获得来自所有传感器的所有数据,而无需穿上防护服并返回……并返回制造;我们有所有的数据 |
| 触手可及,这太棒了。 但是通过仔细的分析,我们能够确定我们的数据太多了,我们有很多数据要处理。 |
| 所以这就是为什么... |
| 所以这就是为什么我做了这个关于理解实时数据的应对策略的演讲。 |
| 我们投入了大量工作来理解我们的数据,我想分享一些您可以采取的策略来理解您的实时数据。 |
| 我谈到的第一件事是参数化这些增长曲线。 所以我们有这些曲线,但我们希望能够看看增长和 |
| 了解发生了什么,所以我们将它们参数化。 换句话说,我们采用了生长的斜率、死亡率的斜率,我们正在观察细菌在每个阶段的持续时间。 我们在看 |
| 某些时间点的浑浊度,现在我们收集了大量这些增长……我们称之为增长变量。 |
| 这些增长变量对我们非常有用。 我们将它们用于流程理解、流程优化和流程监控。 |
| 现在我谈到的第二组应对策略就是处理所有这些实时数据 |
| 我们有。 因此,当然,一旦我们开始发现所有这些数据都很有用,我们就希望立即访问它。 |
| 所以我们必须弄清楚的第一件事是我们所有的数据源,并确保我们可以访问我们拥有的一切,不仅是我们的历史学家的数据,而且我们有我们的数据 |
| ERP系统,在我们的实验室信息管理系统中。 我们必须将所有数据集中到一个地方。 我们使用了一个超级日志,所以这是访问我们所有数据和运行所有脚本的命令中心。 |
| 我们确实做了很多工作。 我们为自己感到骄傲,但事后看来, |
| 了解我们在 JMP 中拥有哪些工具,特别是现在使用 JMP 16,有几件事可以使这项工作变得容易得多。 |
| 有了增长曲线,我们可以使用功能数据浏览器来分析我们的曲线。 我们不必参数化它们, |
| 我们留下了很多数据。 我们可以使用功能数据浏览器中的所有数据。 然后,当然,增强日志中的操作记录, |
| 这将使编写脚本的工作变得容易得多。 但今天我只想关注我将如何使用功能数据浏览器。 |
| 当然,我无法再访问该数据,所以我模拟了一些增长曲线。 在这里,我有 20 条不同的曲线,它们代表了您在细菌发酵过程中可以看到的一些变化。 |
| 而使用功能数据浏览器,它真的可以归结为这四个步骤。 第一件事是你要收集你的曲线 |
| 并且您将平滑所有单独的曲线。 第二步是确定描述您在这些曲线中看到的所有可变性的平均形状和形状分量。 |
| 下一步是提取每条曲线的形状分量的大小。 |
| 一旦你有了这两个形状成分,它们实际上就被称为功能主成分, |
| 然后你可以使用它们来分析你的数据,你的曲线是否是模型的输入,如果它们是模型的输出,如果你想做聚类分析。 |
| 实际上,您现在可以使用这些功能主成分进行任何类型的分析。 在今天的例子中,我所有的曲线都是模型的输出,所以我将使用功能性 DOE |
| 仔细看看这些曲线。 那么让我们进入 JMP。 |
| 这里有我的数据表,其中有批号,有浊度时间,它们构成了曲线。 |
| 而且我还有一堆工艺参数。 我要做的第一件事是,我想做一些工艺了解,看看这些工艺参数是否 |
| 正在影响我在曲线中看到的可变性。 因此,让我们进入功能数据浏览器。 我们将时间作为我们的 X,浊度是我们的 Y。 我们将放入我们的 ID 函数,然后我们将获取所有这些过程参数并将它们作为补充变量输入。 |
| 现在,我们需要做的第一步是,我们需要使灵活的模型适合我们所有的曲线,我将使用定向...直接功能 PCA 来做到这一点。 |
| 这是那些灵活的模型。 JMP 已经为我完成的第二步是确定平均曲线 |
| 和我们的形状组件。 JMP 为我确定了六种不同的形状成分。 在左边这里,我可以看到那六个不同的形状组件。 |
| 这是这些形状组件在我的数据中解释的累积变异量。 |
| 你可以看到,仅使用前两个形状组件,我已经描述了曲线中 92% 的可变性,这很棒。 |
| 剩下的形状成分在这里,我将排除在外,因为它们可能只是在解释我数据中的随机变化。 因此,让我们继续将我们的 FPC 数量自定义为两个,我只剩下这两个形状组件。 |
| 现在,下一步是确定每条曲线的每个形状分量的大小,我将它们放在我的分数图中。 |
| 在 X 轴上,我有形状组件 1,在 Y 轴上,我有形状组件 2。 |
| 下面我有一个分析器,我可以在其中查看我的曲线,我在此处以黄色突出显示,您可以看到第一个形状组件如何影响曲线的形状, |
| 主要是曲线的生长期,第二个形状分量主要影响曲线的死亡阶段。 |
| 让我们仔细看看其中的几个批次。 让我们来看看第 15 批。 这是第 15 批次的曲线,我们可以看到形状分量 1 的大小和形状分量 2 的大小。 我可以将这些直接输入到我的分析器中。 |
| 现在您可以看到我能够重现第 15 批次的曲线。 让我们再看一个。 让我们看一下第 2 批次,您可以看到它与第 15 批次相比看起来非常不同,而且形状……形状组件的大小也非常不同。 那么让我们 |
| 看看那些。 |
| 你现在可以看到我们已经......我们也能够复制该曲线。 |
| 因此,知道平均形状,即表示曲线周围可变性的两个形状分量,我们现在可以使用这些形状分量的这些大小来进行分析。 |
| 我们可以做...当您的曲线是模型中的响应时,您可以在功能数据浏览器中进行分析。 |
| 所以在下面,我有一个新的分析器。 这一次在我的分析器中,我有...我再次有了我的曲线,我将再次以黄色突出显示。 |
| 然后我有 pH、温度、压力和混合速度参数。 你可以在这里看到混合速度,它非常平坦,所以它不会影响那个形状。 |
| 压力也一样,但是当我开始观察温度时,你可以看到它改变了我的曲线形状,主要是曲线的增长阶段。 当我改变 pH 值时,它主要影响曲线的那个阶段。 |
| 这就是我为理解流程而采用的方法。 那么,流程优化呢? 通过流程优化,我的意思是, |
| 你知道,如果有一条我们想要标准化的特定曲线,为了获得所需的曲线,我们需要多少 pH 值和温度? 嗯,你需要做的第一件事是你需要定义什么 |
| 所需的曲线看起来像。 我的数据表底部只有几个数据点,它们描述了我正在寻找的形状,你会在我的... |
| 在图形生成器中。 在这种情况下,我有兴趣得到一条曲线,在该曲线上我的增长率非常快,然后崩溃率非常慢。 |
| 这真的很容易添加到功能数据浏览器中。 我们只需要多做一步;我会回忆起我之前的所作所为。 |
| 一个额外的步骤是加载目标函数,确定哪个 |
| 函数代表我们的目标。 我现在所做的就是复制我以前做过的事情。 我会做我的直接功能 PCA。 |
| 我要将我的 FPC 自定义为 2 个,这......这些结果正是我们之前看到的,然后我将开始做我的功能性 DOE。 |
| 再一次,我将在这里突出显示我的曲线。 既然已经确定了目标曲线,我就可以最大限度地提高合意性,换句话说,我可以找到 pH 值和温度的设定点 |
| 压力和混合速度会给我一条看起来最像目标曲线的曲线。 所以有 |
| 确实增长速度快,崩溃速度慢。 我只需要 |
| 从 pH 值为 7.2 的介质开始,并在我的发酵罐上使用 37.9 的温度。 这就是我用于流程理解和流程优化的方法。 |
| 当我们谈论增长曲线或曲线形状的过程监控时,有一些不同的选择,我在这里有几个不同的想法。 |
| 如果这是您想做的事情,我强烈建议您查看这个 2020 年的演示文稿,即具有函数形式的过程变量的统计过程控制。 |
| 这是一个录制的演示文稿,它真的很棒。 他们讨论了采用这些功能性主成分并将它们放入模型驱动的多元控制图中。 |
| 他们做了一个很好的演示……演示了这一点,然后还谈到了采用这种方法的一些可能的缺点。 |
| 因此,我想讨论您可能想要考虑的另一种方法,即查看与标准的集成差异。 |
| 所以就像以前一样,当我们查看该目标曲线时,您可以将该目标曲线用作标准,然后对于每个批次,计算与该标准的差异。 例如,在这里我有 |
| 此处以蓝色表示的一批曲线……或者抱歉,以红色表示。 标准曲线是蓝色的,我正在计算差异,这里的差异在下面的这条绿色曲线上。 |
| 您可以对该曲线进行积分以找到曲线下的面积,然后您可以在统计过程控制程序中使用它。 我只是想快速带你完成如何做到这一点的步骤。 |
| 所以这是我的时间和我的标准浊度值,我的第一批浊度,我刚刚计算了这两者之间的差异。 然后你能做的就是你能 |
| 使用 X 拟合 Y 为该差异随时间构建样条模型,然后您可以将该模型的系数保存到数据表中。 |
| 您将获得 X 值和可用于构建样条模型的四个系数。 这是构建样条模型的公式, |
| 然后你整合这个公式。 所以你可以通过脚本来完成,我选择在公式编辑器中完成。 所以我刚刚通过手动整合前面的公式来确定这里曲线的每个切片的面积。 |
| 所以一旦我有了这些区域切片,然后我只需要将我感兴趣的区域相加。 所以我可以做总曲线的面积。 |
| 我也可以只针对生长期和死亡阶段进行操作,我已经在此处完成了 |
| 在我的表变量中。 所以我现在有一个变量来表示我的总综合差异,我在生长期的综合差异,以及我在死亡阶段的综合差异。 |
| 从本质上讲,您只需对每个批次进行检查并执行此操作。 我已经为所有 20 个批次完成了此操作,现在您可以对这些变量进行统计过程控制。 |
| 因此,这些是我使用功能数据浏览器查看流程监控以及流程理解和流程优化的方法。 我希望你检查一下,这对你来说也是小菜一碟。 谢谢你。 |