欢迎各位JMP社区成员,感谢你们参加本次讲座。我是Emmett George,今天和我一起的还有Martin Demel。我是Miltenyi Biotec公司的高级生物工艺工程师,公司位于马里兰州盖瑟斯堡。Martin是JMP Statistical Discovery公司的首席JMP系统工程师,公司位于德国慕尼黑。
今天,我们将介绍我们运用实验设计加速慢病毒载体生产工艺开发的方法。该方法目前已成功应用于我们位于盖瑟斯堡的工艺开发部门的多个客户项目和内部项目中,并由我们与托马斯·利特尔咨询公司合作开发。
除了介绍我们成熟的数据分析策略外,我们还将提出一些我们认为特别有帮助的补充见解。本次演讲将分为两部分。首先,对该主题进行总体介绍;其次,演示我们如何使用 JMP 软件评估实验设计。
在深入探讨之前,我想先简要介绍一下我们作为一家生物技术公司的核心竞争力。Miltenyi Bioindustry 是一家专注于细胞和基因治疗的合同研发生产机构 (CDMO),隶属于 Miltenyi Biotec 公司。除了支持客户项目外,我们还运用自身专业知识开发 CAR-T 细胞和 T 细胞受体疗法。
这使我们在符合JMP规范的慢病毒载体和细胞产品生产方面拥有丰富的实践经验。我们的慢病毒载体生产平台功能齐全。除了标准生产之外,我们的工艺开发(PD)团队还提供针对性的优化和专门的表征研究,以支持商业化进程。
我们还提供标准化的分析平台,该平台可扩展其他检测项目,并支持检测和技术转移至客户的内部细胞生产设施。我们的法规专家将在整个过程中提供指导。我们的总部位于德国贝尔吉施格拉德巴赫,拥有慢病毒载体开发和细胞处理设施。此外,我们在盖瑟斯堡、圣何塞和上海也设有生产基地。
我们在德国泰特罗的主要符合JMP标准的载体生产基地也位于此。此外,我们在美国马里兰州盖瑟斯堡也支持大规模JMP载体生产,该地同时也是我们美国工艺研发中心所在地。我们采用第三代慢病毒载体包装系统,该系统以最高安全标准为基础构建。
我们的工艺采用无血清、悬浮液法,且具有完全可扩展性,可在美国或德国生产。作为一家全球性制造商,我们拥有丰富的经验,已利用我们的平台工艺生产了数百批JMP产品。
本幻灯片概述了细胞或基因治疗产品从研发到商业化的整个生命周期。产品生命周期的第一阶段是了解产品。首先,您需要收集有关产品及其开发流程的知识。此阶段的目标是定义一套能够准确反映产品关键质量特性的质量属性。同时,您还需要考虑整个流程中的工艺参数。
产品开发生命周期的第二部分是工艺开发和工艺表征。在此过程中,将经历工艺开发和工艺表征的各个阶段,并进行多项风险评估。
接下来,我们将进入产品生命周期的第三部分——设计空间建立,最终建立控制策略和设计空间,从而确保产品的安全性和有效性。
产品生命周期的最后一个阶段,即第四阶段,是工艺性能确认(PPQ),也称为总体工艺验证阶段。然而,这不应被视为一次性的最终确认步骤。相反,它标志着我们所说的持续工艺验证(CPV)的开始,这是一项持续进行的工作,旨在确保工艺在一段时间内保持受控状态。
今天,我和马丁将重点讨论设计空间的构建、我们定义设计空间的方法,以及如何识别关键工艺参数并建立经验证的可接受范围。关键工艺参数是指其变异性会对关键质量属性产生影响的工艺参数,因此需要对其进行控制或监控,以确保工艺能够生产出所需的质量。
已验证的可接受范围是指工艺参数的一个特征范围,在该范围内操作,同时保持其他参数不变,将能够生产出符合相关质量标准的材料。我们首先来定义设计空间。如左侧示意图所示,白色区域代表合格区域,而阴影区域代表不合格区域。
虽然定义设计空间并非工艺验证的强制性要求,但监管机构强烈建议这样做。美国食品药品监督管理局(FDA)以及人用药品注册技术要求国际协调理事会(ICH)等监管机构都大力鼓励并支持这一做法。ICH 指南(例如 Q8(R2)、Q9 和 Q10)概述了设计空间的概念,这些指南分别针对药物开发、质量风险管理和药品质量体系提供了指导。
此外,FDA的工艺验证指南文件强调了理解和定义设计空间在工艺验证生命周期中的重要性。ICH Q8(修订版2)中也概述了设计空间,它是确保产品质量的输入变量的多维组合。设计空间的构建采用系统化的方法,利用实验设计和JMP软件等工具优化关键物料属性和工艺参数。
设计空间通过识别操作限制和潜在故障模式,提供灵活性和控制力,最终支持持续的高质量生产,以持续满足既定的质量标准和产品规格。
我们如何生成设计空间?首先进行低层次的风险评估,评估可能产生影响的工艺参数。我们将列出所有这些工艺参数,并将它们与特定的响应或质量属性关联起来。然后,我们评估参数变异性可能对这些响应产生的影响程度。如果某个参数被认为影响较大,或者没有先验知识表明其影响较小,则该参数的风险评分较高,例如本例中的 6 分或 9 分。
相反,那些易于理解且预期影响极小的参数会获得较低的风险评分,例如零分或三分。这有助于将无影响的参数从实验设计(DoE)研究中排除。我们将同样的原理应用于高阶项,即我们所说的二次方程中的交互项。科学认知和既往数据是决定哪些参数需要纳入研究的关键。
最终,这使我们能够制定量身定制的实验设计(DoE)。由于每个研究的模型项都需要额外的实验,因此,基于风险的知情设计有助于平衡研究范围和可行性。我们使用定制的DoE平台和JMP软件构建DoE研究。设计完成后,湿实验室进行实验并收集数据,而干实验室则建立统计模型,描述输入变量或因子与输出变量或响应之间的关系。
该模型是识别关键工艺参数的基础。关键工艺参数是指那些变化会对关键质量属性产生显著影响的参数。我们强调,仅靠风险评估不足以识别关键工艺参数,还需要通过实验设计获得可测量的数据。实验设计(DoE)显然是首选方法,因为它有助于分析和隔离每个因素及其交互作用对关键响应的影响。
为了确定关键过程参数 (CPP),我们需要检查您的缩放估计值(也称为研究中每个因素的效应量)以及上下规格限之间的容差范围。如果某个因素导致响应均值偏移超过实验设计容差范围的 20%,则该因素被视为关键因素。我再重复一遍:如果均值偏移超过容差范围的 20%(如图左下角所示),则该因素被归类为关键过程参数。
一旦确定了关键工艺参数(CPP),就可以利用设计空间来定义工艺参数范围。由于设计空间是动态的,并且对参数设置非常敏感,我们使用蒙特卡罗模拟来模拟批次间的差异,并综合所有模型的响应结果来评估其稳健性。
这些模拟考虑了三个关键的变异来源:模型不确定性、因子变异性以及残差变异(也称为均方根误差或 RMSE),后者来源于您用于测试动态实验研究响应的分析方法等因素。利用这些信息,JMP 会模拟数千次虚拟实验来评估您的工艺能力。例如,如果我们观察到缺陷率超过 33%,这显然表明需要收紧参数限制,如屏幕上的示意图所示。
在本例中,对于因子 D,我们观察到其与响应 A 存在相关性,尤其是在因子范围的高端。此时,符合规格的运行比例较高。我们使用类似于 JMP 设计空间分析器(源自 JMP 17)的脚本来可视化模拟数据和故障率。如图所示,散点图矩阵中的绿点代表符合规格的运行,而红点代表不符合规格的运行。
此可视化工具清晰地展示了每个因素如何影响您的流程性能,尤其是在范围极端值处。正如您在左侧看到的,通过手动调整工厂限值,我们调整了六个工厂限值,从而优化了我们称之为“已验证可接受范围”(PAR)的指标。在某个案例中,此次调整将不合格结果从之前的 33% 降低到 0.1% 以下(约 0.05%),这是一个显著的改进。
这些经过验证的可接受范围构成了稳健、可重复制造的基础。我们还定义了正常工作范围(NOR),这是基于历史性能、设备能力和操作人员差异而设定的更严格的限制,但始终在零件的公差范围内。我再次强调,NOR 几乎总是在零件的公差范围内。
接下来,我们将使用JMP软件,并演示实验设计及其评估方法。今天我们将演示的示例已在幻灯片中展示。该示例包含五个响应变量和六个因子。通过我们之前进行的低级别风险评估,我们确定了这六个因子,也就是主效应。此外,本研究还包含了大量的交互作用和二次项。
通过低级别风险评估,我们发现一些别名或交互项由于影响较小或风险较低而被特意排除在外。最终,我们确定了一个包含约 16 次运行的实验设计方案 (DoE)。这就是我们使用自定义设计的方式。它使用的是 JMP 中的 D-optimal 设计平台。在湿实验室完成这些操作后,我们回到 DoE 评估阶段。在这个阶段,我们在构建拟合模型之前,首先进行所谓的“数据质量检查”。我们会查看残差图、残差与预测值的关系图以及学生化残差。
这里我们要观察残差是否随机分布在零点附近,这表明残差服从正态分布,而本例正是如此。否则,残差中出现的特定模式则可能表明存在未知的主动效应。我们使用学生化残差和 Bonferroni 校正来检查异常值。因为这些校正方法更为保守,可以降低错误地检测到偏离趋势点(即异常值)的风险。
接下来是异常值处理。在分析阶段,我们如何检测异常值?即使检测到的异常值超出了 Bonferroni 校正阈值(即图中所示的红色阈值),也不一定意味着我们会自动将该数据点从数据集中排除。建议不要在没有科学依据的情况下移除异常值,例如操作误差、方法偏差等。如果不确定,可以分别对包含和不包含疑似异常值的模型进行比较,并解释为什么不包含异常值的模型更具代表性。
现在我们已经完成了数据质量检查,接下来要构建拟合模型,这需要用到模型回归。我们使用所谓的向后剔除法,也就是逐步回归,遵循效应层级原则,从模型中移除不显著的项。我们只移除未包含在更高阶项中的主效应。再次强调,交互作用项是二次项。
我们如何判断它们是否包含在高阶项中呢?您需要查看 P 值列右侧的插入符号(∧)。任何带有插入符号的项或主效应都表示其上方存在交互作用或二次项,这意味着它们更为显著,并包含在高阶项中。我们从拟合模型中移除不显著或不相关的主效应、交互作用和二次项的阈值是 P 值大于 0.1,同时保持整个模型的 P 值具有统计学意义,即小于或等于 0.05。
这里可以看到因子 C 与因子 F 的交互作用。它可以从模型中移除。可以看到因子 C 作为主效应也不显著,没有插入符号,因此它没有包含在更显著的项(高阶项)中。接下来,我再次提到,在移除二次项中的主效应交互作用时,我们的阈值是 p 值 0.1。这里还有一个边界条件,即因子 D 与因子 F 的交互作用。
这里,同样地,0.1 的值阈值也存在问题。我们会直接移除这个变量。如果移除该交互项后均方根误差 (RMSE) 增大,则说明移除该变量是不合理的,因为模型中仍然存在一些未知的变异。
但是,如果从模型中移除该交互项后均方根误差 (RMSE) 确实降低,那么移除该项就是合理的。我们将移除它。然而,RMSE 却增加了约 5 个单位。我们将保留该项在模型中。这就是我们的最终拟合模型。
简而言之,RMSE 用于评估模型项移除过程中模型的稳健性。模型拟合完成后,我们将前往响应变量的红色热点区域。点击“保存列”,保存响应变量的预测公式和标准误差预测公式。稍后我们将使用这些数据来定义我们的“已验证可接受范围”(POR)。但首先,我们将确定响应变量的关键过程参数。
接下来,我们有一个脚本,是我们和统计顾问一起开发的,正如我之前提到的,叫做“关键过程参数”。您需要点击这个脚本。它会打开一个窗口。您需要点击当前打开的拟合模型,也就是我们一起构建的那个重要的拟合模型,然后点击“打开表格或运行”。抱歉,我们需要先打开缩放估计值。我刚才忘记了这一点。缩放估计值必须打开。
正如我之前提到的,这些是半效应。半效应用于计算我们的关键过程参数。我们将返回关键过程参数脚本。现在我们点击“打开表格”。在这里,您可以看到计算的初始部分,其中会显示下限规格和上限规格,如果您已经预定义了响应的规格限,则可以在此处输入这些值。
规格限值通常是预先设定的。但是,例如,如果我们评估的是流程中的某个单元操作,也就是某个中间步骤,那么该中间步骤的限值可能并不存在。在这种情况下,我们会参考规模化生产数据,并使用符合最终产品规格的批次的最小值和最大值。
在这种情况下,如果上述方法也不可用,我们还有一种默认方法来定义响应的规格限值,即使用 DoE 过程均值的 80% 作为下限,150% 作为上限。在本例中,我们已经设置了规格限值,上限为 350。我们将在此处输入该值。这是因为响应 E 的目标是最小化。
然后我们返回脚本界面。正如我之前提到的,我们使用 20% 的均值偏移来定义 CPP 验收标准。我们已经在第 3 行输入了默认设置。现在我们点击“运行”。此时系统会计算 CPP。那么,我们如何定义 CPP 的阈值呢?同样,阈值大于容差范围的 20% 或均值的 20%。我们将在这里查看均值偏移大于 20% 的模型项。这个百分比可以根据需要进行调整。例如,可以使用 10% 或 30%,但我们使用标准的默认设置 20%。
该脚本使用特定乘数执行 CPP 计算,以确定完整效应。您的缩放估计值(也称为半效应)乘以一个乘数,该乘数为 1 或 2。连续主效应和交互作用使用乘数 2,二次项和分类因子使用乘数 1。然后,缩放估计值乘以该乘数即可计算完整效应。接下来,将完整效应除以您的容差或容差。然后,将该结果的绝对值转换为百分比,这就是此处输出的内容。
再者,如果均值偏移量大于容差范围的 20%,则说明这是一个关键过程参数 (CPP)。如果小于 20%,则说明这是一个非关键过程参数。这就是我们区分 CPP 与非关键过程参数的方法。对于实验设计中的所有响应,都需要执行此拟合模型预测公式及其标准误差的 CPP 计算。然后,我们会进入“图表”下的“分析器”工具。这里我们使用“分析器”工具。我已经预先填写好了相关信息。完成上述计算后,我们就可以进入“分析器”工具,定义过程参数的已验证可接受范围 (PAR)。
如您所见,此分析器中已进行了一些预填充。模拟器工具已在预测分析器热点下打开。要显示缺陷率,如您所见,您需要右键单击模拟器工具的“列”。请添加 PPM 值,因为我们在模拟中使用了 PPM。然后,我们还添加了相应的 RMSE 值,它代表了响应的随机噪声,正如我们之前看到的。
接下来,我们定义因子分布。您可以使用三角分布、正态分布、截断分布等来模拟您的过程。这里我们选择三角分布,并将规模化生产过程中的相应因子设定点置于分布的峰值处,其上下两端(或称极值)代表我们研究设计的极端情况。如果缺陷率过高(在本例中,正如我们之前在示例中看到的,不合格率约为 33%),我们将再次使用设计空间分析器来优化范围,该功能已在 JMP 17 和现在的 JMP 18 中推出。
在之前的 JMP 15 和 16 版本中,我们有一个内置脚本,利用散点图矩阵,叫做“失效边缘”(Edge of Failure)。它本质上是一个实时显示整体设计空间和特定响应缺陷率的工具,有助于做出明智的决策。我们将在这里最终确定“已验证可接受范围”(Proven Acceptable Ranges),然后所有这些“已验证可接受范围”将与制造团队一起审查其操作可行性。现在,我将把演示交给 Martin,让他来演示 JMP 18 中的“设计空间分析器”(Design Space Profiler)。
谢谢,埃米特。我来分享一下我的屏幕。我现在从幻灯片的第9页和第10页开始,就是我们刚才展示的那个分析器。我再次打开分析器,就是埃米特刚才给你演示的那个。
如果您想了解分析器中的工作原理,您可能已经知道了,左侧是响应值,右侧底部是影响因素,这里还有模拟结果。当然,如果您为不同的响应值设置了规格限制,您还可以看到缺陷率。
你可以通过优化和期望值,并最大化期望值来优化整个过程。我已经在这里做过了。这样你或许能得到一个最优响应或最优工艺设置。然而,为了验证可接受的范围,这可能并非最佳做法,因为优化在很多情况下往往会走向极端。如果我们得到一个位于设计空间边缘的设置,这通常不是你验证可接受范围所需要的,因为我们对设计空间边缘的情况一无所知。
这对我们目前的情况没什么帮助。我们该如何解决这个问题呢?其实,设计空间分析器可以帮到你。设计空间分析器可以让你轻松地通过点击“向内移动”按钮来提高符合规格部分的比例。左侧显示的是符合规格部分,底部显示的是因子设置。我们可以看到限制条件,包括当前因子设置的限制条件,以及响应的符合规格部分和整体符合规格部分。
现在,我们往里看,看看发生了什么。我们看到这条线上发生了一些变化。这条线代表因子 D 的下限。这是因子 D 的上限。我们可以从曲线图中看到,当我们把下限值调高时,合格率也会随之提高。这就是它的解释。
JMP 会尝试找出哪个限值变化对符合规格部分的影响最大,并不断优化,我们可以继续进行下去。只要达到期望的符合规格部分,我们就可以这样做。比如说,99% 左右。这样我们就最终达到了您的限值。
现在我们看到所有响应的合格率都相当高。我们可以将中点值发送到性能分析器。我们也可以将限值发送到性能分析器。在这里,您可以选择要设置的限值。在我看来,通常使用 3σ 的限值。但为了更好地可视化,并且由于我希望我的响应非常保守,我选择均匀分布,因为我也希望在路径边缘保持相同的数值。或者说,我希望模拟结果在已验证可接受范围的边缘和内部保持相同的数值。
现在,我们已经看到了它的效果。结果很棒,但我们发现这种自动化方法对因子 D 的可接受范围的设定或验证非常有限。这或许是个问题,也或许不是。有时你可以控制这类因子,但通常情况下并非如此。我们该如何继续推进呢?
我们还发现,有些项目我们可以随意调整。这时,您的专业知识就派上用场了,您可以说:“我们可能想降低某些项目的成本,因为材料价格、能源成本或其他因素的影响更大,所以我们想降低它。” 如果这并非至关重要,那么我们可以将其设定在这个范围内。
现在,为了演示如何处理这个问题并获得更广泛的范围,我先新建一份报告。当然,您不必这样做,但就本次演示而言,我发现这样做更实用。这里我们再次从设置开始,在设计空间分析器中使用所有新设置或常规设置。您可以通过一些方法来查看此规范和设计范围内的具体情况。您可以使用“创建并连接随机数据表”来实现这一点。打开该表后,您还可以嵌入因子空间散点图和响应散点图。这将创建一个随机模拟数据表。
您可以根据模型考虑其他经验。他们会告诉您因子空间的情况。您始终可以看到因子。这里我们看到的是因子 D。您可以看到,绿色和红色分别代表符合规范和不符合规范的内容,这与 Emmett 之前向您展示的类似。对于响应变量,我们在这里看到相同的散点图。我们可以想象,D 值越高,绿色就越多;D 值越低,红色就越多。
这就是为什么算法会尝试朝这个方向移动,因为在这个范围内移动非常明显。然而,你需要理解,而不仅仅是找到最佳的合格部分,因为那样可能会导致极限值过小。你需要理解背后的原理。如果我们这样做并进行调整,你就能看到它对特定因子组合的合格部分的影响。我们看到有很多红色部分超出了合格范围,所以我们忽略了这些部分,这样至少可以提高绿色部分的比例。
我们可以看到,使用因子设置 D 时,它倾向于向内移动。然而,我们想看看如何消除这种现象,并真正了解它的影响。如果我们把因子 E 的设置调低会发生什么?我们发现,基本上没有什么影响。底部会略微偏红,但同时也会减少这个范围内的大部分绿色。
它其实并没有太大帮助,至少不是对所有情况都有效。同样,如果我调整这里的上限,我们会发现它会减少更多的绿色部分,所以我们不想为此调整它。你可以追踪这些变化。例如,如果我们调整因子 F,比如说“我们想把它设为 28,这样我们就能得到更好的设置”,你会看到这会对这里的红色部分产生影响,也会对其他响应以及响应 D 和 B 范围的下半部分产生很大影响。
这已经相当不错了。我们可以对其他一些因素做同样的操作,例如,我们可以根据需要调整因子 C,看看它对效果的影响。这是为了加深理解,而不仅仅是找到最佳的规格范围。我们可以在这里调整设置。例如,我们可以不断尝试,看看它如何影响你的范围,以及如何调整才能在不改变因子 D 设置的情况下,使颜色处于理想的绿色区域。之后,我们可以调整因子 D 的设置,最终获得一个更宽的范围。
我打开这项研究的最终结果,以便您再次查看。这里绿色区域代表因子设置,同时也可以看到响应设置,这里大部分也是绿色。我们可以将这些数据导入分析器,可以看到缺陷率非常低,但通过缩小其他因子的范围,因子 D 的范围却大大扩大了。
最后,我们可以再次以散点图矩阵的形式查看失效边缘图。我稍微调整了一下显示的散点图矩阵图像,因为我喜欢在散点图之外使用非参数密度,这样能让我更清楚地了解数据最密集的区域在哪里,尤其是在考虑非常接近规格极限的数据点时,我想看看这里是否存在辐射热点,或者仅仅是一个单独的数据点。这基本上就是使用 JMP 中的设计空间分析器和散点图矩阵来实现这一点的方法。至此,我把发言权交还给 Emmett,让他结束本次课程。
谢谢马丁。我和马丁希望本次演示能够展示我们如何建立一套稳健的数据驱动方法来识别关键工艺参数 (CPP),并利用实验设计 (DoE) 和设计空间分析器定义可接受范围 (PAR)。我们首先根据特定工艺需求,采用基于风险的设计方法。我们根据关键工艺参数对关键质量属性 (CQA) 的实际影响来定义关键工艺参数,并利用 JMP 18 中的工艺模拟和设计空间分析器来建立可接受范围。
这种方法已成功应用于我们的内部产品,Miltenyi Biotec去年也协助一位客户成功提交了生物制品许可申请(BLA)。这是FDA首次批准T细胞受体(TCR)疗法用于治疗实体瘤。非常感谢大家的关注。接下来,我和Martin将回答问题。