用于电子设计自动化(EDA)应用的数据集的基于超空间的处理的制作方法

文档序号:33506240发布日期:2023-03-18 01:16阅读:78来源:国知局
用于电子设计自动化(EDA)应用的数据集的基于超空间的处理的制作方法
用于电子设计自动化(eda)应用的数据集的基于超空间的处理


背景技术:

1.随着现代技术的进步,计算系统可以访问、生成、和处理越来越多的数据。复杂数据集可以包括许多数据点,并且数量可以容易地达到数亿、数十亿、数万亿或更多的数据样本。在集成电路技术变得越来越复杂的电子设计自动化(electronic design automation,eda)技术中,eda过程可以生成、消耗、或者以其他方式处理越来越大的数据集。
附图说明
2.在以下具体描述中并参考附图描述了某些示例。
3.图1示出了支持超空间生成和对数据集进行基于超空间的处理的计算系统的示例。
4.图2示出了由超空间生成引擎进行的示例超空间生成。
5.图3示出了由超空间生成引擎针对从主成分空间量化的超空间确定超盒维度的示例。
6.图4示出了使用所生成的超空间对数据集进行下采样的基于超空间的处理的示例。
7.图5示出了使用所生成的超空间对数据集进行分类的基于超空间的处理的示例。
8.图6示出了系统可以实施以支持超空间生成和对数据集进行基于超空间的处理的逻辑的示例。
9.图7示出了支持超空间生成和对数据集进行基于超空间的处理的计算系统的示例。
具体实施方式
10.现代计算系统和应用可生成大量数据。对这种数据的处理可能需要密集的计算资源,特别是当大数据集中的数据点的数量为数亿、数十亿、数万亿以及可能更多时。示例数据集分析可以包括分类或下采样过程,并且对大数据集的有意义的分类、下采样或其他处理可能对现代计算系统和应用带来不可接受的性能损失。虽然可以对大数据集执行简化的处理技术(例如随机混洗淘汰选择(down selection)),但是这样的处理技术可能不适合于一致地捕获对数据集的准确处理所必需的离群数据点。一些分类技术(如k均值聚类或马氏(mahalanobis)聚类计算)可以提供分类能力,但是具有o(n2)复杂度。对于数以百万计或更多的数据集,使用具有o(n2)复杂度的这种技术的数据集分类可能花费过多的时间或者需要不切实际的大型或复杂的计算系统。
11.在eda背景下,由于集成电路(ic)复杂度的增加,为eda过程生成或使用的数据集的大小正在增加。使用具有o(n2)复杂度的现有技术对这种巨大eda数据集进行有意义的分类、下采样、或其他处理可能是具有挑战性的、耗时的、不准确的,或者需要不切实际量的计算资源。例如,光学的或抗蚀的模型校准流程可能要求对所制造的芯片进行扫描电子束显
微镜(sem)测量的准确度,但是sem技术可能在测量带宽方面受到限制,并且需要从数千万(或更多)个潜在的兴趣点芯片位置进行淘汰选择。作为另一个示例,当训练集超过数百万个训练数据样本时,基于机器学习(ml)的光学邻近修正(opc)模型校准的有效性可能受到限制,但是eda应用可能容易地获得数千万或数亿个opc样本点。以类似的方式,用于面向制造的设计(dfm)、热点预测、或其它eda过程的电路部分的模糊模式匹配可能需要数千万或数亿的电路图像比较,并且使用具有o(n2)复杂度的现有技术对这种大eda数据集的分类分析在计算时延和必要的计算资源方面对于现有eda系统可能是不切实际的。
12.本文的公开内容可以提供用于超空间生成和对数据集进行基于超空间的处理的系统、方法、设备、和逻辑。如本文所用,超空间可以指或包括具有多个维度的坐标空间,以映射数据集中的数据点的多个参数值(无论是直接映射还是作为经变换的参数映射),并且其中坐标系的至少一部分被分割成多个超盒(hyperbox)。所生成的超空间的超盒可以用于以高效且准确的方式处理大数据集。如本文更详细描述的那样,超空间可以通过变换数据集的特征空间并且将经变换的特征空间量化成一组超盒来生成。对数据集的处理可以通过处理包含数据集的至少一个或多个映射特征向量的超空间的量化超盒来执行。对超盒的维度确定可以考虑数据集的数据点中的数据差异,并且对数据集进行基于超空间的处理可以增加下采样数据集中的范围一致性、分类准确度、或两者的组合。
13.本文描述的超空间生成和基于超空间的处理特征可具有o(n)复杂度,并且所描述的超空间特征可因此展现与其他o(n2)处理技术相比增加的计算效率和速度,无论是在执行时延方面还是在所需计算资源方面。具体地,在eda背景下,本公开的超空间特征可以提高处理eda数据集的计算效率,以用于基于ml的opc模型校准、用于dfm过程的模糊模式匹配、用于sem测量目标的淘汰选择等等。附加地或替代性地,本文描述的超空间特征可支持对数据集中的离群数据点的识别、采样、或其它处理,与简化的随机淘汰选择技术相比,这可提高eda热点预测分析、sem测量、或其它eda数据集分析的准确度或覆盖范围。
14.根据本公开的这些和其它超空间特征和技术益处在本文中更详细地描述。
15.图1示出了支持超空间生成和对数据集进行基于超空间的处理的计算系统100的示例。计算系统100可以采取单个或多个计算设备(例如应用服务器、计算节点、台式或膝上型计算机、智能电话或其他移动设备、平板设备、嵌入式控制器等)的形式。计算系统100可以实施任何类型的应用、电路或数据处理系统,来生成、消耗、分析、或以其他方式处理数据。仅作为几个说明性示例,计算系统100可以采取以下形式:实施eda应用特征的eda系统、被配置来分析dna链或其他复杂生物数据集的医学分析系统、具有对由复杂物联网(iot)传感器系统捕获的数据点的分析能力的过程自动化系统、被配置来处理车辆交通数据点的实时测量结果并对其作出反应的交通控制器系统,以及采取近乎无数的更多的形式。
16.计算系统100可以实施本文描述的任何超空间特征。在这样做时,计算系统100可以生成用于数据集的超空间,包括通过变换表示数据集的特征向量集的特征空间。特征空间的变换可以通过任何数量的多变量分析来执行,并且计算系统100可以通过将经变换的特征空间(或其至少一部分)分割成一组超盒来进一步量化经变换的特征空间。超盒的维度值可以由计算系统100确定,以具体地考虑经变换的特征空间的参数之间的方差(例如基于可归因于经变换的特征空间的主成分的数据集方差)。通过这种生成的超空间,计算系统100可以支持对从其生成超空间的原始数据集、与原始数据集不同的其他数据集、或两者的
组合进行基于超空间的处理。
17.作为支持本文描述的超空间特征的任何组合的示例实施方式,图1所示的计算系统100包括超空间生成引擎110和超空间处理引擎112。计算系统100可以以各种方式实施引擎110和引擎112(包括其组件),例如作为硬件和编程。用于引擎110和引擎112的编程可以采取存储在非瞬态机器可读存储介质上的处理器可执行指令的形式,并且用于引擎110和11引擎2的硬件可以包括执行这些指令的处理器。处理器可以采取单处理器或多处理器系统的形式,并且在一些示例中,计算系统100使用同一计算系统特征或硬件组件(例如公共处理器或公共存储介质)来实施多个引擎。
18.在操作中,超空间生成引擎110可访问特征向量集,并且特征向量集中的给定特征向量可表示数据集中的给定数据点的多个参数的值。在操作中,超空间生成引擎110还可以对特征向量集执行主成分分析,并且主成分分析可以将特征向量集的特征空间变换成由从特征空间旋转的主成分轴组成的主成分空间。主成分轴从特征空间的旋转可以基于为主成分空间的主成分而确定的本征值。超空间生成引擎110还可以以如本文所述的各种方式中的任何一者将主成分空间量化成由超盒组成的超空间。在操作中,超空间处理引擎112可以根据特征向量集到超空间的超盒的映射来处理数据集,以本文描述的各种方式中的任何一者来这样做。
19.接下来更详细地描述这些和其它超空间特征。在eda过程、能力、特征、和数据集的背景下,本文呈现了一些具体示例。然而,本文描述的超空间特征的任何组合可以一致地适用于任何类型领域的任何类型的数据集,例如机场筛选、医疗诊断、智能网格优化、网络数据包数据的网络安全分析、信用卡欺诈检测、以及用于处理任何类型的数据集的近乎无数的其他应用。
20.图2示出了由超空间生成引擎110进行的示例超空间生成。如本文所述,超空间可以指或包括具有多个维度的坐标空间,以映射数据集中的数据点的多个参数值(无论是直接映射还是作为经变换的参数映射),并且其中坐标系的至少一部分被分割成多个超盒。超空间生成引擎110可以针对任何类型的数据集生成由超盒组成的超空间,所述数据集包括具有数千万或数亿、数十亿、数万亿、或更多的数据点的大数据集。数据集中的每个数据点可以表示离散数据样本,例如eda背景下的电路位置或opc片段、银行背景下的信用卡交易、网络架构系统中的数据包、医疗背景下的患者数据等。
21.为了生成用于给定数据集的超空间,超空间生成引擎110可以访问数据集的特征向量集。在图2所示的示例中,超空间生成引擎110访问特征向量集210。特征向量集210可以由特征向量组成,并且特征向量集210中的每个特征向量可以表示数据集中的离散数据点。在这种意义上,超空间生成引擎110可以经由表示数据集的特征向量集来支持对该数据集的分析和处理。由超空间生成引擎110访问的特征向量可以以任何格式实施,并且特征向量集210的特征向量可以跟踪数据集的数据点的任何数量的特性。在一些实施方式中,特征向量可以采取针对数据集的数据点捕获的数值参数值的n维向量的形式。作为说明性示例,特征向量集210中的每个特征向量可以表示位于ic设计上的兴趣点,并且特征向量的示例参数值可以在数值上表示opc片段和几何数据、芯片位置数据、对应的电路布局数据、或者兴趣点芯片位置的任何数量的附加或替代特性。
22.因此,超空间生成引擎110可以支持使用任何格式、类型、或表示的特征向量的超
空间生成和基于超空间的处理。特征向量集210的特征向量中表示的特定参数可以是预定的、可配置的、或两者。在这方面,超空间生成引擎110可以灵活地支持各种类型和配置的输入数据集的处理。超空间生成引擎110也不需要限于特征向量集210中表示的固定数量的或阈值数量的数据点参数,并且可以灵活地支持对不同复杂度和范围的数据集的处理和分析。
23.在一些实施方式中,超空间生成引擎110本身可以通过根据配置的特征向量格式提取输入数据集中的数据点的参数值,来从输入数据集生成特征向量集210。在其他实施方式中,特征向量集210可以由另一计算实体生成或提取,该另一计算实体例如为eda应用的另一组件或模块,其将特征向量集210配置成相关数据点特性的特定特征向量格式。
24.特征向量集210中的特征向量可以被归一化,无论是由超空间生成引擎110在访问特征向量集210时进行还是在其他实施方式中在由超空间生成引擎110访问特征向量集210之前进行。可以应用任何数量的归一化技术来对所访问的特征向量的参数值进行归一化,例如通过最小/最大缩放器、标准缩放器、或其他归一化过程来进行。特征向量集210的归一化(无论是由超空间生成引擎110还是由另一实体进行)可以减少特征(例如参数)之间的人为权重差异,特别是当以不同单位测量特征时,并且这样做可以增加将数据集表示为特征向量集时的数据完整性。
25.继续超空间生成示例,超空间生成引擎110可以使用任何数量的多变量分析技术来变换所访问的特征向量集的特征空间。特征向量集的特征空间可以指具有与特征向量集的特征向量中表示的参数的数量相等的维度数量的坐标系,并且特征空间的每个轴可以表示对应参数的值。对于捕获数据集中的数据点的十二(12)个不同参数的特征向量,这样的特征向量集的特征空间可以是12维的,并且同样地捕获“n”个不同参数的特征向量可以在n维特征空间中表示。特征向量集210的特征空间(的至少一部分)的示例在图2中示出为特征空间220。为了视觉清晰起见,仅例示了特征空间220的两个维度,具体针对特征向量集210的参数1(parameter1)和参数2(parameter2)。特征空间220中的每个点可以表示特征向量集210的特征向量,并且可以分别根据特征向量的parameter1和parameter2的参数值而被映射在特征空间220中。
26.超空间生成引擎110可以通过测量、表征、或表示数据集中的数据点的数据方差的任何多变量分析过程来变换特征向量集的特征空间。方差(也称为数据方差或数据集方差)可以指对数据集中数据点的分布的任何测量结果,无论是对于数据集的特定维度还是对于作为整体的数据集的数据点。在一些情况下,方差可以由超空间生成引擎110计算为与数据集或数据集维度的均值的平方差的平均值。本文考虑了数据集的方差的任何形式。
27.在一些实施方式中,超空间生成引擎110通过主成分分析(pca)来变换特征空间。因此,超空间生成引擎110可以实施任何类型的pca或任何其它多变量变换或维数缩减能力,以支持特征空间的变换。通过对所访问的特征向量集的特征空间执行pca(或任何其他多变量变换),超空间生成引擎110可以将特征向量集映射到不同的坐标系中,该不同的坐标系进一步使数据集的参数值相关并且通过变换来支持数据集中的方差确定。
28.为了说明,超空间生成引擎110可执行pca以将图2的特征空间220变换成图2中所示的主成分空间230。主成分空间230在图2中被示出为通过主成分轴映射主成分pc1和pc2的值的二维坐标系。主成分空间230的每个主成分可以是特征空间220的参数的组合。以换句
话来说,主成分空间230的主成分轴可以由超空间生成引擎110从特征空间220旋转,并且从特征空间220旋转主成分轴可以基于为主成分空间230的主成分而确定的本征向量或本征值。主成分空间230中的每个点可以表示特征向量集210的特征向量(并且因此表示数据集的不同数据点),但是被映射到主成分空间230中作为被变换成主成分值的特征向量。映射到经变换的特征空间(例如主成分空间310)的特征向量在本文中被称为经变换的特征向量。
29.在一些实施方式中,超空间生成引擎110可以通过协方差(或相关)矩阵表示从特征空间到对应的主成分空间的变换,并且协方差矩阵的本征向量可以表示特征空间的每个参数如何映射到主成分空间的每个主成分。超空间生成引擎110还可以确定主成分空间的每个主成分的本征值,并且所确定的主成分本征值可以表示可归因于数据集上的主成分的数据集方差(例如较高的本征值可以指示给定的主成分相对于具有较低本征值的其他主成分表现出、测量、或表征数据集的更大数据方差)。
30.在图2的示例中,超空间生成引擎110可以生成主成分空间230以包括至少两个维度,包括分别沿着主成分1(principal component1)和主成分2(principal component2)的轴(为了视觉清晰,在图2中仅描述了主成分空间310的两个维度)。在一些实施方式中,超空间生成引擎110可以减少经变换的特征空间(例如主成分空间)的维数,并且可以以任何数量的方式这样做。在一些实施方式中,超空间生成引擎110可以将主成分空间中的维度数量减少到具有数据集的最高方差的主成分的阈值数量。作为说明性示例,超空间生成引擎110可以将具有十五个参数(并且因此十五个维度)的参数值的特征向量集的维数减少到十维主成分空间中,并且通过去除从具有最低数据集方差(例如最低确定的本征值)的特征空间变换的五个主成分来这样做。注意,超空间生成引擎110不需要减少经变换的特征空间的维数,并且因此由超空间生成引擎110生成的主成分空间可以具有等于对应特征向量集的维数的维数(在这种情况下,主成分空间中的主成分的数量等于特征向量集的特征向量中表征的参数的数量)。
31.返回到图2中的示例,超空间生成引擎110可以从经变换的特征空间生成超空间。超空间生成引擎110可以通过将经变换的特征空间(或其至少一部分)量化成一组超盒来这样做。量化经变换的特征空间可指将经变换的特征空间的至少一部分分割成超盒,且超盒可指沿着由超空间生成引擎110确定的经变换的特征空间的每个维度具有超盒维度值的“n”维封闭形状。特别地,超空间的超盒的维度数量可以等于经变换的特征空间的维度数量。对于pca变换,由超空间生成引擎110量化的超盒可以具有用于主成分空间的每个主成分的维度大小。超空间生成引擎110可以将沿着主成分空间中的给定主成分轴的超盒的维度大小确定为给定主成分轴的主成分的所确定本征值的函数,本文将更详细地描述。
32.由超空间生成引擎110生成的超空间的示例在图2中被例示为超空间240。在图2的这个示例中,超空间240包括六(6)个超盒,包括具有实心周界的超盒241和五(5)个其他未标记的超盒。共同地,图2的六(6)个示例超盒封装了被映射到主成分空间230中的数据集的经变换的特征向量。在这方面,超空间240可以采取被分割成一组超盒的经变换的特征空间(例如主成分空间230)的形式。
33.在一些实施方式中,超空间生成引擎110可以将超盒表示为“n
”‑
棱正交的多胞形(也称为超矩形),其可以采取具有正交面的多维边界形状的形式。如本文所述,超空间中的
超盒的维度数量“n”可等于超空间从其量化的经变换的特征空间的维度数量。例如,超空间生成引擎110可以通过将5维主成分空间(或其一部分)量化成一组5维超盒来生成超空间。已量化的超空间的超盒的维度确定可以基于对应主成分的方差而变化,例如,如下面参考图3所讨论的那样。
34.超空间生成引擎110可以用超盒量化经变换的特征空间,以便通过量化来处理、分类、或以其他方式分析数据集。在某种意义上,由超空间生成引擎110生成的超盒可以表示经变换的特征空间中的给定群集或给定分类单元,超空间处理引擎112或另一处理实体可以通过其解释、处理、分析、或表征数据集中的数据点。而且,超空间生成引擎110可以选择性地确定超空间中的超盒的维度,并且可以基于主成分方差、不同主成分之间的方差比、用户指定的或可配置的维度参数、或者以其他方式来这样做,以具体地分割经变换的特征空间,从而支持对映射到超空间中的经变换的特征向量的后续表征和数据处理。
35.接下来参考图3更详细地描述对超盒维度值的确定。
36.图3示出了由超空间生成引擎110针对从主成分空间量化的超空间确定超盒维度的示例。在确定超盒维度时,超空间生成引擎110可以访问除数值302和本征值304。除数值302可以是预定的或用户配置的,并且超空间生成引擎110可以通过除数值302控制经变换的特征空间中的分割的超盒的编号、密度、或粒度。本征值304可以指经变换的特征空间的主变量之间的方差的任何指示,并且作为示例,可以采取从数据集的特征空间变换的主成分空间的主成分本征值的形式。通过图3的示例呈现了在确定超盒维度中由超空间生成引擎110使用除数302和本征值304。
37.在图3中,超空间生成引擎110将图3所示的示例经变换的特征空间量化成主成分空间310。主成分空间310可以从特征空间变换,并且包括沿着主成分空间310的相应轴的至少两个被标记为pc1和pc2的主成分。为了将主成分空间310量化成超空间,超空间生成引擎110可以识别主成分空间310的主成分中的第一主成分,该第一主成分具有主成分空间310的主成分中的数据集的最高方差。如本文所述,可以通过确定的主成分本征值来测量可归因于主成分空间的主成分的数据集方差,并且超空间生成引擎110可以将第一主成分确定为具有最大(例如数值上最高的)本征值的主成分空间310的主成分。在图3的示例中,超空间生成引擎110可以例如通过确定所访问的本征值304中的最高本征值来将第一主成分确定为主成分空间310的pc1。
38.接下来,超空间生成引擎110可以确定沿着第一主成分的主成分轴(在该示例中,沿着pc1轴)的超盒维度大小。超空间生成引擎110可以将沿着第一主成分的主成分轴的超盒的维度大小设置为第一主成分的值范围和预定的除数值(例如除数值302)的函数。特别地,超空间生成引擎110可以确定映射到主成分空间310中的特征向量集的第一主成分的值范围。如本文所述,由超空间生成引擎110映射到主成分空间中的数据集的特征向量集可以被称为经变换的特征向量集,并且经变换的特征向量集的经变换的特征向量可以包括基于特征向量空间到主成分空间的变换而从数据集的参数值变换的主成分值的集合。在图3的示例中,主成分空间310包括多个数据点,每个数据点表示经变换的特征向量,并且基于每个相应的经变换的特征向量的pc1和pc2的特定主成分值来映射。
39.经变换的特征向量集的主成分的值范围可提供包括在特定主成分的经变换的特征向量集中的值范围的数值指示。因此,超空间生成引擎110可以将给定主成分的值范围确
定为经变换的特征向量集中的给定主成分的最小值与经变换的特征向量集中的给定主成分的最大值之间的差。为了通过图3进行说明,超空间生成引擎110将第一主成分pc1(在该示例中,具有本征值304中的最高本征值)的值范围320确定为经变换的特征向量集中的第一主成分的最小值321与经变换的特征向量集中的第一主成分的最大值322之间的差。
40.在一些实施方式中,然后,超空间生成引擎110可以将沿着第一主成分的主成分轴的超盒的维度大小设置为值范围除以预定除数值。在图3的示例中,除数值302可以被设置为值“7”,并且超空间生成引擎110可以将沿着第一主成分pc1的主成分轴的超盒维度值确定为值范围320除以“7”。实际上,超空间生成引擎110可以将经变换的特征向量集中的第一主成分的值范围量化成等于除数值302的分区或块(bin)的预配置数量。分割的块的数量可以通过除数值302来配置,从而允许超空间生成引擎110灵活地控制已量化的超空间中的超盒分割的粒度、精确度、稀疏度、或密集度将是如何。这样,超空间生成引擎110可以确定主成分空间中的第一主成分的超盒维度值,作为第一主成分的值范围和预定除数值的函数来确定该超盒维度值。
41.对于主成分空间中的剩余主成分(除了具有数据集的最高数据方差的第一主成分空间之外),超空间生成引擎110可以将维度值分别作为剩余主成分的值范围、预定的除数值、以及第一主成分与剩余主成分之间的(例如,如通过主成分的所确定本征值测量的)方差比率的函数来确定其值。为了说明,超空间生成引擎110可以识别具有所确定本征值比第一主成分pc1的所确定本征值更小的主成分空间310的第二主成分pc2。然后,超空间生成引擎110可以确定第二主成分pc2的经变换的特征向量集的值范围330,具体地,确定为经变换的特征向量集中的第二主成分的最小值331与经变换的特征向量集中的第二主成分的最大值332之间的差。
42.然后,超空间生成引擎110可以将沿着第二主成分pc2的主成分轴的超盒的维度大小设置为第二主成分的值范围330、除数值302、以及第一主成分和第二主成分的所确定本征值之间的比率的函数。在一些实施方式中,超空间生成引擎110可以如下设置主成分pc2...pcn的超盒维度大小(其中pc1表示具有最大归因方差和最高本征值的第一主成分):
[0043][0044]
在该示例中,超空间生成引擎110可以将主成分pci的值范围除以比除数值302小的数,基于主成分pci的本征值与第一主成分pc1的本征值的比率来这样做。这可以是以下情况:因为pci的本征值可以小于第一主成分pc1的本征值(因为由超空间生成引擎110识别的第一主成分具有最大本征值),因此划分主成分pci的值范围的块或分区的数量可以在数量上小于划分第一主成分pc1的值范围的除数值302。当主成分pci的本征值充分小于主成分pc1的本征值时,超空间生成引擎110可以确定不分割主成分pci的值范围(或者换句话来说,将主成分pci的值范围分割成一个分区/块)。在这种情况下,超空间生成引擎110可确定主成分pci的超盒维度值作为值范围主成分pci。
[0045]
通过在超盒维度值确定中考虑方差比率,超空间生成引擎110可以以与第一主成分的分区数相比更小的粒度或精度沿着经变换的特征空间的特定主成分来分割值范围。这样的分区或块粒度可以基于由特定主成分表现出的数据集中的方差度而变化。通过这样
做,超空间生成引擎110可以灵活地考虑如通过不同主成分表现出的数据集中的不同方差度,并且可以相应地设置用于不同的主成分的超盒维度。对于归因于较高数据集方差度的经变换的特征空间中的主成分,与归因于较低数据集方差度的经变换的特征空间中的其他主成分相比,超空间生成引擎110可以将这些主成分的值的范围划分成相对较大数量的分区/块。因此,这种主成分空间的超盒量化可以与数据集方差对准,从而允许超盒以沿着主成分更高方差的增加数量的分区来分割数据集(为经变换的特征向量集的形式),反之亦然。这种分割可通过确保具有较高方差的数据维度通过数据维度中相对增加数量的超盒以较细粒度进行处理来增加数据覆盖、采样有效性、或处理准确度。
[0046]
在图3中,超空间生成引擎110将主成分空间310量化成由多个超盒组成的超空间340,其中周界通过虚线示出。在图3中生成的超空间340中,超空间生成引擎110量化主成分空间310以覆盖主成分pc1和pc2的经变换的特征向量集中所包括的值的整个范围。在图3所示的特定示例中,超空间生成引擎101根据除数值302的配置值“7”将第一主成分pc1的值范围320划分成七个块/分区。在这样做时,超空间生成引擎110可以相应地将第一主成分pc1的超盒维度值设置为值范围320除以“7”。对于主成分pc2的超盒维度值,超空间生成引擎110将值范围330除以值“4”,在一些实施方式中,超空间生成引擎110可以根据pc2和pc1的本征值之间的比率以及除数值302(连同应用的顶函数)来计算。在将值范围330除以“4”时,超空间生成引擎110可以为主成分pc2设置超盒维度值。
[0047]
因此,图3中的超空间340包括超空间生成引擎110可以从主成分空间310量化的二十八(28)个不同的超盒。如图3中看到的,由超空间生成引擎110量化的二十八(28)个超盒覆盖包括在经变换的特征向量集中的主成分pc1和pc2的值的整个范围。注意,图3所示的示例主成分空间310和示例超空间340是针对二维(pc1和pc2)例示的,但是主成分空间和超空间可以包括任何数量的维度,例如还包括主成分pc3...pcn的维度。以如本文所述的一致方式,超空间生成引擎110可以确定用于主成分空间的每个主成分的超盒维度值,这可以产生具有针对经变换的特征空间的每个维度的所确定维度值的n维棱正交的多胞形形式的超盒。
[0048]
注意,在图3中,超空间340中的二十八(28)个超盒覆盖示例数据集的主成分pc1和pc2的值范围(如通过超空间340中经变换的特征向量的映射描述的那样),但是不覆盖经变换的特征空间的整体。在一些实施方式中,超空间生成引擎110可以扩展经变换的特征空间的量化以包括整个经变换的特征空间上的超盒。为此,超空间生成引擎110可以在经变换的特征向量集的值范围之外的、超出该范围的、或者以其他方式未包括在该范围中的经变换的特征空间的部分上插入具有所确定的超盒维度值的附加的超盒。
[0049]
例如,在图3的示例中,超空间生成引擎110可以将附加的超盒插入到超空间340中,其具有与根据主成分pc1和pc2的值的范围确定的二十八(28)个超盒相同的维度值。对于非归一化数据集,这样的超盒插入可以作为经变换的特征空间无限地扩展(例如主成分空间本身可以无限地扩展)。对于具有有限值范围的归一化特征向量或主成分,超空间生成引擎110可以截断边缘超盒,直到所插入超盒扩展超过经变换的特征空间的极限的程度。因此,扩展的超空间可以用于处理数据集,其中经变换的特征向量被映射到为用于生成超空间的原始数据集分割的超盒外部的部分。
[0050]
通过将经变换的特征空间量化成由超盒组成的超空间,超空间生成引擎110实际
上可以将经变换的特征空间分割成不同的块、群集、或分区,这样做考虑了数据集方差。超空间的每个超盒可以充当聚类元素,通过该聚类元素可以处理数据集。而且,由超空间生成引擎110进行的超盒维度确定和经变换的特征空间量化可以在o(n)时间执行,从而允许以提高的计算效率对数据集的经变换的特征向量进行聚类,同时仍然支持考虑数据集方差的分析。
[0051]
通过生成的超空间进行的数据集的处理可以以多种方式执行,接下来参考图4和图5描述其中的一些方式。
[0052]
图4示出了使用所生成的超空间对数据集进行下采样的基于超空间进行处理的示例。在图4的示例中,超空间处理引擎112可以访问由超空间生成引擎110生成的超空间410。超空间410可以包括一组超盒,其中超空间维度值由超空间生成引擎110针对由对应特征向量集表示的给定数据集来确定。在图4的示例中,超空间处理引擎112可以使用超空间410处理特征向量集420。
[0053]
注意,特征向量集420可以由超空间生成引擎110用来生成超空间410,或者可以表示与用于生成超空间410的数据集不同的数据集。由于超空间生成引擎110可以将超空间的超盒覆盖扩展到包括用于生成超空间的经变换的特征向量集的值范围之外,因此可以使用超空间410来处理扩展到用于生成超空间410的原始数据集的值范围之外的数据集(以及对应的特征向量集)。
[0054]
为了使用超空间410处理特征向量集420,超空间处理引擎112可以将特征向量集420映射到超空间410中。在这样做时,超空间处理引擎112可以例如通过应用被确定以将特征空间变换为主成分空间的协方差矩阵来将特征向量集420的特征向量变换到从其量化超空间410的主成分空间(或其他经变换的特征空间)。然后,超空间处理引擎112可以处理映射到超空间410中的经变换的特征向量集。
[0055]
每个经变换的特征向量可以由超空间410中的相应超盒来界定,并且由同一超盒封装的经变换的特征向量可以形成用于处理目的的群集。图4中通过包含多个不同的经变换的特征向量的超盒421示出了一个这样的图示。在这方面,超空间处理引擎112可以将特征向量集420的多个特征向量映射到超空间410中,并且特别地,超空间410中的这些多个特征向量的映射可以位于超盒421的边界内。因此,超空间处理引擎112可以将这些多个特征向量(以及所表示的数据集中的对应数据点)分组为同一群集的一部分,并且相应地处理群集。
[0056]
在图4的特定示例中,超空间处理引擎112可以通过从超空间410中的每个超盒选择包括至少映射的特征向量的代表性特征向量,来对由特征向量集420表示的数据集进行下采样。通过这样的下采样,超空间处理引擎112可以通过从每个超盒选择包括映射到超盒中的至少一个特征向量的代表性特征向量来获得下采样数据集430。在这种基于超空间的下采样中,超空间处理引擎112可以忽略(例如确定不处理)超空间410中不包括任何经变换的特征向量的每个超盒。这样的空的超盒不包括来自特征向量集420的任何数据,并且不需要由超空间处理引擎112下采样。
[0057]
为了选择超盒的代表性的经变换的特征向量(对应于数据集的特定数据点),超空间处理引擎112可以采用各种选择技术。使用图4所例示的超盒421作为示例,超空间处理引擎112可以从超盒421内的经变换的特征向量中选择随机样本。作为另一示例,超空间处理
引擎112可以选择最接近超盒中心的样本数据点。作为又一示例,超空间处理引擎112可以选择与超盒421内的多个数据点的计算质心最接近的样本数据点。
[0058]
通过这种基于超空间的下采样,超空间处理引擎112可以对通过特征向量集420表示的数据集进行有效的下采样。可以通过本文描述的基于超空间的处理特征来执行大数据集的任何下采样处理。例如,特征向量集420可以表示通过制造的ic的亮场检验(bfi)识别的兴趣点的大数据集。bfi确定的兴趣点的数据集的数量可能为数千万或更多,并且通过sem测量对兴趣点的进一步调查可能需要以10倍或更大的量级进行下采样。超空间生成引擎110可生成超空间以通过超盒聚类bfi兴趣点数据集内的样本点,并且超空间处理引擎112可通过从具有至少一个映射的数据点(映射为经变换的特征向量)的超空间的每个超盒中选择代表性数据点来对bfi兴趣点数据集进行下采样。通过如本文所述地配置用于量化经变换的特征空间的预定除数值,例如通过增加除数值以增加从特征向量集提取的下样本的数量(反之亦然),可以进一步调整下采样比率。
[0059]
虽然本文描述了特定bfi-sem下采样示例,但是数据集的任何其他下采样处理可以一致地由超空间生成引擎110、超空间处理引擎112、或两者的组合来实施。
[0060]
图5示出了使用所生成的超空间对数据集进行分类的基于超空间的处理的示例。在图5的示例中,超空间处理引擎112可以访问由超空间生成引擎110生成的超空间510。超空间510可以包括一组超盒,其中超空间维度值由超空间生成引擎110针对由对应特征向量集表示的给定数据集来确定。在图5的示例中,超空间处理引擎112可以使用超空间510处理特征向量集520。
[0061]
注意,特征向量集520可以由超空间生成引擎110用来生成超空间510,或者可以表示与用于生成超空间510的数据集不同的数据集。由于超空间生成引擎110可以将超空间的超盒覆盖扩展到来自用于生成超空间的数据集的值范围之外,因此可以使用超空间510来处理扩展到用于生成超空间510的原始数据集的值范围之外的数据集(以及对应的特征向量集)。
[0062]
为了使用超空间510处理特征向量集520,超空间处理引擎112可以将特征向量集520映射到超空间510中。在这样做时,超空间处理引擎112可以例如通过应用被确定以将特征空间变换为主成分空间的协方差矩阵来将特征向量集520的特征向量变换到从其量化超空间510的主成分空间(或其他经变换的特征空间)。然后,超空间处理引擎112可以处理映射到超空间510中的经变换的特征向量集。
[0063]
每个经变换的特征向量可以由超空间510中的相应超盒来界定,并且由相同超盒封装的经变换的特征向量可以形成用于处理目的的群集。图5中通过包含多个不同的经变换的特征向量的超盒521示出了一个这样的图示。在这方面,超空间处理引擎112可以将特征向量集520的多个特征向量映射到超空间510中,并且特别地,超空间510中的这些多个特征向量的定位可以位于超盒521的边界内。因此,超空间处理引擎112可以将这些多个特征向量(以及所表示的数据集中的对应数据点)分组为同一群集的一部分,并且相应地处理群集。
[0064]
在图5的特定示例中,超空间处理引擎112可以利用公共分类对同一超盒中的数据点进行分类。例如,可以为超盒521中的数据点的分类分配一组分类结果530中的公共分类。这样的分类可以是半监督的,其意味着,在特征向量集520中或用于生成超空间510的不同
特征向量集中表示的数据点可以基于预先分类或以其他方式标记。
[0065]
例如,超空间生成引擎110可以使用由已知ic热点和已知ic非热点组成的特征向量集来生成超空间510。在这种意义上,超空间生成引擎110可以响应于确定给定超盒包括、包含、或封装来自特征向量集的至少阈值数量的已知ic热点而将超空间510的超盒标记为“热点”超盒。利用这样的标记,超空间处理引擎112可以确定超盒521是“热点”超盒还是“非热点”超盒,并且相应地分类映射到超盒521中的数据点。注意,对超盒的这种标记可以在特征向量集520的处理之前或与其同时发生。例如,特征向量集520本身可以包括热点的和非热点的ic数据样本的标记,并且超空间处理引擎112可以确定映射到超盒中的任何数据点是否是特征向量集520中的“热点”数据点。如果是,则超空间处理引擎112可以将超盒521中的每个剩余数据点分类为分类结果530中的“热点”。
[0066]
这样,超空间处理引擎112可支持用于eda应用的基于超空间的ic热点预测。本文也考虑其它eda数据集处理特征,例如模糊模式匹配。特征向量集520中的每个数据点可以表示ic图像,并且超空间处理引擎112可以支持ic图像的基于超空间的模糊模式匹配。特别地,超空间处理引擎112可以将特征向量集520的ic图像映射到超空间510中,并且将超空间510的超盒识别为公共类。超空间处理引擎112可将映射到同一超盒的每个ic图像“匹配”为匹配的图像模式,因此高效且准确地对大eda数据集的ic图像进行分类、聚类、或分组。
[0067]
因此,各种基于超空间的处理特征可以由超空间生成引擎110、超空间处理引擎112、或两者的组合来支持。如本文所述,超空间处理引擎112可以执行与用于生成空间的数据集分离或(至少部分地)不同的数据集的基于超空间的处理。在这方面,超空间生成引擎110可以访问包括与用于生成超空间的数据集的原始特征向量的集合不同的特征向量的不同数据集。超空间处理引擎112可以使用从原始特征向量确定的超空间来处理不同的数据集,包括通过将不同数据集的特征向量映射到超空间中并且相应地处理不同数据集的经变换的特征向量。
[0068]
虽然许多超空间特征已通过各种附图呈现的说明性示例在本文中描述,但是超空间生成引擎110和超空间处理引擎112可实施本文描述的超空间特征的任何组合。本文提供了eda应用的背景下的超空间生成和处理的一些示例,但是本文描述的超空间特征可以一致地应用于任何类型的数据集和数据集分类、聚类、下采样、或其他形式的数据处理。
[0069]
图6示出了系统可以实施超空间生成和对数据集进行基于超空间的处理的逻辑600的示例。例如,计算系统100可以将逻辑600实施为硬件、存储在机器可读介质上的可执行指令、或两者的组合。计算系统100可以经由超空间生成引擎110和超空间处理引擎112来实施逻辑600,通过这些引擎,计算系统100可以执行或实行逻辑600,作为支持超空间生成和对数据集进行基于超空间的处理的方法。使用超空间生成引擎110和超空间处理引擎112作为示例来提供以下对逻辑600的描述。然而,系统的各种其他实施选项是可能的。
[0070]
在实施逻辑600时,超空间生成引擎110可访问表示数据集中的点的特征向量集(602)。例如,特征向量集中的给定特征向量可表示数据集中给定数据点的多个参数的值。超空间生成引擎110还可以对特征向量集执行主成分分析(604)。由超空间生成引擎110执行的主成分分析可以将特征向量集的特征空间变换成由从特征空间旋转的主成分轴组成的主成分空间,并且从特征空间旋转主成分轴可以基于针对主成分空间的主成分而确定的本征值。超空间生成引擎110还可以将主成分空间量化成由超盒组成的超空间(606),以本
文描述的任何方式这样做。在实施逻辑600时,超空间处理引擎112可以根据特征向量集到超空间的超盒的映射来处理数据集(608)。
[0071]
图6所示的逻辑600提供了计算系统100可以支持超空间生成和对数据集进行基于超空间的处理的说明性示例。本文设想逻辑600中的附加或替代步骤,包括根据本文针对超空间生成引擎110、超空间处理引擎112、或其任意组合描述的各个特征中的任一者。
[0072]
图7示出了支持超空间生成和对数据集进行基于超空间的处理的计算系统700的示例。计算系统700可以包括处理器710,其可以采取单个或多个处理器的形式。一个或多个处理器710可以包括中央处理单元(cpu)、微处理器、或适于执行存储在机器可读介质上的指令的任意硬件设备。系统700可以包括机器可读介质720。机器可读介质720可以采取任意非瞬态电子的、磁性的、光学的、或其他存储可执行指令的物理存储设备的形式,可执行指令例如为图7所示的超空间生成指令722和超空间处理指令724。因此,机器可读介质720可以是例如随机存取存储器(ram)(例如动态ram(dram))、闪速存储器、自旋扭矩存储器、电可擦除可编程只读存储器(eeprom)、存储驱动器、光盘等。
[0073]
计算系统700可以通过处理器710执行存储在机器可读介质720上的指令。执行指令(例如超空间生成指令722和/或超空间处理指令724)可以使得计算系统700执行本文描述的任何超空间特征,包括根据超空间生成引擎110、超空间处理引擎112、或两者的组合的任何特征。
[0074]
例如,处理器710执行超空间生成指令722可以使得计算系统700访问特征向量集,其中,特征向量集中的给定特征向量表示数据集中的给定数据点的多个参数的值;对特征向量集执行主成分分析,其中,主成分分析将特征向量集的特征空间变换成由从特征空间旋转的主成分轴组成的主成分空间,并且其中,主成分轴从特征空间的旋转基于针对主成分空间的主成分而确定的本征值;以及将主成分空间量化成由超盒组成的超空间。处理器710执行超空间处理指令724可以使得计算系统700根据特征向量集到超空间的超盒中的映射来处理数据集。
[0075]
如本文所述的任何附加或替代的超空间特征可经由超空间生成指令722、超空间处理指令724、或两者的组合来实施。
[0076]
包括超空间生成引擎110和超空间处理引擎112的上述系统、方法、设备和逻辑可以以硬件、逻辑、电路、和存储在机器可读介质上的可执行指令的许多不同组合以许多不同方式实施。例如,超空间生成引擎110、超空间处理引擎112或其组合可以包括控制器、微处理器、或专用集成电路(asic)中的电路,或者可以利用分立逻辑或组件、或组合于单个集成电路上或分布于多个集成电路中的其他类型的模拟或数字电路的组合来实施。产品(例如计算机程序产品)可以包括存储介质和存储在介质上的机器可读指令,当在终端、计算机系统或其他设备中执行时,机器可读指令使得设备执行根据以上描述中的任意一者(包括根据超空间生成引擎110、超空间处理引擎112、或其组合的任意特征)的操作。
[0077]
本文描述的系统、设备和引擎(包括超空间生成引擎110和超空间处理引擎112)的处理能力可以分布在多个系统组件之间,例如分布在多个处理器和存储器之间,可选地包括多个分布式处理系统或云/网络元件。参数、数据库、和其它数据结构可以被分开存储和管理,可以被结合到单个存储器或数据库中,可以以许多不同的方式在逻辑上和物理上组织,并且可以以许多方式实施,包括例如链表、散列表、或隐式存储机制的数据结构。程序可
以是单个程序的部分(例如子例程)、单独的程序、跨若干存储器和处理器分布、或者以许多不同方式实施,例如在库(例如共享库)中。
[0078]
虽然以上描述了各种示例,但是更多的实施方式是可能的。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1