异常检测装置、异常检测方法及记录介质与流程

文档序号:25237881发布日期:2021-06-01 14:24阅读:98来源:国知局
异常检测装置、异常检测方法及记录介质与流程

本公开涉及一种异常检测装置、异常检测方法及记录介质。



背景技术:

传统上已知一种异常检测技术,其在各种制造工艺的领域中,根据在对象物的处理中测定出的测定数据(多种时间序列数据的数据集,以下称为“时间序列数据组”),对在各种制造工艺中发生的异常进行检测。

例如,在半导体制造工艺中,通过利用预先生成的异常检测模型对在晶圆的处理中测定出的时间序列数据组进行监视,从而对有无异常或异常程度等进行判定。

<现有技术文献>

<专利文献>

专利文献1:(日本)特开2011-100211号公报



技术实现要素:

<本发明要解决的问题>

本公开提供一种能够执行高精度的异常检测处理的异常检测装置、异常检测方法及记录介质。

<用于解决问题的手段>

根据本公开的一个实施方式的异常检测装置例如具有以下构成。即,包括:取得部,取得在制造工艺的预定处理单元中伴随对象物的处理而测定出的时间序列数据组;以及学习部,包括对所取得的所述时间序列数据组进行处理的多个网络部、及对通过利用该多个网络部进行处理而输出的各输出数据进行合成的连接部,并且以使由该连接部输出的合成结果与在所述制造工艺的所述预定处理单元中对所述对象物进行处理时所取得的表示异常程度的信息接近的方式,针对所述多个网络部及所述连接部进行机器学习。

<发明的效果>

根据本公开,能够提供一种能够执行高精度的异常检测处理的异常检测装置、异常检测方法及记录介质。

附图说明

图1是示出包括半导体制造工艺和异常检测装置的系统的整体构成的一个示例的第1图。

图2是示出半导体制造工艺的预定处理单元的一个示例的第1图。

图3是示出半导体制造工艺的预定处理单元的一个示例的第2图。

图4是示出异常检测装置的硬件构成的一个示例的图。

图5是示出学习用数据的一个示例的第1图。

图6是示出时间序列数据组的一个示例的图。

图7是示出学习部的功能构成的一个示例的第1图。

图8是示出分支部的处理的具体示例的第1图。

图9是示出分支部的处理的具体示例的第2图。

图10是示出分支部的处理的具体示例的第3图。

图11是示出各网络部中包括的归一化部的处理的具体示例的图。

图12是示出分支部的处理的具体示例的第4图。

图13是示出推测部的功能构成的一个示例的第1图。

图14是示出异常检测处理的流程的第1流程图。

图15是示出包括半导体制造工艺和异常检测装置的系统的整体构成的一个示例的第2图。

图16是示出学习用数据的一个示例的第2图。

图17是示出oes数据的一个示例的图。

图18是示出被输入oes数据的各网络部中包括的归一化部的处理的具体示例的图。

图19是示出各归一化部的处理的具体示例的图。

图20是示出池化部的处理的具体示例的图。

图21是示出推测部的功能构成的一个示例的第2图。

图22是示出异常检测处理的流程的第2流程图。

具体实施方式

以下,参照附图对各实施方式进行说明。需要说明的是,在本说明书及附图中,针对具有实质上相同的功能构成的构成要素赋予相同的符号以省略重复的说明。

[第1实施方式]

<包括半导体制造工艺和异常检测装置的系统的整体构成>

首先,对包括制造工艺(在此为半导体制造工艺)和异常检测装置的系统的整体构成进行说明。图1是示出包括半导体制造工艺和异常检测装置的系统的整体构成的一个示例的第1图。如图1所示,系统100包括半导体制造工艺、时间序列数据取得装置140_1~140_n、以及异常检测装置160。

在半导体制造工艺中,在预定的处理单元120中对对物体(处理前晶圆110)进行处理,并生成结果物(处理后晶圆130)。需要说明的是,在此所说的处理单元120是抽象的概念,并且稍后将对其细节进行说明。另外,处理前晶圆110是指在处理单元120中被处理之前的晶圆(基板),处理后晶圆130是指在处理单元120中被处理之后的晶圆(基板)。

时间序列数据取得装置140_1~140_n分别取得在处理单元120中伴随处理前晶圆110的处理而测定出的时间序列数据。时间序列数据取得装置140_1~140_n针对相互不同的种类的测定项目进行测定。需要说明的是,由时间序列数据取得装置140_1~140_n分别测定的测定项目的数量可以是一个,也可以是多个。另外,在伴随处理前晶圆110的处理而测定出的时间序列数据中,除了包括在处理前晶圆110的处理期间测定出的时间序列数据以外,还包括于在处理前晶圆110的处理前后进行的预处理、后处理的期间测定出的时间序列数据。该些处理可以包括在没有晶圆(基板)的状态下进行的预处理、后处理。

通过时间序列数据取得装置140_1~140_n所取得的时间序列数据组作为学习用数据(输入数据)被存储在异常检测装置160的学习用数据存储部163中。

需要说明的是,在处理单元120中在处理前晶圆110的处理期间所取得的表示异常程度的信息与时间序列数据组相关联,并且作为学习用数据(正确答案数据)被存储在异常检测装置160的学习用数据存储部163中。

在异常检测装置160中安装有异常检测程序,并且通过执行该程序使得异常检测装置160起到学习部161和推测部162的功能。

学习部161利用学习用数据(由时间序列数据取得装置140_1~140_n所取得的时间序列数据组、以及与该时间序列数据组相关联的表示异常程度的信息)进行机器学习。具体来说,学习部161利用多个网络部对作为输入数据的时间序列数据组进行处理,并且以使输出的各输出数据的合成结果接近作为正确答案数据的表示异常程度的信息的方式,针对该多个网络部进行机器学习。

推测部162向进行了机器学习的多个网络部中,输入伴随处理单元120中的新的对象物(处理前晶圆)的处理而由时间序列数据取得装置140_1~140_n所取得的时间序列数据组。由此,推测部162基于伴随新的处理前晶圆的处理而取得的时间序列数据,来推测用于表示异常程度的信息。

这样一来,通过构成为利用多个网络部对在半导体制造工艺的预定的处理单元120中伴随对象物的处理而测定出的时间序列数据组进行处理,从而能够多方面地对预定的处理单元的时间序列数据组进行分析。因此,通过异常检测装置160,与利用一个网络部进行处理的构成相比,能够生成用于实现高精度的异常检测处理的模型(推测部162)。

<半导体制造工艺的预定的处理单元>

接着,对半导体制造工艺的预定的处理单元120进行说明。图2是示出半导体制造工艺的预定处理单元的一个示例的第1图。如图2所示,作为基板处理装置的一个示例的半导体制造装置200具有多个腔室(多个处理空间的一个示例。在图2的示例中为“腔室a”~“腔室c”),并且在各腔室中对晶圆进行处理。

其中,图2(a)示出了将多个腔室定义为处理单元120的情况。在此情况下,处理前晶圆110是指在腔室a中被处理之前的晶圆,处理后晶圆130是指在腔室c中被处理之后的晶圆。

另外,在图2(a)的处理单元120中伴随处理前晶圆110的处理而测定的时间序列数据组包括:

·伴随腔室a(第1处理空间)中的晶圆的处理而输出的时间序列数据组;

·伴随腔室b(第2处理空间)中的晶圆的处理而输出的时间序列数据组;以及

·伴随腔室c(第3处理空间)中的晶圆的处理而输出的时间序列数据组。

另一方面,图2(b)示出了将一个腔室(在图2(b)的示例中为“腔室b”)定义为处理单元120的情况。在此情况下,处理前晶圆110是指在腔室b中被处理之前的晶圆(在腔室a中被处理之后的晶圆),处理后晶圆130是指在腔室b中被处理之后的晶圆(在腔室c中被处理之前的晶圆)。

另外,在图2(b)的处理单元120中伴随处理前晶圆110的处理而测定的时间序列数据组包括在腔室b中伴随处理前晶圆110的处理而测定的时间序列数据组。

图3是示出半导体制造工艺的预定处理单元的一个示例的第2图。与图2同样,半导体制造装置200具有多个腔室,并且在各腔室中通过多个处理内容对晶圆进行处理。

其中,图3(a)示出了将腔室b中的处理内容之中的除了预处理和后处理以外的处理(称为“晶圆处理”)定义为处理单元120的情况。在此情况下,处理前晶圆110是指进行晶圆处理之前的晶圆(进行预处理之后的晶圆),处理后晶圆130是指进行晶圆处理之后的晶圆(进行后处理之前的晶圆)。

另外,在图3(a)的处理单元120中伴随处理前晶圆110的处理而测定的时间序列数据组包括在腔室b中伴随处理前晶圆110的晶圆处理而测定的时间序列数据组。

需要说明的是,在图3(a)的示例中,示出了以在同一腔室内(腔室b内)进行预处理、晶圆处理(本处理)、后处理的情况下的晶圆处理作为处理单元120的情况。然而,例如也可以在诸如在腔室a内进行预处理、在腔室b内进行晶圆处理、在腔室c内进行后处理的情况等在不同的腔室内进行各处理的情况下,以每个腔室的各处理作为处理单元120。

另一方面,图3(b)示出了将腔室b中的处理内容之中的晶圆处理中包含的一个工艺配方(在图3(b)的示例中为“工艺配方iii”)的处理定义为处理单元120的情况。在此情况下,处理前晶圆110是指进行工艺配方iii的处理之前的晶圆(进行工艺配方ii的处理之后的晶圆)。另外,处理后晶圆130是指进行工艺配方iii的处理之后的晶圆(进行工艺配方iv(未图示)的处理之前的晶圆)。

另外,在图3(b)的处理单元120中伴随处理前晶圆110的处理而测定的时间序列数据组包括在腔室b中伴随通过工艺配方iii所进行的处理而测定的时间序列数据组。

<异常检测装置的硬件构成>

接着,对异常检测装置160的硬件构成进行说明。图4是示出异常检测装置的硬件构成的一个示例的图。如图4所示,异常检测装置160具有cpu(centralprocessingunit:中央处理单元)401、rom(readonlymemory:只读存储器)402、以及ram(randomaccessmemory:随机存取存储器)403。另外,异常检测装置160具有gpu(graphicsprocessingunit:图形处理单元)404。需要说明的是,cpu401和gpu404等处理器(处理电路、processingcircuit、processingcircuitry)、以及rom402和ram403等存储器形成所谓的计算机。

此外,异常检测装置160具有辅助存储装置405、显示装置406、操作装置407、i/f(interface:接口)装置408、以及驱动器装置409。需要说明的是,异常检测装置160的各硬件经由总线410相互连接。

cpu401是用于对安装在辅助存储装置405中的各种程序(例如异常检测程序等)进行执行的运算设备。

rom402是非易失性存储器,并且起到主存储装置的功能。rom402对由cpu401执行在辅助存储装置405中安装的各种程序所需的各种程序、数据等进行存储。具体来说,rom402对bios(basicinput/outputsystem:基本输入/输出系统)或efi(extensiblefirmwareinterface:可扩展固件接口)等引导程序等进行存储。

ram403是dram(dynamicrandomaccessmemory:动态随机存取存储器)或sram(staticrandomaccessmemory:静态随机存取存储器)等易失性存储器,并且起到主存储装置的功能。ram403提供当由cpu401执行在辅助存储装置405中安装的各种程序时扩展的工作区域。

gpu404是用于图像处理的运算设备,并且当由cpu401执行异常检测程序时针对各种图像数据(在本实施方式中为时间序列数据组)进行通过并行处理所进行的高速运算。需要说明的是,gpu404配备有内部存储器(gpu存储器),并且对针对各种图像数据进行并行处理时所需的信息进行临时保存。

辅助存储装置405对各种程序、或者由cpu401执行各种程序时所使用的各种数据等进行存储。例如,学习用数据存储部163在辅助存储装置405中实现。

显示装置406是用于对异常检测装置160的内部状态进行显示的显示设备。操作装置407是用于在由异常检测装置160的管理者对异常检测装置160输入各种指示时所使用的输入设备。i/f装置408是用于与未图示的网络连接并进行通信的连接设备。

驱动器装置409是用于设置记录介质420的设备。在此所说的记录介质420包括诸如cd-rom、软盘、光磁盘等以光学、电学或磁性的方式对信息进行记录的介质。另外,记录介质420可以包括诸如rom、快闪存储器等以电学的方式对信息进行记录的半导体存储器等。

需要说明的是,安装在辅助存储装置405中的各种程序例如通过将分发的记录介质420设置在驱动器装置409中并通过驱动器装置409读取在该记录介质420中记录的各种程序来安装。或者,安装在辅助存储装置405中的各种程序可以通过经由未图示的网络进行下载来安装。

<学习用数据的具体示例>

接着,对当由学习部161进行机器学习时从学习用数据存储部163读取的学习用数据进行说明。图5是示出学习用数据的一个示例的第1图。如图5所示,学习用数据500包括“装置”、“配方种类”、“时间序列数据组”、“异常程度”作为信息项。需要说明的是,在此,对预定的处理单元120为一个工艺配方的处理的情况进行说明。

在“装置”中,存储用于表示对是否发生了异常进行监视的作为对象的半导体制造装置(例如半导体制造装置200)的标识符。在“配方种类”中,存储用于表示在对应的半导体制造装置(例如eqa)中执行的工艺配方之中的、对时间序列数据组进行测定时执行的工艺配方的种类的标识符(例如工艺配方i)。

在“时间序列数据组”中,存储当在由“装置”所确定的半导体制造装置中执行由“配方种类”所确定的工艺配方的处理时通过时间序列数据取得装置140_1~140_n测定出的时间序列数据组。

在“异常程度”中,存储用于表示通过时间序列数据取得装置140_1~140_n测定出对应的时间序列数据组(例如时间序列数据组1)时所取得的异常程度的信息(将异常程度数值化而得到的信息)。需要说明的是,在图5的示例中,作为用于表示异常程度的信息,存储有异常程度0~异常程度3。

<时间序列数据组的具体示例>

接着,对由时间序列数据取得装置140_1~140_n测定的时间序列数据组的具体示例进行说明。图6是示出时间序列数据组的一个示例的图。需要说明的是,在图6的示例中,为了简化说明,虽然设为由时间序列数据取得装置140_1~140_n分别对一维的数据进行测定,但是也可以由一个时间序列数据取得装置对二维的数据(多种一维数据的数据集)进行测定。

其中,6a表示在由图2(b)、图3(a)、图3(b)中的任意一者来定义处理单元120的情况下的时间序列数据组。在此情况下,时间序列数据取得装置140_1~140_n分别取得在腔室b中伴随处理前晶圆110的处理而测定出的时间序列数据。另外,时间序列数据取得装置140_1~140_n互相取得在相同的时间范围内测定出的时间序列数据作为时间序列数据组。

另一方面,6b表示在由图2(a)来定义处理单元120的情况下的时间序列数据组。在此情况下,时间序列数据取得装置140_1~140_3例如取得在腔室a中伴随处理前晶圆的处理而测定出的时间序列数据组1。另外,时间序列数据取得装置140_n-2例如取得在腔室b中伴随该晶圆的处理而测定出的时间序列数据组2。另外,时间序列数据取得装置140_n-1~140_n例如取得在腔室c中伴随该晶圆的处理而测定出的时间序列数据组3。

需要说明的是,在6a中示出了以下情况:时间序列数据取得装置140_1~140_n取得在腔室b中伴随处理前晶圆的处理而测定出的、相同时间范围的时间序列数据作为时间序列数据组。然而,时间序列数据取得装置140_1~140_n也可以取得在腔室b中伴随处理前晶圆的处理而测定出的、不同时间范围的时间序列数据作为时间序列数据组。

具体来说,时间序列数据取得装置140_1~140_n可以取得在执行预处理的期间测定出的多个时间序列数据作为时间序列数据组1。另外,时间序列数据取得装置140_1~140_n可以取得在执行晶圆处理的期间测定出的多个时间序列数据作为时间序列数据组2。此外,时间序列数据取得装置140_1~140_n可以取得在执行后处理的期间测定出的多个时间序列数据作为时间序列数据组3。

同样地,时间序列数据取得装置140_1~140_n可以取得在执行工艺配方i的期间测定出的多个时间序列数据作为时间序列数据组1。另外,时间序列数据取得装置140_1~140_n可以取得在执行工艺配方ii的期间测定出的多个时间序列数据作为时间序列数据组2。此外,时间序列数据取得装置140_1~140_n可以取得在执行工艺配方iii的期间测定出的多个时间序列数据作为时间序列数据组3。

<学习部的功能构成>

接着,对学习部161的功能构成进行说明。图7是示出学习部的功能构成的一个示例的第1图。学习部161具有分支部710、第1网络部720_1~第m网络部720_m、连接部730、以及比较部740。

分支部710是取得部的一个示例,并且用于从学习用数据存储部163读出时间序列数据组。另外,分支部710以使被读出的时间序列数据组被从第1网络部720_1到第m网络部720_m的多个网络部处理的方式,对该时间序列数据组进行处理。

第1网络部720_1~第m网络部720_m以卷积神经网络(cnn:convolutionalneuralnetwork)为基础来构成,并且具有多个层。

具体来说,第1网络部720_1具有第1层720_11~第n层720_1n。同样地,第2网络部720_2具有第1层720_21~第n层720_2n。以下,具有同样的构成,第m网络部720_m具有第1层720_m1~第n层720_mn。

在第1网络部720_1的第1层720_11~第n层720_1n的各层中,进行归一化处理、卷积处理、激活处理、或池化处理等各种处理。另外,在第2网络部720_2~第m网络部720_m的各层中也进行同样的各种处理。

连接部730对从由第1网络部720_1的第n层720_1n输出的输出数据到由第m网络部720_m的第n层720_mn输出的输出数据的各输出数据进行合成,并将合成结果输出至比较部740。

比较部740将从连接部730输出的合成结果与从学习用数据存储部163读出的用于表示异常程度的信息(正确答案数据)进行比较,并计算误差。在学习部161中,以使由比较部740计算出的误差满足预定条件的方式,对误差进行反向传播,并针对第1网络部720_1~第m网络部720_m和连接部730进行机器学习。

由此,第1网络部720_1~第m网络部720_m的第1层~第n层各自的模型参数和连接部730的模型参数被优化。

<学习部的各部分的处理的细节>

接着,举出具体示例对学习部161的各部分(在此特别是分支部)的处理的细节进行说明。

(1)分支部的处理的细节1

首先,对分支部710的处理的细节进行说明。图8是示出分支部的处理的具体示例的第1图。在图8的情况下,分支部710通过根据第一基准对由时间序列数据取得装置140_1~140_n测定出的时间序列数据组进行加工,从而生成时间序列数据组1(第一时间序列数据组),并将其输入至第1网络部720_1。

另外,分支部710通过根据第二基准对由时间序列数据取得装置140_1~140_n测定出的时间序列数据组进行加工,从而生成时间序列数据组2(第二时间序列数据组),并将其输入至第2网络部720_2。

这样一来,通过在构成为根据不同的基准对时间序列数据组进行加工并划分为各自不同的网络部进行处理的基础上进行机器学习,从而能够多方面地对处理单元120进行分析。因此,与构成为利用一个网络部对时间序列数据组进行处理的情况相比,能够生成用于实现较高的推测精度的模型(推测部162)。

需要说明的是,虽然在图8的示例中,示出了通过根据2种基准对时间序列数据组进行加工来生成2种时间序列数据组的情况,但是也可以通过根据3种以上的基准对时间序列数据组进行加工来生成3种以上的时间序列数据组。

(2)由分支部进行的处理的细节2

接着,对分支部710的其他处理的细节进行说明。图9是示出分支部的处理的具体示例的第2图。在图9的情况下,分支部710通过根据数据种类对由时间序列数据取得装置140_1~140_n测定出的时间序列数据组进行分组,从而生成时间序列数据组1(第一时间序列数据组)和时间序列数据组2(第二时间序列数据组)。另外,分支部710将生成的时间序列数据组1输入至第3网络部720_3,并将生成的时间序列数据组2输入至第4网络部720_4。

这样一来,通过在构成为根据数据种类将时间序列数据组分成多个组并利用不同的网络部进行处理的基础上进行机器学习,从而能够多方面地对处理单元120进行分析。因此,与将时间序列数据组输入一个网络部来进行机器学习的情况相比,能够生成用于实现较高的推测精度的模型(推测部162)。

需要说明的是,虽然在图9的示例中,根据基于时间序列数据取得装置140_1~140_n的差异的数据种类的差异对时间序列数据组进行分组,但是也可以根据用于取得数据的时间范围对时间序列数据组进行分组。例如,在时间序列数据组是伴随通过多个工艺配方(工艺配方i~iii)所进行的处理而测定出的时间序列数据组(时间序列数据组1~3)的情况下,可以根据每个工艺配方的时间范围将时间序列数据组分成3组。

(3)由分支部进行的处理的细节3

接着,对由分支部710进行的其他处理的细节进行说明。图10是示出分支部的处理的具体示例的第3图。在图10的情况下,分支部710将由时间序列数据取得装置140_1~140_n取得的时间序列数据组输入至第5网络部720_5和第6网络部720_6两者。然后,在第5网络部720_5和第6网络部720_6对相同的时间序列数据组进行不同的处理(归一化处理)。

图11是示出各网络部中包括的归一化部的处理的具体示例的图。如图11所示,在第5网络部720_5的各层中,包括归一化部、卷积部、激活函数部、以及池化部。

图11的示例示出了在第5网络部720_5中包括的各层之中的第1层720_51中包括归一化部1101、卷积部1102、激活函数部1103、以及池化部1104。

其中,在归一化部1101中,对由分支部710输入的时间序列数据组进行第一归一化处理,并生成归一化时间序列数据组1(第一时间序列数据组)。

同样地,图11的示例示出了在第6网络部720_6中包括的各层之中的第1层720_61中包括归一化部1111、卷积部1112、激活函数部1113、以及池化部1114。

其中,在归一化部1111中,对由分支部710输入的时间序列数据组进行第二归一化处理,并生成归一化时间序列数据组2(第二时间序列数据组)。

这样一来,通过在构成为利用各自包括通过不同方法进行归一化处理的归一化部的多个网络部对时间序列数据组进行处理的基础上进行机器学习,从而能够多方面地对处理单元120进行分析。因此,与构成为利用一个网络部对时间序列数据组执行一种归一化处理的情况相比,能够生成用于实现较高的推测精度的模型(推测部162)。

(4)由分支部进行的处理的细节4

接着,对由分支部710进行的其他处理的细节进行说明。图12是示出分支部的处理的具体示例的第4图。在图12的情况下,分支部710将由时间序列数据取得装置140_1~140_n测定出的时间序列数据组之中的、伴随在腔室a中的晶圆的处理而测定出的时间序列数据组1(第一时间序列数据组)输入至第7网络部720_7。

另外,分支部710将由时间序列数据取得装置140_1~140_n测定出的时间序列数据组之中的、伴随在腔室b中的该晶圆的处理而测定出的时间序列数据组2(第二时间序列数据组)输入至第8网络部720_8。

这样一来,通过在构成为利用不同的网络部对伴随在不同的腔室(第一处理空间、第二处理空间)中的处理而测定出的各个时间序列数据组进行处理的基础上进行机器学习,从而能够多方面地对处理单元120进行分析。因此,与构成为利用一个网络部对各个时间序列数据组进行处理的情况相比,能够生成用于实现较高的推测精度的模型(推测部162)。

<推测部的功能构成>

接着,对推测部162的功能构成进行说明。图13是示出推测部的功能构成的一个示例的第1图。如图13所示,推测部162具有分支部1310、第1网络部1320_1~第m网络部1320_m、以及连接部1330。

分支部1310取得由时间序列数据取得装置140_1~140_n新测定出的时间序列数据组。另外,分支部1310以在第1网络部1320_1~第m网络部1320_m中对所取得的时间序列数据组进行处理的方式进行控制。

第1网络部1320_1~第m网络部1320_m通过利用学习部161进行机器学习并对第1网络部720_1~第m网络部720_m的各层的模型参数进行优化而形成。

连接部1330通过利用学习部161进行机器学习并对模型参数进行优化的连接部730形成。连接部1330对从由第1网络部1320_1的第n层1320_1n输出的输出数据到由第m网络部1320_m的第n层1320_mn输出的输出数据的各输出数据进行合成。由此,在连接部1330中,输出用于表示异常程度的信息。

这样一来,推测部162通过利用多方面地对预定的处理单元120的时间序列数据组进行分析的学习部161进行机器学习而生成。因此,推测部162也能够应用于不同的工艺配方、不同的腔室、不同的装置。或者,推测部162也能够应用于相同腔室的维护前后。换言之,通过根据本实施方式的推测部162,例如无需像传统技术那样随着腔室的维护而对模型进行维护或使模型重新学习。

<异常检测处理的流程>

接着,对由异常检测装置160进行的异常检测处理整体的流程进行说明。图14是示出异常检测处理的流程的第1流程图。

在步骤s1401中,学习部161取得时间序列数据组和用于表示异常程度的信息作为学习用数据。

在步骤s1402中,学习部161以所取得的学习用数据之中的时间序列数据组作为输入数据、并以用于表示异常程度的信息作为正确答案数据来进行机器学习。

在步骤s1403中,学习部161判断是否继续进行机器学习。在取得进一步的学习用数据并继续进行机器学习的情况下(在步骤s1403中为“是”的情况下),处理返回到步骤s1401。另一方面,在结束机器学习的情况下(在步骤s1403中为“否”的情况下),处理进至步骤s1404。

在步骤s1404中,推测部162通过对由机器学习所优化的模型参数进行反映,来生成第1网络部1320_1~第m网络部1320_2。

在步骤s1405中,推测部162通过输入伴随新的处理前晶圆的处理而测定出的时间序列数据组,来对用于表示异常程度的信息进行推测。

在步骤s1406中,推测部162将推测结果与用于表示对应的半导体制造装置的标识符或用于表示对应的工艺配方的种类的标识符等一起输出。

<总结>

如上所述可以明确的看出,根据第1实施方式的异常检测装置具有以下特征:

·取得在制造工艺的预定处理单元中伴随对象物的处理而测定出的时间序列数据组;

·针对所取得的时间序列数据组,

·通过根据第一基准和第二基准进行处理,来生成第一时间序列数据组和第二时间序列数据组,或者

·根据数据种类或时间范围进行分组,

并且对通过利用多个网络部对其进行处理而输出的各输出数据进行合成;或者

·将所取得的时间序列数据组分别输入利用不同方法进行归一化的多个网络部,并且对通过利用多个网络部对其进行处理而输出的各输出数据进行合成;

·以使通过对各输出数据进行合成而得到的合成结果与在制造工艺的预定处理单元中对对象物进行处理时所取得的表示异常程度的信息接近的方式,针对多个网络部进行机器学习;

·利用进行了机器学习的多个网络部对针对伴随新的对象物的处理由时间序列取得装置测定出的时间序列数据组进行处理,并且将由该多个网络部输出的各输出数据的合成结果推测为表示异常程度的信息。

这样一来,通过构成为将时间序列数据组输入至多个网络部并进行机器学习,从而能够多方面地对半导体制造工艺的预定的处理单元的时间序列数据组进行分析。因此,与将时间序列数据组输入至一个网络部并进行机器学习的情况相比,能够生成用于实现高精度的异常检测处理的模型。

换言之,根据第1实施方式,能够提供一种能够执行高精度的异常检测处理的异常检测装置。

[第2实施方式]

在根据第1实施方式的异常检测装置160中,作为利用多个网络部对所取得的时间序列数据组进行处理的构成,示出了四种构成。对此,在第2实施方式中,针对该四种构成之中的、利用各自包括利用不同的方法进行归一化处理的归一化部的多个网络部对时间序列数据组进行处理的构成进一步详细地进行说明。需要说明的是,在说明中,以

·时间序列数据取得装置是发光分光分析装置,

·时间序列数据组是oes(opticalemissionspectroscopy:光学发射光谱)数据(包括与波长的种类相对应的数量的发光强度的时间序列数据的数据集)作为前提。以下,以与上述第1实施方式之间的不同点为中心对第2实施方式进行说明。

<包括半导体制造工艺和异常检测装置的系统的整体构成>

首先,对时间序列数据取得装置为发光分光分析装置的情况下的、包括半导体制造工艺和异常检测装置的系统的整体构成进行说明。图15是示出包括半导体制造工艺和异常检测装置的系统的整体构成的一个示例的第2图。如图15所示,系统1500包括半导体制造工艺、发光分光分析装置1501、以及异常检测装置160。

在图15所示的系统1500中,发光分光分析装置1501利用发光分光分析技术,伴随处理单元120中的处理前晶圆110的处理,对作为时间序列数据组的oes数据进行测定。由发光分光分析装置1501测定出的oes数据的一部分作为进行机器学习时的学习用数据(输入数据)被存储在异常检测装置160的学习用数据存储部163中。

<学习用数据的具体示例>

接着,对当由学习部161进行机器学习时从学习用数据存储部163读取的学习用数据进行说明。图16是示出学习用数据的一个示例的第2图。如图16所示,学习用数据1600包括与图5所示的学习用数据500的信息项同样的信息项。与图5之间的不同点在于,包括“oes数据”作为信息项而非“时间序列数据组”,并且存储有由发光分光分析装置1501测定出的oes数据。

<oes数据的具体示例>

接着,对在发光分光分析装置1501中测定的oes数据的具体示例进行说明。图17是示出oes数据的一个示例的图。

在图17中,图表1710是示出作为在发光分光分析装置1501中测定的时间序列数据组的oes数据的特性的图表,并且横轴示出了用于对在处理单元120中处理的各处理前晶圆110进行识别的晶圆识别号。另外,纵轴示出了伴随各处理前晶圆110的处理而在发光分光分析装置1501中测定出的oes数据的时间长度。

如图表1710所示,在发光分光分析装置1501中测定的oes数据的时间长度针对每个要处理的晶圆而不同。

在图17的示例中,例如,oes数据1720示出了伴随晶圆识别号=“770”的处理前晶圆的处理而测定出的oes数据。oes数据1720的纵向上的数据尺寸取决于在发光分光分析装置1501中测定的波长的范围。在第2实施方式中,由于发光分光分析装置1501对预定的波长范围内的发光强度进行测定,因此oes数据1720的纵向上的数据尺寸例如为预定的波长范围内包含的波长数量“nλ”。

另一方面,oes数据1720的横向上的数据尺寸取决于在发光分光分析装置1501中测定时的时间长度。在图17的示例中,oes数据1720的横向上的数据尺寸为“lt”。

这样一来,可以说oes数据1720是汇集了预定波长数量份的针对每个波长具有预定时间长度的一维的时间序列数据的时间序列数据组。

需要说明的是,在分支部710中,当将oes数据1720输入至第5网络部720_5和第6网络部720_6时,以使数据尺寸与其他的晶圆识别号的oes数据相同的方式,以小批量(mini-batch)单位进行尺寸调整(resize)处理。

<归一化部的处理的具体示例>

接着,对从分支部710分别被输入oes数据1720的第5网络部720_5和第6网络部720_6的归一化部的处理的具体示例进行说明。

图18是示出被输入oes数据的各网络部中包括的归一化部的处理的具体示例的图。如图18所示,第5网络部720_5中包括的各层之中的第1层720_51具有归一化部1101。另外,归一化部1101通过利用第一方法(针对整个波长利用发光强度的平均值和标准偏差)对oes数据1720进行归一化,来生成归一化数据(归一化oes数据1810)。

另外,如图18所示,第6网络部720_6中包括的各层之中的第1层720_61具有归一化部1111。另外,归一化部1111通过利用第二方法(针对每个波长利用发光强度的平均值和标准偏差)对oes数据1720进行归一化,来生成归一化数据(归一化oes数据1820)。

图19是示出各归一化部的处理的具体示例的图。如19a所示,在归一化部1101中,针对整个波长,利用发光强度的平均值和标准偏差进行归一化。另一方面,如19b所示,在归一化部1111中,针对每个波长,利用发光强度的平均值和标准偏差进行归一化。

这样一来,随着以何为基准对发光强度的变化进行观察的不同(换言之,随着分析方法的不同),即使对于相同的oes数据1720,能够观察到的信息也会变化。在根据第2实施方式的异常检测装置160中,针对不同的归一化处理,利用各自不同的网络部对相同的oes数据1720进行处理。通过这样对多个归一化处理进行组合,从而能够多方面地对处理单元120中的oes数据1720进行分析。因此,与构成为利用一个网络部对oes数据1720执行一种正规化处理的情况相比,能够生成用于实现较高的推测精度的模型(推测部162)。

需要说明的是,虽然在上述具体示例中,对利用发光强度的平均值和标准偏差进行归一化的情况进行了说明,但是在进行归一化时所使用的统计值不限于此。例如,可以利用发光强度的最大值和标准偏差进行归一化,也可以利用其他统计值进行归一化。另外,可以构成为能够选择利用哪种统计值进行归一化。

<池化部的处理的具体示例>

接着,对第5网络部720_5和第6网络部720_6的最终层中包括的池化部的处理的具体示例进行说明。图20是示出池化部的处理的具体示例的图。

由于小批量之间的数据尺寸不同,因此在第5网络部720_5和第6网络部720_6的最终层中包括的池化部1104、1114中,以在小批量之间输出固定长度的数据的方式进行池化处理。

图20是示出池化部的处理的具体示例的图。如图20所示,在池化部1104、1114中,对从激活函数部1103、1113输出的特征数据进行gap(globalaveragepooling:全局平均池化)处理。

在图20中,特征数据2011_1~2011_m是输入至第5网络部720_5的第n层720_5n的池化部1104的特征数据,并且表示基于属于小批量1的oes数据所生成的特征数据。特征数据2011_1~2011_m分别表示一个通道份的特征数据。

另外,特征数据2012_1~2012_m是输入至第5网络部720_5的第n层720_5n的池化部1104的特征数据,并且表示基于属于小批量2的oes数据所生成的特征数据。特征数据2012_1~2012_m分别表示一个通道份的特征数据。

另外,特征数据2031_1~2031_m、2032_1~2032_m也与特征数据2011_1~2011_m、2012_1~2012_m同样(但是,分别为nλ信道份的特征数据)。

在此,在池化部1104、1114中,通过针对输入的特征数据中包含的各特征量的值以通道单位对其平均值进行计算,来输出固定长度的输出数据。由此,能够使从池化部1104、1114输出的数据在小批量之间具有相同的数据尺寸。

<推测部的功能构成>

接着,对推测部162的功能构成进行说明。图21是示出推测部的功能构成的一个示例的第2图。如图21所示,推测部162具有分支部1310、第5网络部1320_5和第6网络部1320_6、以及连接部1330。

分支部1310取得由分光分光分析装置1501新测定出的oes数据。另外,分支部1310以在第5网络部1320_5和第6网络部1320_6中对所取得的oes数据进行处理的方式对所取得的oes数据进行分支处理。

第5网络部1320_5和第6网络部1320_6通过利用学习部161进行机器学习并对第5网络部720_5和第6网络部720_6的各层的模型参数进行优化而形成。

连接部1330通过利用学习部161进行机器学习并对模型参数进行优化的连接部1330形成。连接部1330对由第5网络部1320_5的第n层1320_5n输出的输出数据和由第6网络部1320_6的第n层1320_6n输出的输出数据进行合成,并输出用于表示异常程度的信息。

这样一来,推测部162通过利用多方面地对预定的处理单元120的oes数据进行分析的学习部161进行机器学习而生成。因此,推测部162也能够应用于不同的工艺配方、不同的腔室、不同的装置。或者,推测部162也能够应用于相同腔室的维护前后。换言之,通过根据本实施方式的推测部162,例如无需像传统技术那样随着腔室的维护而对模型进行维护或使模型重新学习。

<异常检测处理的流程>

接着,对由异常检测装置160进行的异常检测处理整体的流程进行说明。图22是示出异常检测处理的流程的第2流程图。

在步骤s2201中,学习部161取得oes数据和用于表示异常程度的信息作为学习用数据。

在步骤s2202中,学习部161以所取得的学习用数据之中的oes数据作为输入数据、并以用于表示异常程度的信息作为正确答案数据来进行机器学习。

在步骤s2203中,学习部161判断是否继续进行机器学习。在取得进一步的学习用数据并继续进行机器学习的情况下(在步骤s2203中为“是”的情况下),处理返回到步骤s2201。另一方面,在结束机器学习的情况下(在步骤s2203中为“否”的情况下),处理进至步骤s2204。

在步骤s2204中,推测部162通过对由机器学习所优化的模型参数进行反映,来生成第5网络部1320_5和第6网络部1320_6。

在步骤s2205中,推测部162通过输入伴随新的处理前晶圆的处理而由发光分光分析装置1501测定出的oes数据,来对用于表示异常程度的信息进行推测。

在步骤s2206中,推测部162将推测结果与用于表示对应的半导体制造装置的标识符或用于表示对应的工艺配方的种类的标识符等一起输出。

<总结>

如上所述可以明确的看出,根据第2实施方式的异常检测装置具有以下特征:

·取得在制造工艺的预定处理单元中伴随对象物的处理而由发光分光分析装置测定出的oes数据;

·将所取得的oes数据分别输入利用不同方法进行归一化的两个网络部,并且对由两个网络部输出的各输出数据进行合成;

·以使通过对各输出数据进行合成而得到的合成结果与在制造工艺的预定处理单元中对对象物进行处理时所取得的表示异常程度的信息接近的方式,针对两个网络部进行机器学习;

·利用进行了机器学习的两个网络部对针对伴随新的对象物的处理而由发光分光分析装置测定出的oes数据进行处理,并且将由该两个网络部输出的各输出数据的合成结果推测为表示异常程度的信息。

这样一来,通过构成为将oes数据输入至两个网络部并进行机器学习,从而能够多方面地对半导体制造工艺的预定的处理单元的oes数据进行分析。因此,与将oes数据输入至一个网络部并进行机器学习的情况相比,能够生成用于实现高精度的异常检测处理的模型。

换言之,根据第2实施方式,能够提供一种能够执行高精度的异常检测处理的异常检测装置。

[第3实施方式]

虽然在上述的第2实施方式中,作为时间序列数据取得装置的一个示例,举出了发光分光分析装置,但是在第1实施方式中说明的时间序列数据取得装置不限于发光分光分析装置。

例如,在第1实施方式中说明的时间序列数据取得装置中,可以包括用于取得温度数据、压力数据、气体的流量数据等各种工艺数据作为一维的时间序列数据的工艺数据取得装置。或者,在第1实施方式中说明的时间序列数据取得装置中,可以包括用于取得rf电源电压数据等各种rf数据作为一维的时间序列数据的等离子体用高频电源装置。

另外,虽然在上述第1实施方式和第2实施方式中未特别提及异常的种类,但是在处理单元120中发生的异常的种类包括任意种类的异常。需要说明的是,在处理单元120中发生的异常的种类例如包括因随时间的变化而发生的异常、以及突然发生的异常。

其中,因随时间的变化而发生的异常包括在晶圆的膜厚、蚀刻速率等结果物上发生的异常。此外,因随时间的变化而发生的异常包括装置内的零件或与装置连接的设备的随时间的变化本身(零件磨损、电极磨损、设备劣化、装置内零件上的膜的沉积等)。此外,因随时间的变化而发生的异常包括因装置内的零件或与该装置连接的设备的随时间的变化引起的异常(气体流量的波动、温度异常等)。

另一方面,突然发生的异常例如包括异常放电、液滴(附着有大量微米尺寸的颗粒的现象)、放电的不稳定动作、空气泄漏或氦气泄漏等。

另外,在上述第1实施方式和第2实施方式中,对存储用于表示异常程度的信息作为学习用数据(正确答案数据)的情况进行了说明。然而,也可以构成为在将用于表示异常程度的信息与预定的阈值进行比较的基础上存储比较结果(有无异常)作为学习用数据(正确答案数据),来代替存储用于表示异常程度的信息。在此情况下,在学习部161中,以使学习用数据与所存储的有无异常相一致的方式进行机器学习,并且在推测部162中,对有无异常进行推测。

或者,可以构成为:在学习部161中,进行与第1实施方式和第2实施方式同样的机器学习,并且在由推测部162将从连接部730输出的用于表示异常程度的信息转换为用于表示有无异常的信息的基础上将其作为推测结果输出。

在从用于表示异常程度的信息到用于表示有无异常的信息的转换中,例如可以使用s型函数(sigmoidfunction)。具体来说,在将用于表示异常程度的信息输入至s型函数时的输出为0.5以上的情况下,推测部162输出“有异常”作为用于表示有无异常的信息。另一方面,在将用于表示异常程度的信息输入至s型函数时的输出小于0.5的情况下,推测部162输出“无异常”作为用于表示有无异常的信息。

另外,对于在上述第1实施方式和第2实施方式中,无论异常的种类如何,学习部均利用相同的学习用数据进行机器学习的情况进行了说明。然而,由学习部所进行的机器学习的方法不限于此,可以构成为根据异常的种类来利用不同的学习用数据进行机器学习。具体来说,例如,可以构成为分别设置

·在发生异常放电的情况下,以输出用于表示有无异常的信息的方式进行机器学习的多个网络部;以及

·在发生液滴的情况下,以输出用于表示有无异常的信息的方式进行机器学习的多个网络部,并且利用各自不同的学习用数据进行机器学习。

另外,对于在根据第1实施方式和第2实施方式的异常检测装置160中,无论发生的异常的种类如何,均以输出用于表示异常程度的信息的方式进行由学习部进行的机器学习的情况进行了说明。

然而,由学习部所进行的机器学习的方法不限于此,可以构成为以除了输出用于表示异常程度的信息以外还输出用于表示异常种类的信息的方式进行机器学习。具体来说,可以构成为在连接部中设置与异常种类的数量相对应的数量的输出部,并且针对各个种类来输出发生了异常的可靠度。

[其他实施方式]

在上述第1实施方式至第3实施方式中,对于以卷积神经网络为基础来构成学习部161的各个网络部的机器学习算法的情况进行了说明。然而,学习部161的各个网络部的机器学习算法不限于卷积神经网络,也可以以其他机器学习算法为基础来构成。

另外,在上述第1实施方式至第3实施方式中,对于异常检测装置160起到学习部161和推测部162的功能的情况进行了说明。然而,起到学习部161的功能的装置和起到推测部162的功能的装置无需为一体,也可以分开地构成。换言之,异常检测装置160可以起到不具有推测部162的学习部161的功能,也可以起到不具有学习部161的推测部162的功能。

需要说明的是,可以针对在上述实施方式中所举出的构成上组合其他要素,并且本公开不限于在此所示的构成。关于此点,在不脱离本发明的宗旨的范围内可以进行改变,并且可以根据其应用方式适当地确定。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1