许多仪器和传感器都会生成连续的数据。分析和理解这种“曲线”数据并非易事,尤其是在试图分析整个连续曲线的数据时。虽然化学计量学技术可以用于分析曲线数据,但它们本质上是逐点分析数据,而不是一次性分析整条曲线或一组曲线。
函数型数据分析是近年来兴起的一种曲线数据分析方法。本次演讲将通过色谱和光谱数据的案例研究,展示如何将连续数据与传统的化学计量学方法相结合进行分析。演讲还将重点介绍 JMP Pro 18 函数型数据浏览器中的一些新型化学计量学分析技术。
大家好,我是比尔·沃利。今天我们要讨论的是功能数据分析(FDA),并通过一个案例研究来展示FDA的应用,包括它的使用方法、应用场景以及潜在的应用领域。首先,我要感谢很多人。感谢大家的贡献,名单已经列出。我特别要感谢汤姆·唐纳利和克里斯·戈特瓦尔特,还有皮特·赫什,感谢他们为本次演讲的顺利进行所做的贡献。
这里还要简单介绍一下背景:我们不仅要研究功能性数据分析,还要融入一种叫做过程分析技术(PAT)的技术。PAT在制药行业被广泛应用,作为其质量源于设计(QbD)理念的一部分,他们利用PAT通过在线、线内和线外测量来缩短生产周期。整个过程就像一个连续的过程。
这一切都有助于防止次品和废品,以及任何可能需要的返工。它还支持实时发布测试和过程分析技术 (PAT),并结合功能数据分析,或者说过程分析技术,适用于任何行业。我认为这只是其中的一部分……随着演示的进行,你会看到更多相关内容。但它是如何融入现有体系的,或者说它如何能够融入现有体系的。
这是对函数型数据的另一种诠释。我们希望探索曲线和形状,并提取曲线特征以进行进一步分析。这与逐点分析数据的方式截然不同。我们的大量数据是连续的,我们需要以某种数值形式捕捉复杂的曲线形状。然后,我们希望分析曲线形状与其他变量之间的关系。
我们从哪里获取功能性数据?正如我之前所说,很多数据本质上就是功能性数据。例如,来自制造过程的时间序列数据、光谱数据以及在不同温度下进行的测量数据。JMP Pro 可以轻松解决许多此类功能性数据问题。
函数型数据分析利用函数型主成分分析(FPC)将数据分解为FPC得分和形状成分。这是一种与经典主成分分析密切相关的降维方法。LPC得分或权重是标量,用于解释函数间的差异。形状成分则解释了纵向变化,例如时间、距离、波长等。我们使用FPC得分拟合模型并进行聚类,然后像绘制其他连续数据一样绘制图表。
对于功能性数据,我们将FPC得分拟合为DOE因子的函数,并使用FPC得分乘以形状分量作为中间公式。然后,我们将建模的FPC得分乘以形状分量作为最终预测公式。
我们如何处理函数型数据?之前已经解释过了。但使用 JMP Pro,只需点击几下鼠标,即可将一组离散点转换为一组函数型主成分。
通过将样条曲线、小波或直接模型拟合到每组函数数据,并用函数主成分 (FPC) 描述这些曲线,您可以快速获得关于您的工艺或产品的新见解和理解。好的,下面我们展示了一组曲线,以及用于拟合这些数据的模型。然后,这里展示了函数数据及其按批次划分的函数主成分。好的。在本例中,这是一个样条拟合。
但今天演讲的重点是讨论如何使用函数数据分析来分析或重新分析三种醇混合物的核磁共振谱数据。这是原始数据来源的论文。我想对他们发表这篇文章表示感谢。然后我们就可以获取这些数据并进行重新分析。
原始数据中包含使用化学计量学方法对核磁共振谱图进行的定量分析。然后,这里叠加了三种醇混合物的核磁共振谱图。我们有戊醇、丁醇和丙醇。我们希望通过分析将这三种醇分开,并预测由它们组成的任何混合物。
为了让您更好地理解谱建模方法,这里介绍各种多元方法。降维非常重要,我们可以使用主成分分析来实现降维。此外,还有多维尺度分析和函数数据浏览器。
聚类分析也始终非常重要。它有助于更好地理解数据分组情况。如果需要进行异常值分析,可以使用多元控制图。但如果要基于这些数据构建预测模型,则需要使用偏最小二乘法或惩罚回归等方法。此外,还有函数式数据分析、自助森林以及其他一些神经网络和支持向量机等方法。选择非常多。
但我希望将其中几种方法与上述结果进行直接比较。首先是主成分分析,如果你正在查看这些数据的话。如果你能看到图表上的点,分别是第 8、20 和 18 个点。这些点分别代表我们实际的丙醇、丁醇和戊醇。
我们现在得到的是一个类似三元图的结构,但需要很多主成分才能解释至少 85% 的变异。我们目前用到了大约 18 个主成分。数据仍然高度相关。你可以把这些主成分保存回数据表,然后进行主成分回归。嗯,这确实有点绕弯子,但并非不可行。
然后,我们还可以考虑另一种非功能性平台——偏最小二乘法。在这种情况下,我们实际上可以拟合一个非常好的模型,至少就丁醇、戊醇和丙醇而言是如此。该模型使用五个潜在因子,而不是十八个主成分。
主成分分析和潜在因子分析本质上是相同的,只是使用了部分平方项。我们至少可以解释原因,或者说了解原因的变异情况,而主成分分析则无法做到这一点。
这里展示的是,我们来看一下解释的变异百分比。我们可以看到,在包含五个因子的较小模型中,我们只能解释 X 变量大约 28% 的变异,但我们能够很快地解释大约 98% 的变异,或者略高于 98% 的变异。这是在两个潜在因子的情况下。
上面的这张图展示了我们可以进行一些变量简化的地方。图中包含了丙醇、丁醇和戊醇,它们分别用不同的颜色标出,每个波长也都包含在内。但是这条位于 0.8 的线就像一个经验法则,一个截止点,你可以在这里进行一些变量简化,使模型变得更简单。如果我们愿意的话。但是再次强调,这只是一个非函数形式。你现在看到的是逐点数据。所有这些模型都会非常庞大,除此之外,还有其他因素。
但是,我们可以看看一种叫做小波函数数据分析的方法。使用小波模型,我们得到了非常好的拟合效果。最佳模型是AICc或BIC值最低的模型。可以看到,我们解释了大约86%的变异,几乎与主成分分析的结果相同,但我们只用了五个函数主成分就实现了同样的效果。
这已经是一个更简单的模型了。如果我们看一下实际值与预测值的对比图,就会发现小波函数很好地解释了这里发生的变化。现在,如果我们看一下得分图的右侧,就会看到一个类似三元图的结构。这里有戊醇、丁醇,还有,抱歉,是丙醇、丁醇和戊醇。
戊醇的情况比较难解释。它的峰值与其他一些数据重叠,因此在得分图中不容易与其他数据区分开来,但我们仍然从中得到了合理的结果。
另一种分析混合物的方法是多元曲线分辨。我们现在正在查看这里的数据。总的来说,这是使用所有数据的多元曲线分辨。我们使用的验证数据是戊醇(或丙醇、丁醇和戊醇的混合物)。其余数据是这三种醇的混合物。在本例中,我们将它们用作训练数据,以预测纯醇的数据。
我们做得还不错,尤其是丙醇。另外两种可能不太好,但我们知道在这种情况下哪些功能性主成分与哪些成分相关。
所以,功能主成分三是丙醇。功能主成分二是丁醇。功能主成分一是戊醇。我们这方面的结果相当不错。但是,如果你看一下下面的诊断图。是的。我的意思是,我们做得还可以。但是,由于我们用混合物本身来尝试预测纯物质的错误部分,我们看到的是一个三元图,但上面没有显示其他三种成分。稍后我会向你展示反过来分析时的情况。
好的,综上所述,我们想尝试一种叫做功能性实验设计(或功能性DOE)的方法。以醇类混合为例,功能性主成分3与丙醇的比例高度相关。这能提供一些解释。就像我之前说的,功能性主成分1与戊醇高度相关,功能性主成分2与丁醇高度相关。当你观察功能性主成分和因子时,并非总能得到这种相关性。
但在这个例子中,我们虽然得到了一些结果,但我们并没有混合FPC,而是混合了醇类。这才是我们想要关注的重点。这就是为什么功能性DOE如此重要。我们将把这些分数拟合为事实或因素的函数。这样,我们就可以轻松地与该模型交互,并以实际的方式使用它,最终预测成分或因素对光谱的影响。
如果您还记得,我们之前提到过,FPC 分数是权重,是标量,用于解释函数之间的差异,而形状成分则解释纵向差异、时间差异等等。波长。
对于功能性DOE,我们将FPC得分拟合为DOE的函数。然后,我们重复之前讨论过的数学运算。好了。总而言之,我们得到了一个叫做功能性DOE分析器的东西。在这里,我们可以比较不同丁醇、丙醇和戊醇比例下的光谱特征。
好的。我们会在演示中讲到这一点,演示现在应该开始了。我先离开一下,把这个放到一边。好的,我正在处理一个 JMP 项目。这是数据。我们有 23 个批次的核磁共振谱图。对,这是它们的 ID。然后是丙醇、丁醇和戊醇的不同比例。接下来是一千列波长数据。
数据范围非常广,而且相关性非常高。我们在进行一些分析时,必须把所有这些因素都考虑进去。好的。首先,我们要回顾一下函数主成分分析,而不是常规主成分分析,不是函数主成分分析。
让我把画面放大一点,这样你们就能看清楚这里的情况了。如果我们看一下这里的得分图和散点图,可以再次看到数据点的高度高度相关。再看看这些不同的点,比如星形点、菱形点和星形点。这些点代表的是纯物质。这让我们意识到,我们仍然在观察一个三元图,也就是混合物。
但是,如果我们再看一下这里,我们需要将特征值降到 80 或 18,才能解释大约 86% 的变异。好的。这仍然有很多因素,我们需要再次将它们纳入考虑,并在准备好后进行一些主成分回归。一旦我们将这些结果保存回数据表。
如果我们还记得的话,我们讨论过偏最小二乘法。看看这个例子,它表明我们可以很好地解释Y变量。它能够用五个潜在因子预测戊醇、丁醇和丙醇的含量。现在,我们对X变量的解释还不够理想,但如果我们想提高解释力,可以通过添加更多潜在因子来使其更接近其他主成分模型。但我认为,即使只使用这个模型,我们仍然节省了很多时间。
如果你看一下这里的范德沃特T值,它告诉我们,我们其实不需要超过五个潜在因子,因为五个潜在因子时范德沃特T值正好是1。任何高于0.1的值都可以被认为是一个好的模型。实际上,我们可以减少到两个、三个甚至四个因子。但目前我们先用五个因子。
好的。如果我们看一下下面的均方根压力图,就会发现它再次表明我们可以使用五个因子。这是最低的均方根压力值,但看起来之后的所有值也很低。这可以让你了解拟合情况。这非常好,因为数据在这些得分图(z 得分图)上非常集中。这进一步表明我们有一个相当不错的模型。
我们在这里解释了98%的变异,几乎99%的变异,而这仅仅用了两个潜在因子。当然,如果我们能达到100%,还可以使用更多因子。这很棒。最后,我们再次审视了VIP(变量选择指标)。我们讨论过如何利用它进行变量选择。实际上,我们可以剔除大量数据,仍然能够构建一个非常优秀的模型。
以上是两种主成分分析方法。偏最小二乘法是两种分析非功能性平台数据的方法。如果我们切换到功能性数据浏览器,首先我想向大家展示的是原始数据格式,对吧?我们刚刚完成了分析,没有进行任何数据处理。我们只是导入了数据,然后在这里稍微拟合了一下模型。
这是未经约束的多变量曲线分辨率数据。在这种情况下,数据可能会出现负值,但就目前的情况来看,我们做得还不错。我们看看这里,看看我们的丙醇,或者说这个批次,这就是我们的丙醇。我们目前做得还不错。虽然不是特别好,但还可以接受。我们没有验证集,也没有训练集。我们目前还没有使用任何验证集或训练集,但我们认为,如果我们继续观察这些数据,结果应该没问题。
如果你看一下实际值与预测值的关系图,可能效果不明显。这里的数据分布比较分散,尤其是在残差与预测值的关系图中。我们或许应该尝试改进一下这个模型。即便如此,如果你继续观察这里,我们仍然可以看到丙醇、丁醇和戊醇。这有点像一个三元图,虽然并不完美,但如果你发挥一下想象力,它大致可以构成一个三角形。
我们正在研究这些信息。我们做得相当不错,分析结果很理想。然后我们像之前展示的那样进行小波分析,效果也非常好。我的意思是,如果你想分析这类曲线数据,小波分析确实是一个很棒的方法。
小波变换唯一的缺点就是它几乎和主成分分析一模一样。你必须先保存数据,然后进行某种广义回归分析,特别是对于你即将处理的数据,比如我们下面看到的这些数据。
这里有一些你可以得到的分数。如果你仔细查看这些数据,你会发现其中包含很多功能性主成分。但如果你再次查看得分图,你会发现一个相当不错的三角形,一个很好的三元图。我们对数据分析的结果非常满意。
然后是之前我展示过的功能数据浏览器,它现在已经激活了。你可以看到,当我移动参数时,如果我把丙醇浓度设为 100%,其他两个参数就会变为零。然后你就能看到曲线的形状了。如果你只是想了解曲线的形状或者如何比较曲线,那么使用小波函数或任何其他与功能性 DOE 分析器相关的函数也是比较这些曲线的好方法。好的。
最后,这里是多元曲线分辨率本身。它只允许正数据。如果我们再看看上面,它正好匹配了丙醇。我的意思是,它对丙醇的拟合效果几乎完美。下面这两个就没那么好了。我们用丁醇解释了93%的变异,戊醇的解释率约为83%。它们应该达到100%。模型还可以,但并不完美。
当我们添加一些验证功能后,如果我们现在查看验证数据,当我们使用……这里我们使用纯原料来尝试预测其他醇类的百分比。同样,我们在这里看到了一些差异。但如果我们再看看上面,我稍后会向您展示对比结果。但如果我们看一下这里的数据,这是我们第一批的数据。结果相当不错。预测值与实际值之间的比较。实际值非常接近。好的。
不管怎样,先别管那些,记住我们现在看到的是实际值与预测值的对比图,虽然还有很长的路要走,但目前为止做得相当不错。还不错。然后我们还有功能性的DOE分析器。我们也可以用它来做一些假设实验,并比较曲线。好的。
最后,我们用纯材料作为训练集。我们用这些数据来预测其他数据的情况。这部分我们也做得相当不错。再看看第一行,这些百分比几乎完全正确。我记得是0.8、0.1和0.1。不错。好的。
我们回到PPT,继续讲解。我再解释一遍。重点是,你有很多方法可以分析数据。函数式数据浏览器是一个非常强大的工具。就像我之前说的,当我们比较实际值和预测值时,如果我们看这里,就能得到这个结果。我们看看能不能画出来。你看这里,我们做得不错。对吧?
就这个模型本身而言。现在还有其他的,甚至下面这个也相当不错,总体来说,实际预测值与模型预测值吻合得很好。这个模型很好。我们需要在这方面稍作改进。但这真的很好。特别是如果你在线上或线下进行测量的话。你收集的数据越多,你的模型就会越好。好的。
要点:利用小波变换进行函数数据分析可以与混合实验设计相结合。它能够预测核磁共振谱图以及几乎任何你想要的谱图,还能根据配方成分和比例预测色谱数据。你可以利用这些信息,结合FDA和DOE模型,预测这些谱图所传递的信息。
然后,利用上述任何一种分析化学技术,以未知混合物为目标,并结合FDA-DOE混合物模型,可以最大限度地减少与目标值之间的积分误差,从而预测配方成分的比例。我们在第二个例子中就做到了这一点。
就这样。还有一个。我看看能不能把这个指针去掉。因为,我们又多了一项要点。函数数据分析将高度相关的纵向数据(例如光谱数据或任何曲线数据)分解成两部分。我们已经讨论过,形状函数解释了纵向变化,而 FPC 分数解释了函数之间的变化。
你要把这些信息和这些信息结合起来。然后运用你的实验设计方法以及你想要的任何机器学习方法,尤其是在这种情况下,可以使用函数式数据探索器或函数式数据分析。你可以利用原始传感器数据流(数据流、曲线或频谱)中的这些信息来提高你的预测能力。好的。
最后但同样重要的是,您需要沟通和共享这些数据。在获取流程数据、分析技术数据、测量数据和流数据时,您需要能够实时更新这些数据,并与其他人共享。这时,JMP Live 就派上用场了,它可以帮助您实现这一点。
最后,我想说声谢谢,但请记住,有了 Functional Data Explorer 和过程分析技术数据,您就能朝着构建一个非常好的数据预测模型迈出重要一步,尤其适用于混合数据。好的,谢谢大家。