使用偏最小二乘分析 (PLS- 树 ) 分级地组织数据 技术领域 本发明一般涉及大数据集的分析, 尤其涉及使用简称为 PLS- 树的偏最小二乘分 析分级地组织和分析数据。
背景
在许多工业中, 在制造和研究、 开发领域采集非常大的数据集。
在半导体器件制造业内, 器件制造者已设法依靠加工工具制造者设计出更好和 / 或更快的工艺和硬件配置而过渡至更精密公差的工艺和材料规格。然而, 随着器件几何尺 寸缩至纳米级别, 制造工艺的复杂度增加, 并且工艺和材料规格变得更加难以满足。
用于当前半导体制造的典型加工工具可以用一组几千个工艺变量来描绘。 这些变 量一般关联于制造工艺的物理参数和 / 或用于制造工艺的工具。在一些情形下, 几千个变 量中的几百个变量将是动态的 ( 例如在制造过程中或多个制造过程之间随时间而变化 )。 诸如气流、 气压、 输出功率、 电流、 电压和温度的动态变量例如基于特定加工方法、 加工步骤 总顺序中的特定步骤或一系列步骤、 制造工艺中发生的误差和故障或基于使用特定工具或 腔室的参数值的改变 ( 也称为 “漂移” ) 而变化。
工艺变量频繁地涉及产量或响应变量。 工艺变量可认为是产量变量基于这些变量 间的潜在关系的预示或指标。在制造工艺中测量和存储工艺和产量变量的数据指示, 用于 实时分析或稍后分析。
同样, 在制药和生物技术产品中, 例如美国食品和药品署的管理机构要求制造工 艺遵循严密规范, 使高质量产品在规定质量曲线周围具有非常小的变动。这些规格需要在 线测量工艺变量和附加多维传感器技术, 例如工艺气相色谱法、 近红外光谱法以及质谱法。 理想地, 在制造工艺中测得的数据可用于实时分析, 以提供关于工艺条件如何接近工艺标 准的指示或信息。
在制药和生物技术研究和研发中, 许多不同的分子——通常几万或更多——在探 寻和优制新药的过程中被研究。对每个分子要测量和 / 或计算许多不同的物理和生物特性 ( 例如可能的药物候选性 ), 并对每个分子计算许多理论上的结构关联特征。针对每个分子 确定的变量值总数经常超过几千 ( 例如超过 2000 个变量值 )。 一部分研发过程包括一方面 寻找生物特征另一方面寻找物理、 化学和理论计算出的结构关联特征之间的关系。对这些 关系的理解有助于研究人员修改有前途分子的化学结构以使其向具有改善的生物特征曲 线的新分子转变。
在大数据集中, 数据经常被编组在一起, 从而导致群集的数据。 为了对该数据进行 有意义的分析, 同质或非编组的数据之间的比较是优选的。 因此, 算法已演化为将成编组的 信息群集成同质的子组。
一种分析编组数据的方法是对数据使用线性回归分析的变型 ( 例如有时被称为 “回归树” 或 “分级和递归树” 或 “CART” )。回归树分析涉及基于各 X 变量或 X 变量组合的 一系列数据分割。 数据可被分割的可能方法的数目随着观察到的变量数而快速增加。 为此, 回归树通常适用于仅具有少量变量的数据集, 并且回归树分析通常止于变量大于 10-20 个
的数据集就中止, 这部分因为计算开销。 基于回归树分析的结果, 数据被编组成树或分支组 织, 有时被称为树状图。
一种类型的分级数据群集基于主要组成分析 (PCA)。这类技术包括对每个分级层 面将一数据集投射到 PCA 分析的第一主组成轴上。投射数据因此沿第一主组成轴单向地对 齐, 并且该数据在第一主组成轴的中间位置附近被分割。 这种分割或群集被递归地迭代, 直 到群集元之间的最大距离超过预定 ( 例如用户定义的 ) 阈值为止。如同 CART 分析, 基于 PCA 的分析对大数据集来说相对较慢。 又一缺点是基于 PCA 的分析一般仅考虑 X- 变量而忽 略 Y 变量对所产生数据关系的影响。
另一种技术涉及随机二进制 (0 或 1)Y 矢量值, 它将 Y 变量分成两个随机组。偏最 小二乘 (PLS) 算法使用单组成模型来预测新的 Y 变量, 并且预测到的 Y 变量代替随机 Y 变 量值。在分析收敛后, 预测到的 Y 变量被圆整至最近的整数 ( 或者 0 或者 1), 并且经圆整的 Y 变量用来将数据分割成若干组。如同基于 PCA 的分析和 CART 分析, 该方法只对 X 变量起 作用, 尽管对内部计算应用了 PLS。这种技术的延伸通过建立多重 ( 例如 3、 4 或更多 ) 分割 而不是二进制分割 (0 或 1) 建立架构而实现两个以上的群集。
神经网络型分析是分析数据的另一种方法。然而, 神经网络型分析对于许多应用 而言尚无法足够快地计算, 并且当变量数目超过 10-20 时也存在困难。
概述
前述方法的缺陷包括在大量变量和变量组合中研究许多可行分割的计算密集性 和开销。当变量数目适中或很大时 ( 例如大于约 20), 回归树和神经网络型分析遭遇到困 难。
本文描述的理念包括使用偏最小二乘 (PLS) 方法进行数据分析以及数据群集或 编组。使用偏最小二乘法分析数据以在迭代进程中将相对大的数据集分割成较小的子集 ( 也被称为组或群集 )。每次数据分割导致具有较高层内部同质性 ( 例如群集中较小的变 化 ) 和最大外部异质性 ( 例如相对于其它群集具有更多变化 ) 的组。用于数据分析和组织 的最小二乘法具有将大数据集分成相同观察资料或数据点 ( 例如关联于工艺变量和产出 变量的数据点 ) 的群集或组而没有关联于先前方法的计算密集性或开销的优点。偏最小二 乘法还保持子集 ( 群集 ) 中的工艺变量和产出变量之间的关系, 这有助于分析。
偏最小二乘法可解决具有相对大量变量的数据集, 包括超过 10000 个变量的数据 集。此外, 当数据集包括多个共线变量或工艺变量和产出变量之间的关系时和 / 或由于检 测器故障或数据存储问题数据部分地从数据集中丢失的情形下, 偏最小二乘法也可工作。 偏最小二乘法的另一优势是计算机处理相当快速, 利于相对快速计算和 / 或在图表或曲线 图上显示分级组织的数据。
使用偏最小二乘法的另一优点是 Y 变量 ( 例如响应 ) 影响群集和对群集的确定。 例如, Y 变量可明确地用作确定是否和在何种情况下将数据分割成多个子组的的 “分割标 准” 或参数的一部分。另一优点是偏最小二乘法既可工作在二进制和连续 Y 变量下, 又可工 作在一个或多个 Y 变量下。偏最小二乘分析是 “自顶向下” 方法, 由于分析从整个数据集开 始并将数据相继分成更小的组。自顶向下方法与自底朝上方法形成对照, 所述自底朝上方 法从具有一个数据点的组开始并将这些组编入 (2 个数据点的组 ) 直到全部观察资料并入 一个数据群集。由于是否群集数据的判断涉及监测观察资料间距离 ( 例如 X 变量之间的相似性 ) 以及观察资料 - 群集和群集 - 群集距离 ( 例如同质性和异质性的相异点 ), 自底朝上 方法往往计算开销很大。本文所述方法的另一优势是方法产生有用的结果, 即便数据集或 观察资料中存在丢失或噪声数据。 本发明的一些实施方式的特征在于使用四分点的差异计 算。
基于偏最小二乘分析编组、 分割或群集的优势在于, PLS 回归模型的 X 得分作为分 割或编组标准的一部分, 与 X 变量本身的值相对。当 PLS 方法应用于一对矩阵 ( 即 X 变量 的 X 矩阵和 Y 变量的 Y 矩阵 ) 时, 结果是数据的划分、 编组或分割的序列。数据被逐行 ( 例 如逐观察资料 ) 地分割成由 PLS 模型表示的树结构或树形图。树形图中的每个节点代表特 定编组或群集中的数据的 PLS 模型。
总的来说, 为了将一个数据集或群集分成两个 ( 或更多个 ), 确定某个分割值或位 置。例如, 针对第一矩阵 (X 矩阵 ) 中的 X 变量计算第一得分 t1, 并根据得分 t1 分类群集的 观察资料。然后基于若干因数加权组合的改进而确定分割的位置, 所述因数包括 (a)X 矩阵 的方差、 (b)Y 矩阵的方差和 (c) 关联于每个后继数据集中的观察资料数量的函数 ( 例如补 偿函数 )。可将该函数认为是不鼓励将数据集分割成具有本质上不等或不平衡量的数据的 两个子组的因数。在一些实施例中, 子组的互相证实用来终止树形图的分支 ( 例如由此确 定不需要进一步的子组 )。在一些实施例中, 用户指定 PLS 树中的最大层数, 其一般值为 4 或 5。 偏最小二乘法可应用于多个数据集。 例如, 本文描述理念的试验已在工艺数据、 定 量结构活动关系 (QSAR) 数据集以及超能谱图像数据上进行过。
总的来说, 在一个方面, 这里提供一种在相对短的处理时间内分割大量数据的计 算机应用方法和系统。该方法包括提供第一数据矩阵和第二数据矩阵。第一和第二数据矩 阵中的每一个包括一个或多个变量 ( 例如矩阵列 ) 和多个数据点 ( 例如矩阵行 )。该方法 包括使用偏最小二乘 (PLS) 分析或正交 PLS(OPLS) 分析从第一数据矩阵确定第一得分, 并 基于第一数据矩阵的第一得分、 第一数据矩阵的方差以及第一和第二组中方差相对于第一 和第二数据矩阵方差的关系将第一和第二数据矩阵分割成第一数据组和第二数据组。 在一 个实施例中, 第一和第二数据矩阵中的每一个均包括一个或多个矩阵列和多个矩阵行。
在一些实施例中, 分割包括逐行分割第一和第二数据矩阵。分割还可包括最小化 第一 PLS 或 OPLS 得分的方差和第二数据矩阵的方差之间的关系的参数表征。分割可包括 最大化第一和第二数据组之间的统计差, 其中该统计差是基于第一数据矩阵的第一 PLS 或 OPLS 得分的方差、 每个组的第二数据矩阵的方差以及关联于分割后残留在 ( 例如大小平衡 的 ) 第一和第二组中的数据矩阵的大小的函数计算出的。在一些实施例中, 分割包括最小 化第一数据矩阵的第一得分的方差、 第一和第二数据组每一个中的第二数据矩阵的方差以 及关联于分割后残留在 ( 例如大小平衡的 ) 第一和第二组中的数据的函数。在一些实施例 中, 当 PLS 树中的层数达到用户指定的最大数时, 分割结束。
第一数据矩阵可包含表征来自例如半导体或制药和 / 或生物技术制造工艺的工 艺数据的数据。此外, 第一数据矩阵可包含作为关联于或表述例如在制药或生物技术研发 中药品研发项目中研究的分子或大分子的感兴趣分子或大分子的结构变化的测得和 / 或 计算数据表征的数据。第二数据矩阵可包含表征工艺产出和 / 或质量数据或其组合的数 据。又如, 第二数据矩阵可包含表征同分子或大分子的生物数据的数据。
在一些实施例中, 第一数据组包括第三数据矩阵和第四数据矩阵, 它们各自来自 将第一和第二数据矩阵逐行分割成第一和第二数据组。 这些实施例包括使用第二偏最小二 乘 (PLS) 分析或第三和第四数据矩阵的 OPLS 分析从第三数据矩阵确定第二得分并基于该 第二得分、 第三数据矩阵的方差以及第三和第四组中的方差相对于第三和第四数据矩阵方 差的关系分割 ( 例如逐行分割 ) 第三和第四数据矩阵。第二数据组可包括第五数据矩阵和 第六数据矩阵, 而在这些实施例中, 该方法还包括在第二数据组包括大于数据点阈值数时 使用第三偏最小二乘 (PLS) 分析或 OPLS 分析从第五矩阵确定第三得分并基于该第三得分、 第五数据矩阵的方差以及第五和第六组的方差相对于第五和第六数据矩阵方差的关系逐 行地分割第五和第六数据矩阵。
一些实施例包括分级地显示第一、 第二、 第三、 第四、 第五或第六数据组。 该方法还 包括当该组包括小于数据点阈值数时终止数据组的分割。 该方法还可包括当第二得分和第 二数据矩阵的组合方差在将数据组分割成子组时不减小的情况下终止数据组的分割。 在一 些实施例中, 该方法包括当与第一和第二数据矩阵关联的之前分割的次数等于或超过预定 阈值时终止第二组的分割。预定阈值可以是代表树形图中最大分层数的极限值。
在一些实施例中, 该方法包括在显示第一数据矩阵和第二数据矩阵的图表上标识 第一数据组或第二数据组。在一些实施例中, 用户规定 PLS 树中的最大层数, 其典型值为 4 或 5。 总的来说, 在另一方面, 提供一种有形地表现在信息载体中的计算机程序产品, 该 计算机程序产品包括可操作成使数据处理装置执行多个步骤的指令。例如, 这些步骤可包 括: 接收第一数据矩阵和第二数据矩阵, 其中第一和第二数据矩阵中的每一个包括一个或 多个数据点 ; 使用第一和第二数据矩阵的偏最小二乘 (PLS) 分析或 OPLS 分析从第一数据矩 阵确定第一得分 ; 以及基于第一数据矩阵的第一得分、 第一数据矩阵的方差以及第一和第 二数据组的方差相对于第一和第二数据矩阵的方差的关系逐行地分割第一和第二数据矩 阵。这些方差在某些场合下由最先几个组成部分各自的 PLS 得分的方差表示。
在又一方面, 提供一种分级地组织数据的系统。该系统包括存储器。该存储器包 括具有第一数据矩阵和第二数据矩阵的数据结构。 该系统还包括可操作地耦合于存储器的 处理器。该处理器包括部分地基于第一数据矩阵的偏最小二乘分析或 OPLS 分析确定第一 得分的模块以及 ( 例如逐行地 ) 分割第一和第二数据矩阵以产生第一组和第二组的模块。 分割部分地基于第一数据矩阵的第一得分、 第一数据矩阵的方差以及第一和第二组方差相 对于第一和第二数据矩阵方差的关系。 该系统还包括可工作地耦合于处理器以显示第一和 第二数据组以及第一和第二数据组与第一和第二数据矩阵的关系的显示器。
在另一方面, 有一个分析数据的系统。该系统包括从存储器检索第一数据矩阵和 第二数据矩阵 ( 例如数据结构 ) 的数据检索装置。第一和第二数据矩阵中的每一个包括一 个或多个数据点。该系统包括使用偏最小二乘 (PLS) 分析或 OPLS 分析从第一数据矩阵确 定第一得分的数据分析装置。系统还包括数据分割装置以基于第一矩阵的第一得分、 第一 数据矩阵的方差以及第一和第二组的方差相对于第一和第二数据矩阵方差的关系将第一 和第二数据矩阵分成第一数据组和第二数据组。
一些实现方式包括以任意上述实施例或其优点为特征的任意前述方面。
这些和其它特征将参照下列说明和附图更充分地得以理解, 附图是示意图并不一
定按比例绘制。 尽管本文描述的理念针对制造工艺, 尤其是半导体、 制药或生物技术制造工 艺, 然而本领域内技术人员很清楚, 这些理念具有额外的应用, 例如数据提炼应用、 金融数 据分析应用或包含大量数据点或观察资料的其它应用。
附图简述
前述和其它目的、 特征和优势将从下文对实施例的更具体说明中变得明显, 参照 附图, 其中相同附图标记在不同附图中表示相同的部件。 附图不一定按比例绘出, 而是将重 点放在突出实施例的原理。
图 1A 是表述测得数据的图表。
图 1B 是示出数据分割前后表示在图 1A 图表上的数据的方框图。
图 2 是用于分级地组织和显示数据的数据处理系统的方框图。
图 3 是使用偏最小二乘分析分析数据的方法的流程图。
图 4 是表示在偏最小二乘树分析后分级组织的数据的分类树。
图 5 是用于显示数据的示例性用户界面。
图 6 是示出使用近似值搜索的示例算法的流程图。
详细说明 图 1A 是示出测得数据 105 的图表 100。数据 105 在图表 100 上表示为多个数据 点 110。 每个数据点 110 代表在制造工艺或某些其它测量或监测工艺中采集或测得的数据。 数据点 110 有时被称为 “观察资料” 。图表 100 包括第一轴 115 和垂直于第一轴 115 的第二 轴 120。轴 115 和 120 可代表工艺变量 ( 有时称其为可观察或预测变量 ) 或产出变量 ( 有 时称其为结果或预测变量 )。在一些实施例中, 这些轴 115、 120 被称为 X 轴。轴 115、 120 被 称为 Y 轴。在一些实施例中, 第一轴 115 和第二轴 120 的单位是无量纲的或缩放的。在一 些实施例中, 图表 100 在 X-X 空间或 Y-Y 空间内描述数据 105, 而图表 100 可描述一个或多 个数据矩阵在平面 ( 或低维数表面 ) 内的投影。这些轴可由数据矩阵中的变量定义。
在一些实施例中, 数据点 110 是代表工艺数据和相应产出数据 ( 例如在测量工艺 数据期间批量的产出数据 ) 的有序数据对部分。在一些实施例中, 数据点 110 表示一个或 多个数据矩阵中的表项。例如, 工艺数据可以是也被称为 X 矩阵的第一数据矩阵中的表项。 X 矩阵可以是包含 N 行 ( 也称观察资料 ) 和 K 列 ( 也称变量 ) 的 N×K 矩阵。产出数据可以 是也被称为 Y 矩阵的第二数据矩阵中的表项。Y 矩阵可以是包含 N 行和 M 列的 N×M 矩阵。
图表 100 可包括至少 10000 个数据点, 在某些情况下明显超出 10000 个数据点。 在 一些实施例中, 第一数据矩阵和 / 或第二数据矩阵中的数据在显示在图表 100 前被预处理。 例如, 在创建或显示图表 100 前, 从存储器检索第一数据矩阵和第二数据矩阵, 并通过预处 理算法 ( 未示出 ) 变换、 居中和 / 或缩放矩阵中的数据。
在一些实施例中, 预处理关联于第一或第二数据矩阵中的数据统计分析。 例如, 用 户 ( 计算机或人 ) 可指定一组缩放参数在产生图表 100 前施加于数据。可使用缩放文件指 定适合缩放参数的特定值。 缩放有时被表示为数据在用于之后的处理或建模前的一种预操 作或预处理。数据矩阵中的观察资料和变量的测得值经常具有本质上不同的数值范围, 这 导致数据中大的统计方差。偏最小二乘分析一般被认为是最大协方差投影方法。结果, 大 方差的变量或数据可能比相对低方差的变量更为醒目地表现在图表 100 上。当相对大方差 的变量沿第一轴 115( 例如 X 轴 ) 以散布图绘制而相对小方差的变量沿第二轴 120 按相同
比例以散布图绘制时, 大方差变量的扩展将支配小方差变量的扩展。 作为补救, 可缩放两变 量的数据 ( 和轴 )。缩放变量允许这两个变量对特定数据模型作出贡献。
为了给出相对或近似等权重的两个轴 115、 120, 数据值被标准化、 缩放或加权。这 有助于 X 矩阵表项和 Y 矩阵表项 ( 或变量 ) 两者近乎等量地对模型作出贡献。缩放处理包 括根据预定标准 ( 例如对每个坐标轴的长度设定同一方差 ) 在变量空间内调整坐标轴长 度。用于缩放数据的常见技术被称为 “单位方差” 即 “UV” 缩放或 “自动缩放” 。单位方差缩 放包括计算数据集中特定变量的标准差 ( 例如 σ)。缩放权重被计算为标准差的倒数 ( 例 如 w = 1/σ)。每个变量值与缩放权重相乘以确定经缩放的变量。在数据矩阵中的全部变 量被缩放后, 每个坐标轴 115、 120 具有单位方差。
在一些实施例中, 用户可能想要评价特定变量 ( 例如噪声变量或不相干变量 ) 或 增加某些变量对图表 100 的贡献。用户可修正缩放权重 ( 例如由此缩放方差 ) 以为特定数 据集达成这个目的。另外, 变量的变换经常给予变量更为对称的分布。例如, 可使用对数变 换、 负对数缩放、 分对数缩放、 平方根缩放、 四次方根缩放、 倒数缩放或幂变换缩放。
同样, 矩阵中的数据可居中在除缩放坐标系原点 O 外的点 ( 未示出 ) 周围。这时, 可根据需要将居中值加上各矩阵列或与之相减以使矩阵元居中在其它点周围。 居中和缩放 均可减小产生图表 100 和 / 或数据偏最小二乘分析的计算要求。居中和缩放还有利于数据 解释和结果参数或解释性模型的使用。
当第一和第二矩阵中的数据已被输入和 / 或居中、 变换或缩放时, 对数据应用偏 最小二乘算法以确定 t1 得分。在一些实施例中, 偏最小二乘算法基于数据的正交偏最小二 乘分析, 而 t1 得分基于数据的这种 OPLS 分析。t1 得分对应于 ( 例如图表 100 上的 )X 空间 中接近数据分集的一条线并关联于第二矩阵中的该数据。 沿偏最小二乘分量的坐标为特定 数据点或观察资料定义或确定 t1 得分。X 空间中的累积观察资料的 t1 得分定义或确定 t1 得分矢量, 可将其认为是新的变量。
t1 得分代表图表 100 上的直线 125( 例如各 t1 得分的累计或 t1 得分矢量的表 征 )。垂直于 t1 得分 ( 例如直线 125) 的直线 145 用来将图表 100 划分或分割成两部分 130、 135。部分 135 代表在直线 145 下方的观察资料或数据点, 而部分 130 代表在直线 145 上方的观察资料或数据点。图表 100 上的数据 105 按 t1 得分矢量 ( 例如直线 125) 分类。 沿直线 125 对每个 t1 得分进行计算。
在已确定 t1 得分矢量后, 直线 125 上的点 ( 例如沿直线 145) 的每个分割值通过 等式 1 评价 :
u = (1-b)*{a[V(t11)+V(t12)]/V(t1)+(1-a)[V(y1)+V(y2)]/V(y)}+b*F(n1, n2)
等式 1
其中 :
u =被最小化的参数 ;
a =用户可调的参数, 一般在 0 和 1 之间 ;
b =用户可调的参数, 一般在 0 和 1 之间 ;
V =特定矩阵或矢量中的方差 ;
tli =直线 125 上第 i 个坐标, 例如第 i 个观察资料的 t1 得分值 ;
yi = Y 矩阵中第 i 行, 例如第 i 个观察资料的 Y 矢量 ;n1 =子组 1 中的数据点或观察资料的数目 ( 例如在部分 130 中 ) ;
n2 =子组 2 中的数据点或观察资料的数目 ( 例如在部分 135 中 ) ; 以及
F =与 n1 和 n2 关联的函数, 该函数用来鼓励将数据分割成对 n1 和 n2 具有近似相 同值的子组。
等式 1 可定性地视为是 X 矩阵中的方差 ( 例如 t1 得分 )、 Y 矩阵中的方差以及每 个潜在的子组或子分割中的数据量之间的关系。一般通过 X 得分 t1 的方差、 Y 矩阵的方差 以及与每个相继子组中的数据量关联的函数 (F(n1, n2)) 的组合的总体改进而使 “u” 值最小 化 ( 因而也按 t1 得分使分割优化 )。例如, 函数 F(n1, n2) 可视为鼓励每个得到的子组中近 乎相等数量的观察资料 ( 例如 X 变量 ) 的补偿函数。在一些实施例中, 函数 F(n1, n2) 通过 等式 2 给出 :
等式 2其它补偿函数对本领域内技术人员来说是显而易见的。在一些实施例中, 用户可 调参数 α 关联于得分 t1 和 Y 变量。例如, 如果 α 值更接近 0, 则将更多权重分配给得分 t1。如果 α 值更接近 1, 则将更多权重分配给 Y 变量。用户可调参数 b 关联于子组的大小。 例如, 如果 b 的值更接近 0, 则分割不大可能在分割后产生基本相等大小的子组。如果 b 的 值更接近 1, 则分割更可能在分割后产生基本相等大小的子组。 在一些实施例中, 参数 α 的 默认值是 0.3 且参数 b 的默认值也是 0.3。参数 a 和 b 的其它默认值也是可行的。在一些实施例中, 参数 b 的值可以为 0。在这些实施例中, 补偿函数 F 不影响要被 最小化的参数 u。具体地说, 补偿函数 F 不用来鼓励或影响各子组中的数据量。在一些实施 例中, 参数 a 的值可以为 0。在这些实施例中, 等式 1 与分类和回归树 (CART) 分析相似, 不 过分割是基于 PLS 得分而不是 X 变量值本身。
在一些实施例中, 参数 nmin 可指定为例如当参数 b 的值接近 0 或相对小时防止等 式 1 的解得出各自包含相对小数量数据的相对高数量的群集或组的边界条件或参数。参数 nmin 可用函数式表示为 nmin = min(n1, n2)。Nmin 的一例值为 5。其它 nmin 的值也是可能的并 且是用户选择的。在一些实施例中, 分级层的数目 ( 且隐含地是子组或群集的数目 ) 可由 用户确定或选择。例如, 用户可选择四 (5) 或五 (5) 个分级层。在用户尚未选择一定数量 的分级层的情形下, 可指定一默认值 ( 例如 4 个分级层 )。
直线 125 上的坐标 140 被确定和 / 或定位成使等式 1 中的参数 “u” 的值最小。通 过最小化参数 “u” , 数据 105 根据第二矩阵 (Y 矩阵 ) 中的 t1 得分 ( 或 t1 得分矢量 ) 和方 差被分割。在交叉坐标 140 处垂直于直线 125 的直线 145 被确定和示出在图表 100 上。直 线 145 将图表分成部分 130 和部分 135。部分 130 包括在直线 145 之上的数据 105, 而部分
135 包括在直线 145 之下的数据 105。 部分 130 包括第数据集, 而部分 135 包括第二数据集。 作为最小化等式 1 的结果, 通过特定值 t1 的选择, 最小化 (i) 第一数据集中的得分 t1 的方 差和第一组的第二矩阵的方差以及 (ii) 第二数据集中的得分 t1 的方差和第二组的第二矩 阵的方差的组合。最小化组合等同于相对变量 t1 和 Y 最大化第一数据集和第二数据集之 间的组合方差。
在图表 100 被分成部分 130、 135 后, 可使用相似的过程来分析各部分 130、 135 中 的数据。例如, 部分 135 中的数据点 110 可视为第三数据矩阵 X1( 例如包括部分 135 中的数据 105 的 X 矩阵值 ) 和第四数据矩阵 Y1( 例如包括部分 135 中的数据 105 的 Y 矩阵值 )。 可以类似于上文所述的方式 ( 但仅基于部分 135 中的数据 ) 从第三数据矩阵确定第二 t1 得分。部分 135 可基于第二 t1 得分沿第二直线 ( 未示出 ) 划分和分割。在已确定第二 t1 得分后, 可针对第二 t1 得分和第四数据矩阵 ( 例如 Y 矩阵 ) 中的方差最小化等式 1, 以进一 步将部分 135 沿第二垂直线 ( 未示出 ) 分成第一和第二子组 ( 未示出 )。
然后可进行部分 130( 组 2) 的类似分析以将部分 130 中的数据分割成若干子组。
可对每个连续子组继续上述过程, 直到图表 100 上的所有数据 105 已被分析或编 组成越来越小的群集 ( 子组 ) 的阶层结构。在一些实施例中, 当子组包含少于数据点阈值 数或当进一步分割数据不导致 t1 得分矢量中相对较小的方差或 Y 矩阵中的方差时, 针对特 定子组的分割过程终止。数据点的阈值数可以是用户选择的, 例如为 5 个数据点。
在一些实施例中, 群集几何学的检查提议, 该群集或子组沿不平行于第一得分矢 量 t1 的方向取向。当子组不平行于第一得分矢量 t1 取向时, 可使用得分矢量的组合 ( 例 如两个、 三个或更多个得分矢量组合 )。 在一些实施例中, 为了组合得分矢量, 可引入第三参 数 c。第三参数 c 通常具有在 -1 和 +1 之间的值。第三参数 c 将第一得分 t1 关联于第二得 分 t2。得分矢量 t1 和 t2 之间适当关系的例子使用参数 c 表示如下 : {c*t2+(1-|c|)*t1}。 本领域内技术人员将清楚知道其它关系。参数 c 和得分矢量 t1、 t2 之间的关系导致在由得 分矢量 t1 和 t2 界定的平面内表征的数据分析, 而不是仅沿第一得分矢量 t1 或第二得分矢 量 t2。 一些实现方式允许用户减少正在分析的变量数 ( 例如有时称其为数据选择或预 处理 )。 例如, 某些变量可强烈地关联于模型中的最佳预测变量或不关联于 Y 变量 ( 例如结 果变量 )。数据选择的一个例子包括将数据参数 ( 例如 X 变量 ) 与预定值相比。例如, 在分 析前将表现出与 Y 的关联度小于预定百分比 ( 例如 75% ) 的变量从数据集中剔除。
图 1B 是示出在数据分割前后在图 1A 的图表 100 上表示的数据的方框图 160。方 框图 160 包括第一数据矩阵 164( 表示为 X) 和第二数据矩阵 168( 表示为 Y)。每个数据矩 阵 164、 168 可包括一个或多个列 ( 也称为变量 ) 以及多个行 ( 也称为观察资料 )。在一些 实施例中, 第一数据矩阵 164 包括工艺数据, 而第二数据矩阵 168 包括产出数据和 / 或产品 质量数据。在其它实施例中, 第一数据矩阵 164 包括测得和计算出的理化和 / 或结构关联 的数据, 而第二数据矩阵 168 包括关联于一组分子或大分子的生物数据。
方框图 160 还包括划分第一和第二数据矩阵 164、 168 的分割线 172。 一旦分割第一 数据矩阵 164, 第一数据矩阵 164 的一部分 176a 就成为第一数据组 184 的一部分 180a( 表 示为 X1)。同样, 一旦分割, 第二数据矩阵 168 的一部分 188a 成为第一数据组 184 的一部 分 180b( 表示为 Y1)。一旦分割第一数据矩阵 164, 第一数据矩阵 164 的一部分 176b 成为 第二数据组 196 的一部分 192a( 表示为 X2)。同样, 一旦分割, 第二数据矩阵 168 的第二部 分 188b 成为第二数据组 196 的一部分 192b( 表示为 Y2)。因此, 后继的分割以与第一数据 组 184 的第一部分 180a(X1) 和部分 180b(Y1) 表征第一数据矩阵 164 和第二数据矩阵 168 相同的方式继续。第二数据组 196 可以相同方式分割。
在一些实施例中, 分割是根据第一观察资料的得分和第二数据矩阵 164、 168 的方 差的逐行分割。 也可使用其它分割技术。 在一些实施例中, 当特定数据组 ( 例如数据组 184) 不超出数据点的阈值数时, 例如如果观察资料的数目过小, 分割中止或终止。 数据点的阈值
数可通过用户设定或确定。在一些实施例中, 当 X 矩阵 (t1) 和 Y 矩阵的第一得分矢量中的 方差不因分割而减小时, 数据组的分割终止。可比较这些方差 ( 例如作为 [V1+V2]/V 之比 或分数, 有时称其为来自等式 1 的变量 )。当 u 大于或等于 1 时, 矩阵中源自分割过程的方 差等于或大于源自之前数据组的方差, 则分割终止。当 u 小于 1 时, 矩阵中源自分割过程的 方差小于之前数据组的方差, 则分割继续直到 u 大于或等于 1 为止。
图 2 是分级组织和显示数据的数据处理系统 200 的方框图。数据处理系统 200 包 括耦合于处理器 210 的存储器 205。数据处理系统 200 还包括耦合于处理器 210 的显示器 215。数据处理系统 200 还包括未示出的其它组件或模块, 例如测量、 采集和将数据存储在 存储器 205 中的数据获取模块或根据多变量静态分析基于所采集数据建模的建模模块。数 据处理系统 200 可位于制造设备中以实现就地和 / 或实时分析或后处理分析或数据提炼应 用。
存储器 205 包括例如代表制造工艺的数据, 例如关于工艺变量 (X 矩阵数据 ) 和产 出变量 (Y 矩阵数据 ) 的数据。该数据可存储作为原始数据、 作为数据模型或模板或作为经 预处理的数据 ( 例如在缩放、 居中和 / 或变换后 )。
处理器 210 包括与存储器 205 通信的数据检索模块 220。数据检索模块 220 从存 储器 205 检索数据以供分析。处理器 210 还包括数据分析模块 225 和数据分割模块 230。 数据分析模块 225 与数据检索模块 220 和数据分割模块 230 通信。数据分割模块 230 与数 据检索模块 205 通信。数据检索模块 205 与显示器 215 通信以便将经检索的数据显示给用 户 ( 例如作为图 1 的图表 100 上的数据点 110)。数据分割模块 230 和数据分析模块 225 也 与显示器 215 通信, 以便将数据显示给用户。 在数据检索模块 220 已从存储器 205 检索到特定数据集后, 数据分析模块对所检 索的数据 ( 例如在第一 X 和 Y 矩阵上 ) 执行偏最小二乘分析 (PLS) 或正交 PLS 分析 (OPLS) 以确定第一 t1 得分。如上所述, t1 得分是 X 空间中形成子分割所检索的数据的基础的直 线表征。数据分析模块 225 与显示器 215 通信以便将经分析的数据显示给用户 ( 例如作为 图 1 的图表 100 上的直线 125)。
当数据分析模块 225 已确定 t1 得分时, 数据分割模块 230 针对 X 矩阵和 Y 矩阵 ( 例如第一和第二数据矩阵 ) 分析 t1 得分以确定使所分割组内的方差最小化并使所分割组 之间的方差最大化的 t1 值。数据分割模块 230 与显示器 215 通信以便将经分割的组显示 给用户 ( 例如作为图 1 的图表 100 上的直线 145 和部分 130、 135)。
在一些实施例中, 数据检索模块 220、 数据分析模块 225 和数据分割模块 230 中的 一个或多个是同一应用、 进程或程序的子例程或子算法。在一些实施例中, 数据分析模块 225 和数据分割模块 230 是同一子例程或算法的一部分。
显示器 215 可包括用户输入装置 ( 未示出 ), 例如键盘或鼠标, 其允许用户向处理 器 210 指定参数或发布指令。在一些实施例中, 显示器包括用户界面以利于用户和处理器 210 之间的通信。例如, 用户可通过用户界面指定来自上面等式 1 的参数 “a” 和 “b” 的值, 或用户可向处理器 210 发布指导数据检索模块 220 从存储器 205 检索指定数据集以供分析 的指令。附加地, 用户可在从存储器 205 检索数据前后通过预处理模块 ( 未示出 ) 指定缩 放、 变换或居中数据以预处理数据。在用户是另一计算机系统或处理器 ( 未示出 ) 的实施 例中, 用户界面可以是用于对系统 200 指定关于存储器 205 中的数据的参数以及处理器 210
如何处理该数据的机器 - 机器界面。
体现本发明各个特征和方面的商业产品的一个例子是由瑞典 Umea 的 Umetrics 公 司出售的第 12 版 SIMCA-P+TM 软件产品。
图 3 是示出使用偏最小二乘分析法以分析数据的方法的流程图 300。步骤 304 包 括检索要分析的数据。所检索出的数据可以是矩阵形式或某些其它形式或结构 ( 例如上面 结合图 1A-1B 描述的第一和第二数据矩阵 )。 在一些实施例中, 从存储器 ( 例如计算机化的 存储器 ) 检索数据。步骤 304 也发生在流程图 300 所示方法已结束后。例如, 步骤 304 可 表示在已如前所述参照图 1A-1B 分割成第一和第二组的数据处理的后继或迭代系列中的 第一步骤。步骤 304 可包括在流程图 300 中的方法发生的同时从存储在阵列或暂存存储器 中的数据中检索数据。
在步骤 304 中检索数据后, 在可选步骤 308 中可对数据进行预处理。预处理数据 包括如上所述地变换、 居中和 / 或缩放检索到的数据矩阵中的数据。在一些实施例中, 预处 理响应用户的技术要求 ( 包括诸如缩放权重、 阈值的预处理参数或响应特定迭代 ) 而发生。 在一些实施例中, 用户指定预处理按默认值或之前选择的值而发生。数据是否预处理可以 是在方法的最初设置阶段由用户指定的默认设置。步骤 306 示出与预处理步骤 308 是否完 成关联的判断步骤。
在数据已被预处理之后 ( 步骤 308), 可在步骤 312 选择偏最小二乘分析或正交偏 最小二乘分析。偏最小二乘分析的类型可由用户指定或可以是默认设置。如果已选择偏最 小二乘分析 ( 步骤 316), 则使用 PLS 分析确定第一 t1 得分 ( 步骤 324)。如果选择了正交 偏最小二乘 (OPLS) 分析 ( 步骤 320), 则使用正交偏最小二乘分析确定第一 t1 得分 ( 步骤 324)。第一 t1 得分可由第一和第二数据矩阵定义的空间或坐标系 ( 例如 X-Y 空间 ) 中的 直线或某些其它曲线来表示。在一些实施例中, 使用了 PLS 和 OPLS 分析两者。
在步骤 324 确定了 t1 得分之后, 分类过程发生 ( 步骤 328)。之后发生分割过程 ( 步骤 332), 将第一和第二数据矩阵分割成两个部分 ( 部分 1 和部分 2)。部分 1 和部分 2 可以是数据的临时子组, 供进一步处理和分析以确定部分 1 和 2 中的数据值是否最小化将 t1 得分值与第一和第二数据矩阵中的方差相关的参数。在已将第一和第二数据矩阵分割 成部分 1 和 2 后 ( 步骤 332), 通过上述等式 1 评价这种分割 ( 步骤 336)。在步骤 340, 检 索来自上面等式 1 的参数 “a” 和 “b” 。在一些实施例中, 参数 “a” 和 “b” 是由用户选择的。 在步骤 344, 处理器使用沿由 t1 得分 ( 步骤 340) 和参数 “a” 和 “b” 表征的直线的值分析 等式 1 以评价部分 1 和 2 是否使参数 “u” 的值最小化。如果部分 1 和 2 不使 “u” 的值最小 化, 则处理器继续评价沿 t1 直线 ( 例如得分矢量 ) 的值。处理器标识使参数 “u” 的值最小 化的一个或多个值 ( 步骤 348)。选择使来自等式 1 的 “u” 值最小的 t1 得分的值, 并用组 1 和组 2 代替 ( 步骤 348) 部分 1 和部分 2( 步骤 332)。
由于在步骤 344-348 中使参数 “u” 的值最小化, 因此基于等式 1 针对参数 “a” 和 “b” 的特定值, 组 1 和组 2 各自具有 t1 得分、 X 矩阵数据和 Y 矩阵数据的最小组内方差以及 t1 得分、 X 矩阵数据和 Y 矩阵数据的最大组间方差。组 1 和组 2 包含来自步骤 304 检索出 的第一和第二数据矩阵的数据子集。组 1 可认为包含第三数据矩阵 ( 例如包含来自分入组 1 的第一 X 矩阵的值的 X 矩阵 ) 和第四数据矩阵 ( 例如包含来自分入组 1 的第一 Y 矩阵的 值的 Y 矩阵 ), 如图 1B 所示。同样, 组 2 可包括含 X 矩阵和 Y 矩阵的两个数据矩阵, 这两个矩阵包括在步骤 304 检索出的值, 如图 1B 所示。
在步骤 352 中, 评价组 1 和组 2 中的数据点数目以及参数 “u” 的值。如果组 1 中 数据点的数目 n 小于数据点的阈值数 n 阈值或如果 “u” 值超过预定值 ( 例如 1), 则组 1( 或组 2) 终止 ( 步骤 360)( 例如没有组的进一步分割发生 )。如果 n 等于或超出组 1( 或组 2) 的 n 阈值, 并且 “u” 值小于预定值 ( 例如 1), 则方法进至询问步骤 356。在步骤 356, 评价分级层 或层面的数目并将其与规定限值比较。如果分级层数小于该限值, 则方法返回到步骤 304 并将组 1 中的数据矩阵作为数据 ( 例如在步骤 316、 320 对其执行偏最小二乘或正交偏最小 二乘分析的数据矩阵 ) 开始处理。当分级层的数目等于该限值时, 过程终止 ( 步骤 360)。 此后以与组 1 相同的方式处理组 2。 流程图 300 中的方法被迭代, 直至达到任一指定的最大 PLS 树层数或组分割已终止且没有组包括超过数据点的阈值数 n 阈值为止。在一些实施例 中, 树层数目的限值 n 阈值和 / 或 “u” 值的限值是由用户指定的。
图 4 是表述在偏最小二乘 ( 或 OPLS) 树分析后分级组织的数据的分类树 400。分 类树 400 包括含第一数据集 408 的第一分级层 404。第一分级层 404 可以是在后继处理发 生前从存储器检索出 ( 或分级顶层 ) 的数据的指示。 在一些实施例中, 第一分级层 404 是已 被事先处理的数据的指示 ( 例如第一数据集 408 表示已被分割的子组 )。第一数据集 408 包括例如图 1B 所示的第一数据矩阵 ( 例如 X 矩阵 ) 和第二数据矩阵 ( 例如 Y 矩阵 )。
分类树 400 还包括第二分级层 412。第二分级层 412 包括数据的第一组 416 和第 二组 420。数据的第一组 416 和第二组 420 是根据图 3 的流程图 300 表述并如图 1B 所示 的方法确定的。例如, 第一组 416 和第二组 420 是通过最小化等式 1 中的参数 “u” 标识的, 参数 “u” 可基于第一数据集 408 的第一数据矩阵的第一 t1 得分和第一数据集 408 的第二 矩阵的方差确定。对于第一 t1 得分和 Y 矩阵, 第一组 416 关于或相对于第二组 420 拥有最 小内部方差和最大方差。第一组 416 例如图 1B 所示地包括来自第一数据矩阵的 X 矩阵值 和 Y 矩阵值。第二组 420 基于例如图 1B 所示的分割包括来自第一数据矩阵的不同的 X 矩 阵值和 Y 矩阵值。
分类树 400 包括第三分级层 424。第三分级层 424 包括数据的第一子组 428、 第二 子组 432、 第三子组 436 以及第四子组 440。第一子组 428 和第二子组 432 是以类似于如 何从第一数据集 408 确定第一组 416 的方式确定的 ( 例如上面针对图 1B 和图 3 描述的那 样 )。更具体地, 基于偏最小二乘 ( 或 OPLS) 分析从数据的第一组 416 中的数据计算出第二 t1 得分。第二 t1 得分连同 X 矩阵和 Y 矩阵中的方差一起用来对第一组 416 中的数据按等 式 1 最小化的参数 “u” 。当参数 “u” 被最小化时, 产生第一子组 428 和第二子组 432。第三 子组 436 和第四子组 440 同样是使用基于第二组 420 的偏最小二乘分析计算出的第三 t1 得分基于第二组 420 中的数据确定的。
分类树 400 包括第四分级层 444。第四分级层 444 包括从第三分级层 424 的第一 子组 428 确定的第一亚子组 448 和第二亚子组 452。由于第二子组 432 的尝试子组中的数 据点数目不超出继续分析的数据点 ( 也称分支 ) 的阈值水平或包含超出 1.0 的参数 u 的值, 因此第二子组 432 没有出现在第四分级层 444 中。第四分级层 444 还包括以与第一亚子组 448 和第二亚子组 452 相同方式确定的附加亚子组 456a、 456b、 456c、 456d。
要理解, 每个分级层 404、 412、 424 和 444 均是表征来自直接上一分级层的数据 ( 例如第一数据矩阵和第二数据矩阵 )。 例如, 在第一分级层 404 中 ( 例如在数据集 408 中 )存在由第二分级层 412 表征的数据矩阵, 但处于未分级、 未分类形式。分类树 400 中的每个 “分支” 460 代表使用偏最小二乘 ( 或 OPLS) 分析 ( 例如根据图 3 的流程图 ) 分类或分割数 据的过程。分支 460 表征图 1B 的方框图 160。如图所示, 每个数据组和前一分级层之间沿 图 4 中 y 轴的距离大约是相同的 ( 例如亚子组 448 和子组 428 之间沿 y 轴的距离近似等于 亚子组 456c 和子组 440 之间的距离 )。在一些实施例中, 不同分级层上各数据组之间的距 离不同 ( 例如组 416 和子组 428、 432 之间沿 y 轴的距离可不同于组 420 和子组 436、 440 之 间沿 y 轴的距离 )。在一些场合下, y 轴代表关联于分割成子组的 t1 得分。
图 5 是用于显示数据的示例性用户界面 500。用户界面 500 包括第一显示部分 504、 第二显示部分 508 和第三显示部分 512。第一显示部分 504 包括图 1 的图表 100。第二 显示部分 508 包括图 4 的分类树 400。第一显示部分 504 和第二显示部分 508 允许用户快 速和 / 或直观地将来自分类树 400 的数据关联于图表 100 上的相应数据。例如, 如果用户 对包含在分类树 400 的第一亚子组 448 中的数据感兴趣, 用户可在第二显示部分 508 中选 择来自分类树 400 的亚子组 448。所选择的亚子组 448 在第二显示部分 508 中用椭圆 516 或其它图形指示手段突出表示。相应椭圆 520 或其它图形指示 ( 例如突出显示 ) 出现在第 一显示部分 504 的图表 100 中。椭圆 520 或其它图形指示用来指示出现在第一亚子组 448 中的数据。在一些实施例中, 亚子组 448 中的数据不被紧密群集或不便由椭圆 520 或其它 图形指示来标识。在这些实施例中, 图表 100 中的数据可以不同方式表示 ( 例如通过颜色 或突出显示或通过直线或拟合曲线 )。 同样, 图 4 的分类树 400 的其它分级层可由用户选择并显示在第一显示部分 504 中。要理解, 可将附加信息呈现在第一显示部分 504 的图表 100 中。例如图所示, 图表 100 包括直线 125( 对应于第一分级层 404 的 t1 得分 ) 和将数据 105 分割成第一组或区段 130 和第二组或区段 135 的直线 145。第一组 130 对应于第一分级层 404 中的第一组 416, 而第 二组 135 对应于第一分级层 404 中的第二组 420。 当第一组 416 被进一步分成第一子组 428 和第二子组 432 时, 可将附加直线 ( 对应于附加 t1 得分和从中通过的垂直线 ) 添加至第一 显示部分 504 中的图表 100。
第三显示部分 512 包括向处理器 ( 例如图 2 中的处理器 210) 提供指令以处理所 选择数据的多个用户可选按钮 550a-550h。 如图所示, 已在第二显示部分 508 中选择了亚子 组 448。用户可进一步通过按钮 550a-550h 研究或评价亚子组 448 中数据的特性。例如, 按钮 550a 关联于计算亚子组 448 中 t1 值的方差的模块, 而 t1 值的方差是在用户选择按钮 550a 时计算的。 如本文所述, 对分类树中特定组的统计计算是指对数据矩阵执行的计算, 其 结果可以是一个矩阵或单个值 ( 例如平方和 )。
按钮 550b 关联于计算亚子组 448 中 t1 值的标准差的模块, 而 t1 值的标准差是在 用户选择按钮 550b 时计算的。按钮 550c 关联于计算亚子组 448 中 Y 值的方差 ( 例如亚子 组 448 的第二数据矩阵或 Y 矩阵的方差 ) 的模块。按钮 550c 类似于按钮 550a, 除了分析亚 子组 448 中的不同值 ( 例如 t1 值对 Y 值 ) 以外。按钮 550d 关联于计算亚子组 448 中 Y 值 的标准差的模块。按钮 550d 类似于按钮 550b, 除了分析亚子组 448 中的不同值 ( 例如 t1 值相对于 Y 值 ) 以外。
按钮 550e 和 550f 关联于分别计算亚子组 448 中 t1 值和 Y 值的平均值的模块。 可 根据若干计算手法中的任一种计算非平均值, 包括确定中值或 t1 值或 Y 值或矩阵的模。在
一些实施例中, 计算手法是由用户选择的。响应用户选择按钮 550e-550f 计算的 t1 值和 / 或 Y 值的平均值可指示供进一步评价 ( 例如产出数据 ) 或分析的数据。
按钮 550g 关联于计算 R2 的模块, R2 指示 Y 值或产出值的方差并可用来确定 PLS 或 OPLS 分析的健康度, 例如 t1 得分直线如何精确地拟合于相应 Y 数据。在一些实施例中, 2 R 称为多重相关系数。按钮 550h 关联于计算 Q2 的模块, Q2 是指示亚子组 448( 或任意 Y 矩 阵 ) 中的总方差的一小部分, 这是使用互相证实过程的特定 PLS 或 OPLS 模型预测的。
在一些实施例中, 按钮 550a-550h 可关联于分级层 404、 412、 424 和 444 而不是关 联于分级层中的各个分支或组。
在一些实施例中, 可使用近似搜索来增大确定优选分割的速度。 例如, 近似搜索可 基于数据搜索曲线的多项式逼近。一例搜索曲线的逼近是逐段的二次多项式逼近。图 6 是 示出使用近似搜索的示例性算法的流程图 600。
在步骤 604, 选择用于每个多项式逼近的点数 (npol)。点数 (npol) 可由用户选择。 如果用户尚未对该点数 (npol) 选择一值, 则对该点数 (npol) 使用默认值 ( 步骤 608)。例如, 点数 (npol) 的默认值可用函数表示为 npol = min(11, sqrt(N)), 其中 N 表示数据集中的总点 数。 在已确定点数 (npol) 后, 确定用来拟合数据的多项式段数 ( 步骤 612)。用于确定 多项式段数的函数关系的例子 Npoly 为 Npoly = min(7, integer[2N/npol]-1)。
在已确定多项式段数 Npoly 后, 计算逼近的初始步长 ( 步骤 616)。确定的步长应覆 盖除第一观察资料和最末观察资料以外的观察资料 ( 例如 X 变量 ) 的范围, 并使每个多项 式段与多项式段的中点每侧的观察资料的一半重叠。
对每个多项式段中的每个点计算等式 1 中参数 “u”的 “直截表达”或值 ( 步骤 620)。在针对每个多项式段中每个点对等式 1 进行计算后 ( 步骤 620), 例如使用最小二乘 拟合方法使二次多项式拟合于每个多项式段 ( 步骤 624)。步骤 624 也可使用其它拟合手 法。计算在拟合的多项式段上产生最小值的 “u” 值 ( 步骤 628)。
在计算出最小值之后 ( 步骤 628), 对步长进行评估 ( 步骤 632)。拟合过程的步长 是多项式中两个点之间的观察资料数的表征。如果步长不超出预定值 ( 例如 1), 则过程终 止 ( 步骤 636)。作为替代, 如果步长超出预定值 ( 例如 1), 则减小步长 ( 步骤 640)。例如, 可将步长四等分 ( 即将步长除以 4)。在步长已减小后, 产生新的多项式段 ( 步骤 644)。将 新多项式段居中在参数 “u” 的最小值周围, 以使接近一半的数据落在多项式段中央的任一 侧。对于新多项式段, 为段中的每个点确定 “u” 值 ( 步骤 648)。步骤 648 在操作上类似于 发生在步骤 632 评估步长之前的步骤 620。
在步骤 648 最小化参数 “u” 的值后, 多项式被拟合至新段 ( 步骤 652), 并在新多项 式段上计算参数 “u” 的最小值 ( 步骤 656)。在步骤 648 之后, 再次评估步长 ( 步骤 632), 如果步长不超出预定数 ( 例如 1), 过程终止 ( 步骤 636)。否则, 过程迭代直到步长落在预 定阈值之下为止。
上述手法可实现在数字电路或计算机硬件、 固件、 软件或其组合中。这种实现可 以是计算机程序产品, 例如有形地体现在诸如机器可读存储设备的信息载体中的计算机程 序, 以供例如可编程处理器、 计算机或多台计算机的数据处理装置执行或控制其操作。 计算 机程序可以包括编译或解释语言的任何形式编程语言撰写, 并可配置成任意形式, 包括自
立程序或模块、 组件、 子例程或适于用在计算环境中的其它单元。 计算机程序可配置成在一 个地点或分布在多个地点并由通信网络互连的一台计算机或多台计算机上执行。
方法步骤可由一个或多个可编程处理器执行, 所述可编程处理器执行计算机程序 以通过处理输入数据并产生输出而实现技术功能。方法步骤也可由例如 FPGA( 现场可编程 门阵列 ) 或 ASIC( 专用集成电路 ) 的专用逻辑电路执行, 并且装置也可实现为这种专用逻 辑电路。模块可以指实现该功能的计算机程序和 / 或处理器 / 专门电路的一些部分。
适于执行计算机程序的处理器可包括例如通用和专用微处理器以及任何形式数 字计算机的任意一个或多个处理器。总的来说, 处理器从只读存储器或随机存取存储器或 其两者接收指令和数据。计算机的基本元件是执行指令的处理器以及存储指令和数据的 一个或多个存储器设备。总的来说, 计算机还包括例如磁盘、 磁光盘或光盘的一个或多个 存储数据用海量存储设备, 计算机或者可操作地耦合于该海量存储设备以从中接收数据或 将数据传至那里或既接收数据又传输数据。数据传输和指令也可发生在通信网络上。适 于体现计算机程序指令和数据的信息载体包括所有形式的非易失性存储器, 例如包括诸如 EPROM、 EEPROM 的半导体存储器设备以及闪存设备、 例如内部硬盘或移动盘的磁盘、 磁光盘 以及 CD-ROM、 DVD-ROM 盘。处理器和存储器可补充以专用逻辑电路或包含在专用逻辑电路 中。
本文使用的术语 “模块” 和 “功能” 意指——但不局限于——执行某些任务的软件 或硬件组件。模块可较为有利地配置成留驻在可寻址存储介质上, 并配置成在一个或多个 处理器上执行。模块可完全或部分地通过通用集成电路 (IC)、 FPGA 或 ASIC 实现。因此, 模 块可包括例如组件, 比如软件组件、 面向对象的软件组件、 类组件和任务组件、 进程、 函数、 属性、 过程、 子例程、 程序代码段、 驱动器、 固件、 微代码、 电路、 数据、 数据库、 数据结构、 表、 阵列和变量。 为某些组件和模块提供的功能可并入较少组件和模块中或进一步分割成附加 组件和模块。另外, 组件和模块可较为有利地在许多不同平台上实现, 这些平台包括计算 机、 计算机服务器、 例如应用启用的交换机或路由器的数据通信基础设施设备或例如公共 或私人电话交换机或专用交换机 (PBX) 的电信基础设施设备。在任一这些情形下, 可以或 者通过写入所选平台本地的应用程序或者通过将该平台接口于一个或多个外部应用引擎 而达成实现。
为了提供与用户的交互, 上述技术可实现在具有显示设备的计算机上, 例如 CRT( 阴极射线管 ) 或 LCD( 液晶显示 ) 监视器, 以将信息显示给用户, 还具有键盘和定点设 备, 例如鼠标或跟踪球, 籍此用户可将输入提供给计算机 ( 例如与用户界面元交互 )。其它 种类的设备可用来提供与用户的交互 ; 例如提供给用户的反馈可以是任何形式的传感器反 馈, 例如视觉反馈、 音频反馈或触觉反馈 ; 而来自用户的输入可以任何形式接收, 包括声波、 语音或触觉输入。
上述技术可实现在分布式计算系统中, 该系统包括例如数据服务器的后端组件和 / 或例如应用服务器的中间组件和 / 或例如具有图形用户界面和 / 或网络浏览器的客户计 算机 ( 通过它用户可与示例实现交互 ) 的前端组件或这些后端、 中间或前端组件的任意组 合。系统的组件可通过例如通信网络的任何形式数字数据通信介质互连。也称通信信道的 通信网络的例子包括局域网 (LAN) 和例如互联网的广域网 (WAN), 并包括有线和无线网络 两者。 在一些例子中, 通信网络可特征化为虚拟网络或子网, 例如虚拟局域网 (VLAN)。 除非另有明确声明, 否则通信网络也可包括 PSTN 的全部或一部分, 例如由特定载体享有的一部 分。
计算系统可包括客户机和服务器。 客户机和服务器一般彼此远离并典型地通过通 信网络相互作用。客户机和服务器依靠运行在各计算机并彼此具有客户机 - 服务器关系的 计算机程序而发生关系。
各实施例描述为与一个或多个通信路径相连或由一个或多个通信路径通信。 通信 路径不局限于传输数据的特定介质。 可使用电、 光、 声、 物理、 热信号或其任意组合在通信路 径上发送信息。通信路径可包括多个通信信道, 例如数据流容量相同或变化的多路复用信 道。
多个用户输入可用来配置描述的用户界面特征的参数。这些输入的例子包括按 钮、 单选按钮、 图标、 复选框、 组合框、 菜单、 文本框、 工具提示、 拨动开关、 按钮、 滚动条、 工具 栏、 状态栏、 窗口或关联于用户界面使用户与本文所述任何模块或系统通信和 / 或将数据 提供给这些模块或系统的其它合适图标或窗口小部件。
尽管已参照特定实施例示出和描述了本发明, 然而本领域内技术人员应当理解, 可对其作出各种形式和细节的变化而不脱离本发明由所附权利要求书定义的精神和范围。