CN117313900B - 用于数据处理的方法、设备和介质 - Google Patents

用于数据处理的方法、设备和介质 Download PDF

Info

Publication number
CN117313900B
CN117313900B CN202311597862.2A CN202311597862A CN117313900B CN 117313900 B CN117313900 B CN 117313900B CN 202311597862 A CN202311597862 A CN 202311597862A CN 117313900 B CN117313900 B CN 117313900B
Authority
CN
China
Prior art keywords
training
sample
samples
candidate
machine learning
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202311597862.2A
Other languages
English (en)
Other versions
CN117313900A (zh
Inventor
请求不公布姓名
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Advanced Manufacturing EDA Co Ltd
Original Assignee
Advanced Manufacturing EDA Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Advanced Manufacturing EDA Co Ltd filed Critical Advanced Manufacturing EDA Co Ltd
Priority to CN202311597862.2A priority Critical patent/CN117313900B/zh
Publication of CN117313900A publication Critical patent/CN117313900A/zh
Application granted granted Critical
Publication of CN117313900B publication Critical patent/CN117313900B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/0002Inspection of images, e.g. flaw detection
    • G06T7/0004Industrial image inspection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/762Arrangements for image or video recognition or understanding using pattern recognition or machine learning using clustering, e.g. of similar faces in social networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/77Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
    • G06V10/774Generating sets of training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20081Training; Learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30108Industrial image inspection
    • G06T2207/30148Semiconductor; IC; Wafer

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Evolutionary Computation (AREA)
  • Medical Informatics (AREA)
  • Computing Systems (AREA)
  • Artificial Intelligence (AREA)
  • Health & Medical Sciences (AREA)
  • Databases & Information Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Multimedia (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Mathematical Physics (AREA)
  • Quality & Reliability (AREA)
  • Image Analysis (AREA)

Abstract

根据本公开的示例实施例提供了用于数据处理的方法、设备和介质。在该方法中,获取用于机器学习模型的训练样本集。训练样本集中的每个训练样本与集成电路的设计方案或测量结果中的至少一项相关联获得待处理的版图。该方法还包括基于训练样本的相应标签或相应特征中的至少一项,检测训练样本集中降低机器学习模型的性能的因素。该方法还包括基于所检测到的因素生成样本检测结果。样本检测结果至少指示对训练样本集的推荐处理。以此方式,可以针对训练数据给出有针对性的处理建议,从而简化训练模型的操作复杂度,提高模型训练的效率。

Description

用于数据处理的方法、设备和介质
技术领域
本公开的实施例主要涉及数据处理领域,并且更具体地,涉及用于数据处理的方法、设备和介质。
背景技术
利用机器学习模型进行预测和分析可以极大地提高解决问题的效率。对机器学习模型而言,有许多参数需要进行配置,例如最底层的模型参数、数据的处理方式等。在模型训练完成后,还需要对结果进行分析,以实现期望的模型性能。当前,机器学习模型已经应用于集成电路的设计、制造等多个环节。在将机器学习模型应用于与集成电路有关的这些环节之前或者为了更新已应用的机器学习模型,需要利用与集成电路有关的数据对机器学习模型进行训练。训练数据影响了机器学习模型的性能。
发明内容
在本公开的第一方面中,提供了一种用于数据处理的方法。在该方法中,获取用于机器学习模型的训练样本集。训练样本集中的每个训练样本与集成电路的设计方案或测量结果中的至少一项相关联获得待处理的版图。该方法还包括基于训练样本的相应标签或相应特征中的至少一项,检测训练样本集中降低机器学习模型的性能的因素。该方法还包括基于所检测到的因素生成样本检测结果。样本检测结果至少指示对训练样本集的推荐处理。以此方式,可以降低集成电路相关用户使用机器学习模型的难度和复杂度,并有利于提高训练效率。
在本公开的第二方面中,提供了一种电子设备。该电子设备包括处理单元、以及与处理单元耦合的存储器。该存储器具有存储于其中的指令,指令在被处理单元执行时使电子设备执行根据本公开的第一方面的用于数据处理的方法。
在本公开的第三方面中,提供了一种计算机可读存储介质。该计算机可读存储介质上存储有计算机程序。计算机程序在被处理器执行时实现根据本公开的第一方面的用于数据处理的方法。
根据本公开的实施例,获取用于机器学习模型的训练样本集。训练样本集中的每个训练样本与集成电路的设计方案和/或测量结果相关联。进一步地,基于训练样本集中的各个训练样本的相应标签和/或相应特征,检测训练样本集中降低机器学习模型的性能的因素。进而,基于所检测到的因素生成样本检测结果。样本检测结果至少指示对训练样本集的推荐处理。以此方式,可以针对训练数据给出有针对性的处理建议,从而简化训练模型的操作复杂度,提高模型训练的效率。因此,本公开的实施例有助于降低集成电路相关用户使用机器学习模型的难度和复杂度。此外,通过查看样本检测结果,用户能更熟悉哪些因素会影响模型的训练效果,从而有利于提升模型训练的效率。
应当理解,本发明内容部分中所描述的内容并非旨在限定本公开的实施例的关键特征或重要特征,也不用于限制本公开的范围。本公开的其他特征将通过以下的描述而变得容易理解。
附图说明
结合附图并参考以下详细说明,本公开各实施例的上述和其他特征、优点及方面将变得更加明显。在附图中,相同或相似的附图标注表示相同或相似的元素,其中:
图1A示出了使用机器学习模型的示例流程;
图1B示出了本公开的各实施例能够在其中实现的示例环境的示意图;
图2示出了根据本公开的一些实施例的用于数据处理的架构的一个示例的示意图;
图3示出了根据本公开的一些实施例的用于数据处理的方法的一个示例的流程图;
图4示出了根据本公开的一些实施例的包括异常样本检测和验证的示例数据处理过程的示意图;
图5示出了根据本公开的一些实施例的计算异常分数的示意图;
图6示出了根据本公开的一些实施例的选择用于验证的目标样本的示意图;
图7示出了根据本公开的一些实施例的用于数据处理的方法的流程图;
图8示出了根据本公开的一些实施例的用于数据处理的另一方法的流程图;以及
图9示出了其中可以实施本公开的一个或多个实施例的电子设备的框图。
具体实施方式
下面将参照附图更详细地描述本公开的实施例。虽然附图中显示了本公开的某些实施例,然而应当理解的是,本公开可以通过各种形式来实现,而且不应该被解释为限于这里阐述的实施例,相反提供这些实施例是为了更加透彻和完整地理解本公开。应当理解的是,本公开的附图及实施例仅用于示例性作用,并非用于限制本公开的保护范围。
在本公开的实施例的描述中,术语“包括”及其类似用语应当理解为开放性包含,即“包括但不限于”。术语“基于”应当理解为“至少部分地基于”。术语“一个实施例”或“该实施例”应当理解为“至少一个实施例”。术语“第一”、“第二”等等可以指代不同的或相同的对象。下文还可能包括其他明确的和隐含的定义。
如本文中所使用的,术语“模型”可以从训练数据中学习到相应的输入与输出之间的关联,从而在训练完成后可以针对给定的输入,生成对应的输出。模型的生成可以基于机器学习技术。深度学习是一种机器学习算法,通过使用多层处理单元来处理输入和提供相应输出。在本文中,“模型”也可以被称为“机器学习模型”、“机器学习网络”或“网络”,这些术语在本文中可互换地使用。一个模型又可以包括不同类型的处理单元或网络。
如上文所简要提及的,机器学习模型已经应用于集成电路的设计和制造等多个环节。为了应用机器学习模型,需要进行参数配置并对训练的效果进行分析等。图1A示出了使用机器学习模型的整体示例流程。在图1A的示例中,机器学习模型用于集成电路制造中的缺陷检测。具体来说,缺陷管理系统(DMS)102可以获取来自集成电路生产和测试线的数据,例如包含缺陷或不包含缺陷的晶圆的图像(诸如,扫描隧道电子显微图像)。由此,可以获得用于机器学习模型的训练和验证的数据101。数据101进而被划分为训练数据和验证数据。训练数据用于在框103进行的模型训练。在框104,利用验证数据对经训练的模型进行验证,以获取模型的性能。在框105,对性能进行检查,以确定性能是否满足要求。如果未通过检查,也即性能不满足要求,可以对模型进行调整和/或对数据101进行检查。如果通过进行检查,也即性能满足要求,则在框106进行模型部署。
在模型部署期间,可以利用模型对晶圆图像进行处理,以检测其中是否具有缺陷以及缺陷的类型等。在部署期间,DMS 102可以监测模型的性能。集成电路的制造设备的性能可能随着时间而变化,导致所产生的缺陷也随着时间而变化。这种变化经过一段时间的积累可能造成模型性能下降到不可接受的水平,由此触发模型的再次训练,也即上述过程被重复。
从以上描述中可以看出,在集成电路领域使用机器学习模型时存在多个不同阶段。熟悉集成电路的用户可能不具备机器学习模型的参数配置或者结果分析能力。对于在不同的阶段产生的不同问题,用户可能毫无头绪,从而影响后续任务的进行。例如,用于机器学习模型的训练数据通常是由用户提供的,但用户可能无法判断所提供的训练数据是否适合于训练。在模型训练完成之后,如果模型性能未达到预期,用户也不清楚训练效果不佳的主因。另一方面,机器学习模型的开发人员又通常不具有集成电路的专业知识,因而也难以判断用户提供的训练数据是否适合于训练。这两个领域知识之间的这种差异增加了集成电路领域的用户使用机器学习模型的难度,甚至给用户带来困扰。
为此,本公开的实施例提出了一种用于数据处理的方法。根据本公开的实施例,获取用于机器学习模型的训练样本集。训练样本集中的每个训练样本与集成电路的设计方案和/或测量结果相关联。进一步地,基于训练样本的相应标签和相应特征,生成异常样本检测结果,其至少指示训练样本集中的多个候选样本,每个候选样本为具有错误标签的异常样本的候选。进而,基于异常样本检测结果,从多个候选样本中确定一个或多个目标样本,以用于验证是否具有错误标签。基于针对目标样本的相应验证结果,执行与训练样本集相关联的更新操作。以此方式,可以减少训练样本集中的异常样本,从而提高机器学习模型的训练效果。因此,本公开的实施例有助于降低集成电路相关用户使用机器学习模型的难度和复杂度。
以下将参考附图来详细描述该方案的各种示例实现。
首先参见图1B,其示出了本公开的各实施例能够在其中实现的示例环境100的示意图。示例环境100总体上可以包括数据处理设备110。在一些实施例中,数据处理设备110可以是诸如个人计算机、工作站、服务器等具有计算功能的设备。本公开的范围在此方面不受限制。
数据处理设备110获取训练样本集120作为输入。训练样本集120包括用于训练机器学习模型130(也可以简称为模型)的多个训练样本。训练样本可以包括各种合适类型的数据或多种类型数据的组合,例如数值类数据、图像、及其组合。在本公开的实施例中,训练样本是与集成电路相关的样本,其可以包括集成电路的设计、制造等任何环节的数据。
在一些实施例中,训练样本集120中的每个训练样本可以与集成电路的设计方案相关联。设计方案例如包括布图设计方案、工艺设计方案、质检设计方案等。合理的训练样本可以有效提升机器学习模型130的性能。因此,对与设计方案相关联的训练样本进行检测以发现其中是否存在降低模型性能的因素,这在方案的设计阶段是十分必要的。
在一些实施例中,训练样本可以包括电路版图。电路版图(简称为版图)是从设计并模拟优化后的电路所转化成的一系列几何图形,其包含了集成电路尺寸、各层拓扑定义等器件相关的物理信息数据。将包括版图的训练样本集120提供给机器学习模型130,可以实现利用机器学习模型130检测集成电路版图中的热点(hotspot),诸如断线(pinch)或桥连(bridge)。例如,可以利用没有热点的样本版图(也称为正向样本版图)和包括热点的样本版图(也称为负向样本版图),对机器学习模型130进行训练。经训练的机器学习模型130可以用于检测版图中的热点。
附加地或备选地,在一些实施例中,训练样本集120中的每个训练样本可以与集成电路的测量结果相关联。测量结果例如包括对所制造的芯片的拍摄影像或测量的数值。在这种实施例中,机器学习模型130可以被配置为处理测量结果以实现预期任务,例如得到参数值或进行分类等。作为示例,可以利用机器学习模型130检测拍摄影像中是否存在缺陷或参数值是否满足要求等,从而指导方案设计或工艺制造等。
在一些实施例中,训练样本可以包括所制造的晶圆的图像,即拍摄的影像。晶圆是硅半导体集成电路制作所用的硅晶片,也可以称为晶元或硅晶片。晶圆在经过光刻、制作晶体管、切割、测试、封装等一系列复杂工序后可以得到芯片成品。作为示例,将包括所制造的晶圆的图像提供给机器学习模型130,可以实现利用机器学习模型130检测晶圆中的缺陷。这样的图像包括但不限于光学显微镜图像、扫描电子显微镜图像等。例如,可以利用包括不同形状、大小、颜色、位置、密度等缺陷的样本图像,对机器学习模型130进行训练。如此训练的机器学习模型130可以用于对晶圆的缺陷进行识别和定位。作为另一示例,在光刻过程中,由于光的衍射和干涉现象,晶圆上的光刻图形与版图图形之间存在一定的变形和偏差。这样的偏差直接影响集成电路的性能和生产成品率。机器学习模型130可以用于检测光刻图形与版图图形之间的偏差。
在一些实施例中,训练样本可以包括制造操作数据或半导体质量数据。例如,训练样本可以包括从晶圆制造生产线上获得的测量数据。又例如,训练样本可以包括从晶圆制造生产线上获得的具有测量合格/不合格的标签的数据。
应当理解,以上仅列举了训练样本的示例,而无意任何限制。在本公开的实施例中,训练样本可以包括与集成电路的设计、制造、测试等各个环节相关的数据。
数据处理设备110用于对训练样本集120进行检测并生成检测结果。将在下文中结合图2至图4进一步详细描述。
通常,机器学习大致可以包括三个阶段,即训练阶段、测试阶段和推理阶段。在训练阶段,给定的模型可以使用大量的训练样本进行训练,不断迭代,直到模型能够从训练样本中获取一致的满足预期目标的推理。通过训练,模型可以被认为能够从训练样本中学习从输入到输出之间的关联。在测试阶段,将测试输入应用到训练后的模型,测试模型是否能够提供正确的输出,从而确定模型的性能。在推理阶段,模型可以被用于基于训练得到的参数值,对实际的输入进行处理,确定对应的输出。本公开的实施例可以在机器学习的一个或多个阶段对机器学习模型130的训练样本集120进行检测,例如自动地或被指定地,以尽可能减少降低模型性能的因素并生成检测结果,从而帮助跨领域用户利用模型或定位影响模型性能的问题。
图2示出了根据本公开的一些实施例的用于数据处理的示例架构200的示意图。在一些实施例中,示例架构200可以被包括在或者由如图1B所示的数据处理设备110来实现。应当理解的是,示例架构200还可以包括未示出的附加模块和/或可以省略所示出的某个(或者某些)模块,本公开的范围在此方面不受限制。
示例架构200至少包括因素检测模块210和检测结果生成模块220。因素检测模块210用于检测训练样本集120中降低机器学习模型130的性能的因素。在本文中,所检测的降低机器学习模型130的性能的因素也称为潜在因素或目标因素。潜在因素可能涉及个体训练样本、成组的训练样本、训练样本的标签等各种可能对机器学习模型130的训练效果产生不利或负面影响的因素。检测结果生成模块220基于因素检测模块210所检测到的因素而生成样本检测结果。样本检测结果至少指示对训练样本集120的推荐处理。
因素检测模块210的输入包括用于机器学习模型130的训练样本集120。关于训练样本集120中的训练样本如上文参考图1B所描述的。因素检测模块210可以基于训练样本的相应标签和/或相应特征,来检测训练样本集120中降低机器学习模型130的性能的因素。根据利用机器学习模型130的业务场景,可以确定待解决的问题是分类问题还是回归问题。例如,对于分类问题,机器学习模型130的输出结果是离散数值类型,以表示类别。因此,相应的训练样本的标签可以是类别。又例如,对于回归问题,机器学习模型130的输出结果是连续数值类型,以表示预测值。因此,相应的训练样本的标签可以是数值。此外,训练样本的特征可以是训练样本的向量化表示,其例如可以是使用任何合适的特征提取模型或嵌入(embedding)模式来确定的。因素检测模块210可以基于训练样本的标签或特征来确定训练样本集120是否存在不平衡、缺失值、异常值等因素。
可能降低机器学习模型130的训练效果的潜在因素可以包括样本不平衡因素。样本不平衡因素可以是指训练样本集中的某组训练样本(例如,同一类别的样本)在训练样本集120中的比例较低,例如低于阈值比例。为了检测这种样本不平衡因素,在一些实施例中,因素检测模块210可以包括样本不平衡检测单元212。作为示例,用于分类任务的机器学习模型所要确定的各个类别在实际中可能是均匀出现的。在这种情况下,在训练阶段采用不平衡的训练样本集将会降低机器学习模型的性能。样本不平衡检测单元212可以用于检测训练样本集120是否具有类别不平衡问题。例如,可以按照标签来统计训练样本的分布。如果不同类别之间的训练样本数目差别较大或不同数值范围的训练样本数目差异较大,则可能出现样本不平衡的问题。
在一些实施例中,样本不平衡检测单元212可以基于训练样本的标签将训练样本划分成多组训练样本。同一组中的训练样本具有相匹配的标签。在标签是离散类型的情况下,相匹配的标签是指相同的标签。例如,如果标签是类别,则同一组中的训练样本是相同类别的。在标签是连续类型的情况下,相匹配的标签是指数值相近(例如,差小于阈值)的标签。例如,如果标签是数值,则同一组中的训练样本的标签数值之间差异较小。用作标签的数值可以视为真值(ground truth),其可以是任何合适的方式得到的,例如可以是实际测量得到的或事先由人工标注的。进一步地,样本不平衡检测单元212可以确定每组训练样本在训练样本集120中的比例。如果某组训练样本的比例小于阈值比例,则样本不平衡检测单元212确定检测到样本不平衡因素。在这种实施例中,每组训练样本具有明确或显式的共同或相似属性,例如是同一类别或具有相近的数值。
在一些实施例中,样本不平衡检测单元212可以基于各个训练样本的特征对训练样本进行聚类,聚类得到的每个簇可以视为一个分组。同一组中的训练样本具有相似的特征。如果某一组中的训练样本在训练样本集120中的比例小于阈值比例,则样本不平衡检测单元212确定检测到样本不平衡因素。与上文描述的基于标签进行分组的实施例相比,这是一种隐式分组方案。在这种实施例中,每组训练样本可以不具有显式的共同或相似属性。
如果检测到上述的样本不平衡因素,检测结果生成模块220可以相应地基于检测到样本不平衡因素,生成第一推荐信息。第一推荐信息作为样本检测结果的一部分,可以提供关于处理训练样本集120的操作建议,特别是如何处理样本少的训练样本。如果某一组中的训练样本在训练样本集120中的比例小于阈值比例,则第一推荐信息可以指示增加该组训练样本的样本数目或比例。在一些实施例中,除了第一推荐信息,还可以生成关于样本不平衡的参考信息作为样本检测结果的一部分。例如,参考信息可以包括类别不平衡比例、不平衡程度的指示(诸如高、中、低等)。
作为一个示例,训练样本集120包括具有类别A和类别B的训练样本。例如,类别A的样本可以是具有热点的版图,而类别B的样本可以是没有热点的版图。按照类别进行分组后,分组A包括具有类别A的训练样本,分组B包括具有类别B的训练样本。分组A中的训练样本在训练样本集120中的比例为1/10,而分组B中的训练样本在训练样本集120中的比例为9/10。如果阈值比例为1/5,分组A的比例小于阈值比例,则样本不平衡检测单元212确定检测到样本不平衡因素。相应地,检测结果生成模块220生成第一推荐信息。这样的第一推荐信息可以指示增加分组A的训练样本的数目以超过阈值比例或者直至与分组B的训练样本的数目均衡。
在一些实施例中,第一推荐信息还可以指示减少或消除样本不平衡因素的具体操作建议。例如,可以根据训练样本的分布,指示数据增强操作,诸如采用随机欠采样、随机过采样、基于聚类的欠采样、合成数据增强,等等。
可能降低机器学习模型130的训练效果的潜在因素可以包括异常样本。为此,在一些实施例中,因素检测模块210包括异常样本检测单元214。训练样本集120中的异常样本可以被认为是异常点、离群点或孤立点,其可能具有异常的标签、异常的数值或异常的特征等。例如,异常样本的标签或特征与大多数训练样本不一致,而呈现“异常”的特点。异常样本检测单元214可以用于检测训练样本集120是否存在异常样本。示例性的,可以基于训练样本的分布、不同样本之间的差异或者聚类等进行异常样本检测。
在一些实施例中,异常样本检测单元214可以对各个训练样本进行特征提取,以获得各个训练样本的相应特征。作为示例,如果训练样本是诸如电路版图的设计方案,可以利用神经网络(例如,卷积神经网络、循环神经网络)来生成训练样本的特征表示。在这种示例中,所利用的神经网络已经使用任何合适的方式被训练为从诸如电路版图的设计方案中提取特征。作为另一示例,如果训练样本是数值型测量结果,可以利用编码器来将测量结果转换成向量化表示(例如,向量)。例如,编码器可以将测量结果中的数值映射到预先定义的特征空间中,从而生成测量结果的向量化表示作为其特征。然后,可以基于特征对各个训练样本进行聚类。无法被聚类成簇的训练样本可以确定为异常样本。
在一些实施例中,可以利用训练样本的标签进行异常样本检测。异常样本检测单元214可以基于训练样本集120中的各个训练样本的标签确定具有相匹配标签的一组训练样本。进一步地,异常样本检测单元214可以确定该组训练样本中的每对训练样本之间的特征差异。例如,可以利用特征提取模型来生成每个训练样本的特征,然后针对每对训练样本计算其特征差异。再进一步地,异常样本检测单元214可以基于超过阈值差异的特征差异,从该组训练样本中确定异常样本。例如,如果某个训练样本与同组中一定数目的其他训练样本之间的特征差异均超过阈值差异,则可以将该训练样本检测为异常样本。一般而言,具有相匹配的标签的样本通常具有相似的特征,由此利用训练样本的标签和特征可以更准确地确定出异常样本。
示例性的,样本A与一些训练样本具有相同的标签而被划分为同一组训练样本。异常样本检测单元214确定该组训练样本中的每对训练样本之间的特征差异。如果样本A与超过阈值数目的其他样本之间的特征差异超过阈值差异,则可以将样本A检测为异常样本,异常样本检测单元214确定检测到异常样本因素。
在一些场景中,异常样本检测单元214具有检测出热点版图的能力,例如通过预先输入的多种类型的热点版图、通过图形比较或者神经网络识别等方式可以进行热点检测。在一些情况下,某个或某些训练样本的标签可能是错误的,例如没有热点的版图被错误地标为具有热点。在这种情况下,标签错误的训练样本可能与同一组中的其他样本差异较大,从而被检测为异常样本。以此方式,可以有利地识别出标签错误的样本。
在一些实施例中,异常样本检测单元214可以基于各个训练样本的特征,对各个训练样本进行分组,每组训练样本具有相匹配或相似特征。一般而言,被划分到同一组的大多数训练样本或所有训练样本具有相匹配的标签。如果某一训练样本与同组中的多数训练样本具有不匹配的标签,可以将该训练样本检测为异常样本。例如,异常样本检测单元214可以基于各个训练样本的特征进行聚类。理论上,具有相匹配标签的训练样本会被聚类到同一个簇中。如果某个或某些训练样本与同一簇中的其他训练样本具有不相匹配标签,则异常样本检测单元214确定其为异常样本。
如果检测到异常样本,检测结果生成模块220可以基于检测到异常样本,而生成第二推荐信息。第二推荐信息作为样本检测结果的一部分,可以提供针对异常样本的操作建议。例如,第二推荐信息可以指示从训练样本集120中移除或修正异常样本。
附加地,在一些实施例中,还可以确定被检测为异常样本异常的程度或可能性,例如下文描述的异常分数,其指示样本具有错误标签的概率。在这种情况下,第二推荐信息可以进一步取决于样本异常的程度或可能性。例如,对于为异常样本可能性较高(例如,异常分数较高)的训练样本,第二推荐信息可以指示移除该训练样本。与之相比,对于为异常样本可能性较低(例如,异常分数较低)的训练样本,第二推荐信息可以指示修正该训练样本。在这种实施例中,实现了对异常样本的细化处理,以帮助用户更好地改善训练数据。这有利于进一步降低用户的使用难度和复杂度。
在一些实施例中,如果检测到异常样本,检测结果生成模块220所生成的样本检测结果可以包括异常样本的描述信息。描述信息可以包括图像、数值、文字等格式的信息。例如,可以生成异常样本的列表,针对每个异常样本,列表可以包括该异常样本相关信息,例如序号、为异常样本的可能性等。备选地或附加地,样本检测结果可以包括与异常样本相同组的至少一个“正常”训练样本的描述信息。
示例性的,每个训练样本可以为电路版图。样本检测结果可以包括被检测为异常样本的电路版图及其为异常的可能性。样本检测结果还可以包括同一组中未被检测为异常样本(即,正常样本)的电路版图。以此方式,可以以直观的方式向用户展示异常样本与正常样本的差异,从而有助于用户对所检测到的异常样本或潜在的异常样本进行修正等。
以上通过多个示例实施例对因素检测模块210可能包含的单元进行了描述。应当理解,因素检测模块210所包含的单元种类以及数量仅仅是示例性的,不构成对本公开的限制。例如,因素检测模块210可以包括样本不平衡检测单元212、异常样本检测单元214以及其他任何合适的检测单元,从而尽可能减少降低模型性能的因素。又例如,因素检测模块210还可以包括用于缺失值检测的单元,从而可以通过检测结果生成模块220指示补全训练样本。再例如,因素检测模块210还可以包括多个样本异常检测单元214。每个有样本异常检测单元214采用不同的检测算法,从而提高异常样本检测的准确率和效率。
如图2所示,在一些实施例中,架构200还可以包括验证模块230。验证模块230用于从所检测到的因素中确定用于进一步验证的因素,也即验证检测结果是否正确的因素。这种验证可以是由人工执行的,例如专家(Expert)验证。在一些实施例中,通过这种验证,还可以获得针对所检测到的因素的处理推荐,例如更改异常样本的标签、增强具有某一类标签的样本等。
验证模块230进一步用于根据验证结果提供对检测结果生成模块220和/或因素检测模块210的反馈。例如,如果验证结果指示检测结果正确,所提供的反馈是正向的;如果验证结果指示检测结果错误,所提供的反馈是负向的。以此方式,可以有助于正确检测到降低模型训练效果的因素,例如异常样本等。
此外,还可以在机器学习的不同的阶段采用不同的方式进行检测,以使得用户在对应的阶段得到较为明确的调整方向,从而提高模型训练的效率。在一些实施例中,上文所描述的样本检测可以是在使用训练样本集120训练机器学习模型130之前被执行的。在一些实施例中,样本检测可以是在机器学习模型130被训练后执行的。例如,如果经训练的机器学习模型130的性能低于预定性能(这意味着训练效果不佳),可以执行样本检测。特别地,在一些实施例中,进行样本检测可以是响应于经训练的机器学习模型130的性能低于预定性能并且未检测到样本不平衡和异常样本。为了更清楚地理解本公开实施例的样本检测方案,以下将结合一个具体的示例对执行检测任务的时间点进行描述。
图3示出了根据本公开的一些实施例的用于数据处理的示例方法300的流程图。例如,方法300可以由如图1B所示的数据处理设备110来执行。以下结合图1B来描述方法300。应当理解,方法300还可以包括未示出的附加框和/或可以省略所示出的某些框。本公开的范围在此方面不受限制。
在框310,在训练机器学习模型前,对训练样本进行检测。这样的检测是在使用训练样本集120训练机器学习模型130之前被执行的。例如,在训练前,可以检测训练样本是否平衡。如果确定检测到样本不平衡因素,可以列出训练样本偏少的类别,并建议对其进行数据增强。又如,在训练前,可以检测训练样本集120中是否存在异常样本。如果检测到异常样本,可以生成异常样本的列表。该列表中可以指示异常样本,也可以进一步指示疑似异常的训练样本及其可能性。此外,数据处理设备110可以建议对异常样本或疑似异常的训练样本进行处理,例如从训练样本集120中移除或对其进行修正。
在框320,利用训练后的机器学习模型130进行推理,确定训练效果。例如,在测试阶段,利用机器学习模型130对具有标签的测试样本进行推理。基于推理结果可以分析训练效果,也即确定经训练的机器学习模型的性能。
在框330,确定训练效果是否满足要求。对训练效果的评估可以是整体的。例如,对于多分类任务,针对训练效果或模型性能的要求可以是所有类别的平均准确度大于阈值。备选地或附加地,对训练效果的评估可以进一步细化。例如,对于多分类问题,针对训练效果或模型性能的要求可以是某一或某些类别的准确度大于阈值。如果在框330确定训练效果满足要求,则可以不进行训练后的样本检测。
如果在框330确定训练效果不满足要求,方法300进行到框340。在框340,对训练样本进行检测,并给出对应建议。这样的检测是响应于训练效果不满足要求,即机器学习模型130的性能低于预定性能时被执行的。可以根据推理的结果进行分析,以判断导致训练效果不佳的可能因素。例如,在训练后,数据处理设备110基于用户的指示而检测训练样本集120,并基于训练样本的分布确定训练样本是否平衡。在检测到样本不平衡因素后,数据处理设备110可以根据参数进一步判断训练样本是否进行数据增强。如果没有进行过数据增强,则给出进行数据增强的建议。数据处理设备110还可以检测训练样本集120中是否存在异常样本。如果存在异常样本,则建议移除。
综上所述,本公开的实施例可以利用机器学习模型的不同阶段对模型的训练样本进行检测,例如自动地或被指定地,以尽可能减少降低模型性能的因素并生成检测结果,从而帮助跨领域用户利用模型或定位影响模型性能的问题。
上文参考图2描述了异常样本检测。一种类型的异常样本可以是具有错误标签的样本。下面将参考图4至图6进一步描述检测和验证这种具有错误标签的异常样本的示例实施例。图4示出了根据本公开的一些实施例的包括异常样本检测和验证的示例数据处理过程400的示意图。如图4所示,从DMS系统获得训练样本集401,但应当理解这仅是示例性的,可以通过任何合适的方式来获取训练样本集401。训练样本集401可以视为上文参考图1B所描述的训练样本集120的示例,因此不再赘述对其的描述。
在框402,对训练样本集401执行数据分析,以检测样本不平衡因素。如果检测到样本不平衡因素,可以相应地对训练样本集401进行增强,例如以增加原本样本较少的类别的数据。可以采用任何合适的数据增强方法,本公开的实施例在此方面不受限制。
在框403,可以利用增强后的训练样本集401对机器学习模型进行训练。由此,可以获得机器学习模型的基础(base)版本,其也称为基础模型。可以利用验证样本集对基础模型的性能进行验证。如果性能满足要求,则可以在框404执行机器学习模型的部署。如果性能不满足要求,则过程400进行到异常样本检测和验证的示例过程450。
总体上,在过程450中,可以基于训练样本集401中的训练样本的相应标签和相应特征,生成异常样本检测结果。异常样本检测结果至少指示训练样本集401中的多个候选样本,每个候选样本为具有错误标签的异常样本的候选。也即,可以基于训练样本的相应标签和相应特征,检测可能为异常样本的候选样本。
在一些实施例中,异常样本检测结果可以包括这些候选样本的相应异常分数,每个候选样本的异常分数指示该候选样本具有错误标签的概率。换言之,异常分数可以指示对应的候选样本为异常样本的可能性。在这种实施例中,如图4所示,对候选样本的检测可以包括在框451执行的样本打分和在框452执行的样本筛选。
样本打分可以基于训练样本的相应特征和相应标签。具体地,针对训练样本集401中的任一训练样本(也称为给定训练样本),可以基于训练样本集401中的各个训练样本的相应特征,从训练样本集401中确定该给定训练样本的一组相似样本以及这组相似样本与给定训练样本的相应相似度。例如,可以利用任何合适的特征提取模型来提取各个训练样本的特征。然后,针对所考虑的任一训练样本,在特征空间中找到与该训练样本最接近的K个训练样本作为该训练样本的相似样本,其中K是大于等于1的正整数。示例性的,可以利用K个最邻近(KNN)算法来确定相似样本。也即,这组相似样本是特征与该训练样本最接近的K个训练样本。
而后,可以基于给定训练样本的标签、这组相似样本的相应标签以及这些相似样本与给定训练样本的相应相似度,确定给定训练样本的异常分数。如前文所提及的,异常分数指示给定训练样本具有错误标签的概率。这组相似样本中可能存在标签与给定训练样本的标签相匹配的相似样本和标签与给定训练样本的标签不匹配的相似样本。在计算异常分数时,标签匹配的相似样本和标签不匹配的相似样本对异常分数的贡献度可以不同。
在一些实施例中,在计算异常分数时,可以考虑标签匹配的相似样本和标签不匹配的相似样本,但这两者的权重不同。具体地,针对每个相似样本,可以基于给定训练样本的标签与该相似样本的标签是否匹配,确定针对该相似样本的权重。这样,可以基于这组组相似样本各自的相似度和权重,确定异常分数。可以理解的是,标签匹配的相似样本越多,该给定训练样本为异常样本的可能性越低。有鉴于此,与标签不匹配的相似样本相比,标签匹配的相似样本对异常分数的贡献是负向的。
参考图5描述计算异常分数的示例。如图5所示,给定训练样本501具有标签A。利用诸如KNN之类的算法,从训练样本集中找出与给定训练样本501的特征最接近的5个相似样本511、512、513、514和515。相似样本511、512、513、514具有标签A,而相似样本515具有标签B。示例性的,这些样本可以是晶圆的图像,例如扫描电子显微镜图像。标签可以是晶圆中的缺陷的类型。
根据给定训练样本501的特征以及相似样本511、512、513、514和515的相应特征,可以计算相似样本511、512、513、514和515与给定训练样本501的相应相似度,也即图5所示的相似度1、相似度2、相似度3、相似度4、相似度5。与给定训练样本501具有相同标签的相似样本511、512、513、514具有权重W1,而具有不同标签的相似样本515具有权重W2。考虑到标签匹配样本的负贡献,可以按照权重W1和W2对(1-相似度1)、(1-相似度2)、(1-相似度3)、(1-相似度4)和相似度5进行加权,从而得到针对给定训练样本501的异常分数520。
在一些实施例中,在计算异常分数时,可以考虑标签不匹配的相似样本,而不考虑标签匹配的相似样本。具体地,可以从这组相似样本中选择标签与给定训练样本不匹配的一个或多个相似样本。而后,可以基于标签不匹配的一个或多个相似样本与给定训练样本的相应相似度,确定异常分数。示例性的,可以通过以下计算异常分数:
(1)
其中表示当前所考虑的给定训练样本的异常分数;k表示相似样本的数目;i表示第i个相似样本;/>表示第i个相似样本与给定训练样本的相似度,例如可以是第i个相似样本的特征与给定训练样本的特征之间的归一化距离;/>表示第i个训练样本的权重。例如,如果第i个相似样本的标签与给定训练样本匹配,则/>可以为0;如果第i个相似样本的标签与给定训练样本不匹配,则/>可以为1。
在以上描述的实施例中,基于特征确定相似样本,然后基于相似样本的标签来计算异常分数。备选地或附加地,在一些实施例中,可以基于训练样本集401中的各个训练样本的标签确定具有相匹配标签的一组训练样本。进一步地,可以确定该组训练样本中的每对训练样本之间的特征差异,而后可以基于超过阈值差异的特征差异,从该组训练样本中确定异常样本。例如,如果某个训练样本与同组中一定数目的其他训练样本之间的特征差异均超过阈值差异,则可以将该训练样本检测为异常样本。上文参考异常样本检测单元214描述了这样的实施例,因此不再赘述。
继续参考图4。在经过框451的样本打分之后,可以获取训练样本集401中的各个训练样本的异常分数。在框452,基于异常分数对训练样本进行筛选,以确定作为异常样本候选的多个候选样本,也称为候选样本集合。例如,可以将异常分数超过阈值分数的训练样本确定为候选样本。又例如,可以按照异常分数对训练样本排序,并且将一定数目或比例的训练样本确定为候选样本。
在框453,执行检测结果验证。例如,可以基于异常样本检测结果,从候选样本中确定一个或多个目标样本,以用于验证所述一个或多个目标样本是否具有错误标签。然后,可以呈现与一个或多个目标样本有关的信息,以供人工(例如,专家)验证,并且从而接收到验证结果。验证结果可以指示目标样本的标签是否错误,也即目标样本是否为异常样本。在一些实施例中,验证结果还可以指示目标样本的新标签。
下面描述从候选样本中确定用于验证的目标样本的示例实施例。可以理解的是,训练样本可能是大量的,而人工验证的量是有限的,因此需要选择要验证的样本。在一些实施例中,可以随机从这些候选样本中选择目标样本。在一些实施例中,可以按照异常分数从高到低地选择目标样本。
在一些实施例中,考虑到异常分数的计算可能存在不准确性,可以对候选样本进行分组,然后再进行目标样本选择。例如,可以基于候选样本的相应异常分数,将候选样本划分为多组候选样本。针对每组候选样本,基于该组候选样本的异常分数,确定该组候选样本的选择概率,以获得各组候选样本的相应选择概率。而后,可以根据各组候选样本的相应选择概率,从这些候选样本中选择目标样本。
参考图6描述选择用于验证的目标样本的示例。如图6所示,根据分组标准602,将候选样本集合601中的候选样本划分为h组候选样本,其分别由g1、g2、g3、……、gh表示。分组标准602与候选样本组的总数目和候选样本的异常分数有关。示例性的,分组标准602可以如下所示:
(2)
其中表示候选样本的异常分数,h表示所划分的候选样本组的总数目,i表示第i个候选样本组。也即,异常分数在范围/>内的候选样本可以被划分为第i组候选样本。应当理解,在此描述的分组标准仅是示例性的,而无意限制本公开的范围。
接下来,可以计算各组候选样本的选择概率。如图6所示,h组候选样本的相应选择概率分别由p1、p2、p3、……、ph表示。示例性的,第i组候选样本的选择概率pi可以由式(3)计算,并且满足式(4):
其中表示第i组候选样本的样本数目,/>表示第i组候选样本中的第j个候选样本的异常分数,N表示候选样本集合601中的候选样本总数目,表示候选样本集合601中的第m个候选样本的异常分数。如式(4)所描述的,h组候选样本的选择概率之和为1。
接下来,可以根据所计算的选择概率,来从这些候选样本中选择目标样本603。而后,可以呈现与目标样本603相关的信息,以供人工验证。由此,可以接收到验证结果604。
在一些实施例中,可以按照上述计算的选择概率,一次性选择预定数目或预定比例的目标样本。
在一些实施例中,可以进行多轮选择,在每轮选择中可以选择预定数目或预定比例的目标样本。可以将上述计算的选择概率作为首轮选择所使用的概率。在后续轮次选择中可以通过移除先前所选择的目标样本来确定剩余候选样本。可以基于先前轮次所选择的目标样本的验证结果来更新各组候选样本的选择概率。
示例性的,可以根据目标样本的验证结果,来生成针对该目标样本所属的候选样本组的反馈分数。然后,可以利用反馈分数来更新选择概率。例如,可以如下式来更新选择概率:
(5)
其中表示第i组候选样本的经更新的选择概率。如果第j个候选样本在先前轮次中被选择为目标样本,则rewards_j表示针对该候选样本的反馈分数。示例性的,该反馈分数至少跟该样本是否为异常样本有关。式(5)中其余符号与式(3)相同,因此不再赘述。
在一些实施例中,如果前一轮选择中被选择的第一目标样本的验证结果指示第一目标样本具有错误标签,则可以增大第一目标样本所属于的第一组候选样本的选择概率。也即,如果某一组候选样本中已有样本被验证为标签错误,则期望以更大的概率从该组候选样本中选择目标样本以进行验证。
在一些实施例中,如果前一轮选择中被选择的第二目标样本的验证结果指示第二目标样本不具有错误标签,则可以减小第二目标样本所属于的第二组候选样本的选择概率。也即,如果某一组候选样本中已有样本被验证为标签是正确,则期望以更小的概率从该组候选样本中选择目标样本以进行验证。
在多轮选择的实施例中,可以使用任何合适的条件来终止上述的选择迭代。例如,终止条件可以是已经被验证的样本的数目超过阈值数目。又如,终止条件可以是已经进行阈值数目轮次的选择。再如,终止条件可以是某一轮中所选择的目标样本均被验证为不具有错误标签。
继续参考图4。在进行检测结果验证之后,可以根据验证结果604确定针对训练样本集401的反馈,从而执行与训练样本集401相关联的更新操作。在一些实施例中,如果验证结果604指示标签错误的样本的正确标签,则反馈可以是在训练样本集401中更新该样本的标签。由此,训练样本集401可以被更新。在一些实施例中,如果验证结果604指示某个样本标签错误但未提供正确标签,则反馈可以是将该样本从训练样本集401中移除。
人工验证的样本量是有限的,可能并非每个候选样本都能被验证。如果每组候选样本中有较多数目的样本被验证为标签错误,那么应如何处理该组候选样本中的其他未被验证的样本是需要进一步考虑的。有鉴于此,在一些实施例中,如果候选样本被分组,诸如上文参考图6所描述的,则可以针对每组候选样本,根据验证结果,确定被验证为具有错误标签并且属于该组候选样本的目标样本的数目。如果该数目满足预设条件,可以将该组候选样本从训练样本集401中移除以更新训练样本集401,或者可以降低该组候选样本在机器学习模型的训练中的贡献度。预设条件可以包括超过阈值数目等。在一些实施例中,降低该组候选样本在机器学习模型的训练中的贡献度可以包括减小与该组候选样本相对应的训练损失项在机器学习模型的总训练损失中的权重。
在确定了与训练样本集401相关联的更新操作之后,在框455,执行机器学习模型调整。例如,利用更新后的训练样本集401训练机器学习模型。在框456,对更新后的训练样本集401执行样本验证。例如,可以确定更新后的训练样本集401中的作为异常样本的候选样本的比例是否超过阈值。如果通过验证(例如,比例低于阈值),则可以进行到框404,以部署利用更新后的训练样本集401而训练的机器学习模型。如果未通过验证(例如,比例高于阈值),则可以重复过程450。
图7示出了根据本公开的实施例的用于数据处理的示例方法700的流程图。例如,方法700可以由如图1B所示的数据处理设备110来执行。以下结合图1B来描述方法700。应当理解,方法700还可以包括未示出的附加框和/或可以省略所示出的某些框。本公开的范围在此方面不受限制。
在框710处,获取用于机器学习模型的训练样本集,训练样本集中的每个训练样本与集成电路的设计方案或测量结果中的至少一项相关联。
在框720处,基于训练样本的相应标签或相应特征中的至少一项,检测训练样本集中降低机器学习模型的性能的因素。
在框730处,基于所检测到的因素生成样本检测结果,样本检测结果至少指示对训练样本集的推荐处理。
在一些实施例中,基于检测的结果生成样本检测结果包括:响应于检测到样本不平衡并且样本不平衡因素指示训练样本集中的第一组训练样本在训练样本集中的比例小于阈值比例,生成第一推荐信息作为样本检测结果的至少一部分,第一推荐信息指示增加第一组训练样本的样本数目。
在一些实施例中,检测训练样本集中降低机器学习模型的性能的因素包括:基于相应标签,将训练样本集中的训练样本划分成多组训练样本,同一组中的训练样本具有相匹配的标签;针对多组训练样本中的每组训练样本,确定该组训练样本在训练样本集中的比例;以及响应于第一组训练样本的比例小于阈值比例,确定检测到样本不平衡因素。
在一些实施例中,基于检测的结果生成样本检测结果包括:响应于检测到训练样本集存在异常样本,生成第二推荐信息作为样本检测结果的至少一部分,第二推荐信息指示移除或修正异常样本,其中异常样本的特征与训练样本集中的多个训练样本的特征之间的差异大于第一阈值差异。
在一些实施例中,检测训练样本集中降低机器学习模型的性能的因素包括:基于相应标签,确定训练样本集中具有相匹配标签的第二组训练样本;针对第二组训练样本中的每对训练样本,基于该对训练样本的相应特征,确定该对训练样本之间的特征差异,以确定多个特征差异;以及响应于多个特征差异存在超过第一阈值差异的特征差异,基于超过第一阈值差异的特征差异,从第二组训练样本中确定异常样本。
在一些实施例中,样本检测结果还包括以下至少一项:异常样本的描述信息,或多个训练样本中的至少一个训练样本的描述信息。
在一些实施例中,对因素的检测是在使用训练样本集训练机器学习模型之前被执行的。
在一些实施例中,对因素的检测是响应于使用训练样本集而训练的机器学习模型的性能低于预定性能。
在一些实施例中,机器学习模型被配置为检测集成电路版图中的热点,并且每个训练样本包括样本版图。
在一些实施例中,机器学习模型被配置为检测晶圆中的缺陷,并且每个训练样本包括所制造的晶圆的图像。
图8示出了根据本公开的实施例的用于数据处理的示例方法800的流程图。例如,方法800可以由如图1B所示的数据处理设备110来执行。以下结合图1B来描述方法800。应当理解,方法800还可以包括未示出的附加框和/或可以省略所示出的某些框。本公开的范围在此方面不受限制。
在框810,数据处理设备110获取用于机器学习模型的训练样本集。训练样本集中的每个训练样本与集成电路的设计方案或测量结果中的至少一项相关联。
在框820,数据处理设备110基于训练样本集中的训练样本的相应标签和相应特征,生成异常样本检测结果。异常样本检测结果至少指示训练样本集中的多个候选样本,每个候选样本为具有错误标签的异常样本的候选。
在框830,数据处理设备110基于异常样本检测结果,从多个候选样本中确定一个或多个目标样本,以用于验证一个或多个目标样本是否具有错误标签。
在框840,数据处理设备110基于针对一个或多个目标样本的相应验证结果,执行与训练样本集相关联的更新操作。
在一些实施例中,生成异常样本检测结果包括:针对训练样本集中的给定训练样本,基于训练样本集中的训练样本的相应特征,从训练样本集中确定给定训练样本的一组相似样本以及一组相似样本与给定训练样本的相应相似度;基于给定训练样本的标签、一组相似样本的相应标签和相应相似度,确定给定训练样本的异常分数,异常分数指示给定训练样本具有错误标签的概率;以及响应于异常分数超过阈值分数,将给定训练样本确定为多个候选样本之一。
在一些实施例中,确定给定训练样本的异常分数包括:针对一组相似样本中的每个相似样本,基于给定训练样本的标签与该相似样本的标签是否匹配,确定针对该相似样本的权重;以及基于一组相似样本的相应相似度和相应权重,确定异常分数。
在一些实施例中,确定给定训练样本的异常分数包括:从一组相似样本中选择标签与给定训练样本不匹配的一个或多个相似样本;以及基于一个或多个相似样本与给定训练样本的相应相似度,确定异常分数。
在一些实施例中,生成异常样本检测结果包括:基于相应标签,确定训练样本集中具有相匹配标签的一组训练样本;针对一组训练样本中的每对训练样本,基于该对训练样本的相应特征,确定该对训练样本之间的特征差异,以确定多个特征差异;以及响应于多个特征差异存在超过阈值差异的特征差异,基于超过阈值差异的特征差异,从一组训练样本中确定多个候选样本中的至少一个候选样本。
在一些实施例中,异常样本检测结果包括多个候选样本的相应异常分数,每个候选样本的异常分数指示该候选样本具有错误标签的概率,并且从多个候选样本中确定一个或多个目标样本包括:基于相应异常分数,将多个候选样本划分为多组候选样本;针对多组候选样本中的每组候选样本,基于该组候选样本的异常分数,确定该组候选样本的选择概率,以获得多组候选样本的相应选择概率;以及基于多组候选样本的相应选择概率,从多个候选样本中选择一个或多个目标样本。
在一些实施例中,从多个候选样本中选择一个或多个目标样本包括多轮选择,并且在首轮选择之后的每轮选择中执行以下操作:通过移除该轮选择的前一轮选择中被选择的目标样本来确定剩余候选样本;基于前一轮选择中被选择的目标样本的验证结果,更新多组候选样本的相应选择概率;基于经更新的相应选择概率,从剩余候选样本中选择该轮选择的目标样本。
在一些实施例中,更新多组候选样本的相应选择概率包括:响应于前一轮选择中被选择的第一目标样本的验证结果指示第一目标样本具有错误标签,增大第一目标样本所属于的第一组候选样本的选择概率;或响应于前一轮选择中被选择的第二目标样本的验证结果指示第二目标样本不具有错误标签,减小第二目标样本所属于的第二组候选样本的选择概率。
在一些实施例中,执行与训练样本集相关联的更新操作包括:基于相应验证结果,确定被验证为具有错误标签并且属于第三组候选样本的目标样本的数目;响应于数目满足预设条件,将第三组候选样本从训练样本集移除,以更新训练样本集;降低第三组候选样本在机器学习模型的训练中的贡献度。
在一些实施例中,降低第三组候选样本在机器学习模型的训练中的贡献度包括:减小与第三组候选样本相对应的训练损失项在机器学习模型的总训练损失中的权重。
在一些实施例中,机器学习模型被配置为检测集成电路版图中的热点,并且每个训练样本包括样本版图。
在一些实施例中,机器学习模型被配置为检测晶圆中的缺陷,并且每个训练样本包括所制造的晶圆的图像。
图9示出了其中可以实施本公开的一个或多个实施例的电子设备900的框图。该电子设备900例如可以用于实现如图1B所示的数据处理设备110。应当理解,图9所示出的电子设备900仅仅是示例性的,而不应当构成对本文所描述的实施例的功能和范围的任何限制。
如图9所示,电子设备900是通用电子设备的形式。电子设备900的组件可以包括但不限于一个或多个处理器或处理单元910、存储器920、存储设备930、一个或多个通信单元940、一个或多个输入设备950以及一个或多个输出设备960。处理单元910可以是实际或虚拟处理器并且能够根据存储器920中存储的程序来执行各种处理。在多处理器系统中,多个处理单元并行执行计算机可执行指令,以提高电子设备900的并行处理能力。
电子设备900通常包括多个计算机存储介质。这样的介质可以是电子设备900可访问的任何可以获得的介质,包括但不限于易失性和非易失性介质、可拆卸和不可拆卸介质。存储器920可以是易失性存储器(例如寄存器、高速缓存、随机访问存储器(RAM))、非易失性存储器(例如,只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、闪存)或它们的某种组合。存储设备930可以是可拆卸或不可拆卸的介质,并且可以包括机器可读介质,诸如闪存驱动、磁盘或者任何其他介质,其可以能够用于存储信息和/或数据(例如用于训练的训练数据)并且可以在电子设备900内被访问。
电子设备900可以进一步包括另外的可拆卸/不可拆卸、易失性/非易失性存储介质。尽管未在图9中示出,可以提供用于从可拆卸、非易失性磁盘(例如“软盘”)进行读取或写入的磁盘驱动和用于从可拆卸、非易失性光盘进行读取或写入的光盘驱动。在这些情况中,每个驱动可以由一个或多个数据介质接口被连接至总线(未示出)。存储器920可以包括计算机程序产品925,其具有一个或多个程序模块,这些程序模块被配置为执行本公开的各种实施例的各种方法或动作。
通信单元940实现通过通信介质与其他电子设备进行通信。附加地,电子设备900的组件的功能可以以单个计算集群或多个计算机器来实现,这些计算机器能够通过通信连接进行通信。因此,电子设备900可以使用与一个或多个其他服务器、网络个人计算机(PC)或者另一个网络节点的逻辑连接来在联网环境中进行操作。
输入设备950可以是一个或多个输入设备,例如鼠标、键盘、追踪球等。输出设备960可以是一个或多个输出设备,例如显示器、扬声器、打印机等。电子设备900还可以根据需要通过通信单元940与一个或多个外部设备(未示出)进行通信,外部设备诸如存储设备、显示设备等,与一个或多个使得用户与电子设备900交互的设备进行通信,或者与使得电子设备900与一个或多个其他电子设备通信的任何设备(例如,网卡、调制解调器等)进行通信。这样的通信可以经由输入/输出(I/O)接口(未示出)来执行。
根据本公开的示例性实现方式,提供了一种计算机可读存储介质,其上存储有一条或多条计算机指令,其中一条或多条计算机指令被处理器执行以实现上文描述的方法。
这里参照根据本公开实现的方法、装置(系统)和计算机程序产品的流程图和/或框图描述了本公开的各个方面。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机可读程序指令实现。
这些计算机可读程序指令可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理单元,从而生产出一种机器,使得这些指令在通过计算机或其他可编程数据处理装置的处理单元执行时,产生了实现流程图和/或框图中的一个或多个方框中规定的功能/动作的装置。也可以把这些计算机可读程序指令存储在计算机可读存储介质中,这些指令使得计算机、可编程数据处理装置和/或其他设备以特定方式工作,从而,存储有指令的计算机可读介质则包括一个制造品,其包括实现流程图和/或框图中的一个或多个方框中规定的功能/动作的各个方面的指令。
也可以把计算机可读程序指令加载到计算机、其他可编程数据处理装置、或其他设备上,使得在计算机、其他可编程数据处理装置或其他设备上执行一系列操作步骤,以产生计算机实现的过程,从而使得在计算机、其他可编程数据处理装置、或其他设备上执行的指令实现流程图和/或框图中的一个或多个方框中规定的功能/动作。
附图中的流程图和框图显示了根据本公开的多个实现的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或指令的一部分,模块、程序段或指令的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
以上已经描述了本公开的各实现,上述说明是示例性的,并非穷尽性的,并且也不限于所公开的各实现。在不偏离所说明的各实现的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实现的原理、实际应用或对市场中的技术的改进,或者使本技术领域的其他普通技术人员能理解本文公开的各实现。

Claims (12)

1.一种数据处理方法,其特征在于,包括:
获取用于机器学习模型的训练样本集,所述训练样本集中的每个训练样本与集成电路的设计方案或测量结果中的至少一项相关联;
基于所述训练样本的相应标签或相应特征中的至少一项检测所述训练样本集中降低所述机器学习模型的性能的因素;
基于所检测到的因素生成样本检测结果,所述样本检测结果至少指示对所述训练样本集的推荐处理,并且所述样本检测结果还指示所述训练样本集中的多个候选样本,每个候选样本为具有错误标签的异常样本的候选,并且所述样本检测结果包括所述多个候选样本的相应异常分数,每个候选样本的异常分数指示该候选样本具有错误标签的概率;
基于所述相应异常分数,将所述多个候选样本划分为多组候选样本;
从所述多组候选样本中,确定一个或多个目标样本,以用于验证所述一个或多个目标样本是否具有错误标签;
基于针对所述一个或多个目标样本的相应验证结果,确定被验证为具有错误标签并且属于相同的一组候选样本的目标样本的数目;以及
响应于所述数目满足预设条件,针对所述一组候选样本执行与所述训练样本集相关联的更新操作。
2.根据权利要求1所述的数据处理方法,其特征在于,基于所检测到的因素生成样本检测结果包括:
响应于检测到样本不平衡并且所述样本不平衡因素指示所述训练样本集中的第一组训练样本在所述训练样本集中的比例小于阈值比例,生成第一推荐信息作为所述样本检测结果的至少一部分,所述第一推荐信息指示增加所述第一组训练样本的样本数目。
3.根据权利要求2所述的数据处理方法,其特征在于,检测所述训练样本集中降低所述机器学习模型的性能的因素包括:
基于所述相应标签,将所述训练样本集中的训练样本划分成多组训练样本,同一组中的训练样本具有相匹配的标签;
针对所述多组训练样本中的每组训练样本,确定该组训练样本在所述训练样本集中的比例;以及
响应于所述第一组训练样本的所述比例小于所述阈值比例,确定检测到样本不平衡因素。
4.根据权利要求1所述的数据处理方法,其特征在于,基于所检测到的因素生成样本检测结果包括:
响应于检测到所述训练样本集存在异常样本,生成第二推荐信息作为所述样本检测结果的至少一部分,所述第二推荐信息指示移除或修正所述异常样本,其中所述异常样本的特征与所述训练样本集中的多个训练样本的特征之间的差异大于第一阈值差异。
5.根据权利要求4所述的数据处理方法,其特征在于,检测所述训练样本集中降低所述机器学习模型的性能的因素包括:
基于所述相应标签,确定所述训练样本集中具有相匹配标签的第二组训练样本;
针对所述第二组训练样本中的每对训练样本,基于该对训练样本的相应特征,确定该对训练样本之间的特征差异,以确定多个特征差异;以及
响应于所述多个特征差异存在超过所述第一阈值差异的特征差异,基于超过所述第一阈值差异的特征差异,从所述第二组训练样本中确定所述异常样本。
6.根据权利要求4所述的数据处理方法,其特征在于,所述样本检测结果还包括以下至少一项:
所述异常样本的描述信息,或
所述多个训练样本中的至少一个训练样本的描述信息。
7.根据权利要求1所述的数据处理方法,其特征在于,对所述因素的检测是在使用所述训练样本集训练所述机器学习模型之前被执行的。
8.根据权利要求1所述的数据处理方法,其特征在于,对所述因素的检测是响应于使用所述训练样本集而训练的所述机器学习模型的性能低于预定性能。
9.根据权利要求1所述的数据处理方法,其特征在于,所述机器学习模型被配置为检测集成电路版图中的热点,并且每个训练样本包括样本版图。
10.根据权利要求1所述的数据处理方法,其特征在于,所述机器学习模型被配置为检测晶圆中的缺陷,并且每个训练样本包括所制造的晶圆的图像。
11.一种电子设备,其特征在于,包括:
至少一个处理单元;以及
至少一个存储器,所述至少一个存储器被耦合到所述至少一个处理单元并且存储用于由所述至少一个处理单元执行的指令,所述指令在由所述至少一个处理单元执行时使所述电子设备执行根据权利要求1至10中任一项所述的方法。
12.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序可由处理器执行以实现根据权利要求1至10中任一项所述的方法。
CN202311597862.2A 2023-11-23 2023-11-23 用于数据处理的方法、设备和介质 Active CN117313900B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202311597862.2A CN117313900B (zh) 2023-11-23 2023-11-23 用于数据处理的方法、设备和介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202311597862.2A CN117313900B (zh) 2023-11-23 2023-11-23 用于数据处理的方法、设备和介质

Publications (2)

Publication Number Publication Date
CN117313900A CN117313900A (zh) 2023-12-29
CN117313900B true CN117313900B (zh) 2024-03-08

Family

ID=89288732

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202311597862.2A Active CN117313900B (zh) 2023-11-23 2023-11-23 用于数据处理的方法、设备和介质

Country Status (1)

Country Link
CN (1) CN117313900B (zh)

Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020029009A1 (zh) * 2018-08-06 2020-02-13 深圳迈瑞生物医疗电子股份有限公司 一种样本检测信息管理方法以及样本检测设备
CN110991657A (zh) * 2019-11-22 2020-04-10 深圳市魔数智擎人工智能有限公司 一种基于机器学习的异常样本检测方法
CN111178387A (zh) * 2019-12-03 2020-05-19 重庆邮电大学 一种基于多粒度相对密度的标签噪声检测方法
CN111382798A (zh) * 2020-03-10 2020-07-07 上海眼控科技股份有限公司 样本图片的标签修正方法、装置、设备和存储介质
CN112470131A (zh) * 2018-07-20 2021-03-09 华为技术有限公司 检测数据集中异常的装置和方法以及它们相应的计算机程序产品
CN112801298A (zh) * 2021-01-20 2021-05-14 北京百度网讯科技有限公司 异常样本检测方法、装置、设备和存储介质
CN114036610A (zh) * 2021-11-04 2022-02-11 河海大学 一种基于数据增强的侵彻深度预测方法
CN114169460A (zh) * 2021-12-14 2022-03-11 中国工商银行股份有限公司 样本筛选方法、装置、计算机设备和存储介质
CN114257517A (zh) * 2021-11-22 2022-03-29 中国科学院计算技术研究所 一种生成用于检测网络节点的状态的训练集的方法
CN115205689A (zh) * 2022-09-14 2022-10-18 北京数慧时空信息技术有限公司 一种改进的无监督遥感影像异常检测方法
CN115810135A (zh) * 2021-09-14 2023-03-17 日本电气株式会社 样本分析的方法、电子设备、存储介质和程序产品
CN116910526A (zh) * 2023-01-16 2023-10-20 中国移动通信有限公司研究院 模型训练方法、装置、通信设备及可读存储介质
CN116958020A (zh) * 2022-11-10 2023-10-27 腾讯科技(深圳)有限公司 异常图像检测方法、模型训练方法、装置、设备和介质

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11636389B2 (en) * 2020-02-19 2023-04-25 Microsoft Technology Licensing, Llc System and method for improving machine learning models by detecting and removing inaccurate training data
US20230162049A1 (en) * 2020-04-03 2023-05-25 Presagen Pty Ltd Artificial intelligence (ai) method for cleaning data for training ai models
US20220318672A1 (en) * 2021-04-01 2022-10-06 Samsung Display Co., Ltd. Systems and methods for identifying manufacturing defects
US20220374720A1 (en) * 2021-05-18 2022-11-24 Samsung Display Co., Ltd. Systems and methods for sample generation for identifying manufacturing defects
KR102337070B1 (ko) * 2021-07-12 2021-12-08 (주)에이아이매틱스 이상 데이터 자동 검출 및 자동 라벨링 기술을 이용한 학습 데이터베이스 구축 방법 및 시스템

Patent Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112470131A (zh) * 2018-07-20 2021-03-09 华为技术有限公司 检测数据集中异常的装置和方法以及它们相应的计算机程序产品
WO2020029009A1 (zh) * 2018-08-06 2020-02-13 深圳迈瑞生物医疗电子股份有限公司 一种样本检测信息管理方法以及样本检测设备
CN110991657A (zh) * 2019-11-22 2020-04-10 深圳市魔数智擎人工智能有限公司 一种基于机器学习的异常样本检测方法
CN111178387A (zh) * 2019-12-03 2020-05-19 重庆邮电大学 一种基于多粒度相对密度的标签噪声检测方法
CN111382798A (zh) * 2020-03-10 2020-07-07 上海眼控科技股份有限公司 样本图片的标签修正方法、装置、设备和存储介质
CN112801298A (zh) * 2021-01-20 2021-05-14 北京百度网讯科技有限公司 异常样本检测方法、装置、设备和存储介质
CN115810135A (zh) * 2021-09-14 2023-03-17 日本电气株式会社 样本分析的方法、电子设备、存储介质和程序产品
CN114036610A (zh) * 2021-11-04 2022-02-11 河海大学 一种基于数据增强的侵彻深度预测方法
CN114257517A (zh) * 2021-11-22 2022-03-29 中国科学院计算技术研究所 一种生成用于检测网络节点的状态的训练集的方法
CN114169460A (zh) * 2021-12-14 2022-03-11 中国工商银行股份有限公司 样本筛选方法、装置、计算机设备和存储介质
CN115205689A (zh) * 2022-09-14 2022-10-18 北京数慧时空信息技术有限公司 一种改进的无监督遥感影像异常检测方法
CN116958020A (zh) * 2022-11-10 2023-10-27 腾讯科技(深圳)有限公司 异常图像检测方法、模型训练方法、装置、设备和介质
CN116910526A (zh) * 2023-01-16 2023-10-20 中国移动通信有限公司研究院 模型训练方法、装置、通信设备及可读存储介质

Also Published As

Publication number Publication date
CN117313900A (zh) 2023-12-29

Similar Documents

Publication Publication Date Title
US10223615B2 (en) Learning based defect classification
US20120016824A1 (en) Method for computer-assisted analyzing of a technical system
JP6584250B2 (ja) 画像分類方法、分類器の構成方法および画像分類装置
CN107577605A (zh) 一种面向软件缺陷预测的特征聚类选择方法
CN109670255B (zh) 一种时序参数聚类的典型仿真条件推荐方法
Zhang et al. Diagnostic system based on support-vector machines for board-level functional diagnosis
US20230178399A1 (en) Systems and methods for systematic physical failure analysis (pfa) fault localization
Rahim et al. Software defect prediction with naïve Bayes classifier
CN112836735A (zh) 一种优化的随机森林处理不平衡数据集的方法
Pan et al. Unsupervised root-cause analysis for integrated systems
KR20210135416A (ko) 시편의 검사를 위한 알고리즘 모듈들의 자동 선택
CN117313900B (zh) 用于数据处理的方法、设备和介质
CN117313899B (zh) 用于数据处理的方法、设备和介质
Liu et al. Knowledge transfer in board-level functional fault identification using domain adaptation
CN115280334A (zh) 错误原因的推定装置以及推定方法
US20220230028A1 (en) Determination method, non-transitory computer-readable storage medium, and information processing device
CN113127342B (zh) 基于电网信息系统特征选择的缺陷预测方法及装置
Ye et al. Information-theoretic syndrome and root-cause analysis for guiding board-level fault diagnosis
WO2022059135A1 (ja) エラー要因の推定装置及び推定方法
Bolchini et al. Machine learning-based techniques for incremental functional diagnosis: A comparative analysis
CN117561502A (zh) 一种确定失效原因的方法及装置
US20220067252A1 (en) A method for validating a hardware system
CN115185814B (zh) 一种基于二维程序频谱的多缺陷定位方法、系统及设备
JP7348945B2 (ja) 情報処理方法、および、情報処理システム
US20220237463A1 (en) Generation method, computer-readable recording medium storing generation program, and information processing apparatus

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant