曲线模式分段的半导体制造无监督异常检测方法及设备
技术领域
本发明涉及半导体制造异常检测技术领域,具体涉及一种曲线模式分段的半导体制造无监督异常检测方法、设备及存储介质。
背景技术
随着科技的不断发展,半导体产品开始应用在生活的方方面面。半导体产品的异常检测对于半导体产品的质量控制具有重要意义。然而半导体制造是一个历经多过程多设备的复杂加工过程,传统的异常检测方法通过检测半导体最终成品的各项参数是否满足设定要求来判断该产品是否异常。该方法虽然准确率高,但是由于检测的对象是最终半导体成品,因此不能及时检测加工过程中出现的异常,从而效率较低,且异常产品继续加工浪费后续的设备资源。
随着智能制造的发展,目前半导体制造引入了众多的传感器对半导体制造过程进行监控。这些传感器收集半导体加工过程的压强,温度和光强等几十个参数,可以有效表征半导体加工过程是否发生异常。目前已有很多方法通过分析半导体加工过程的传感器监控参数变化曲线来检测半导体加工过程是否发生异常。这些方法主要分为包括整段分析方法和逐点分析方法。整段分析方法通过机器学习,统计学习等算法学习正常和异常半导体加工过程传感器监控曲线的不同模式来构建异常与正常的分类边界,从而可以检测出异常。然而整段学习方法容易忽略监控曲线中细小的异常,容易产生漏报。逐点分析方法通过分析传感器监控曲线每个监控点与历史大量监控曲线该监控点的分布情况进行对比来分析是否发生异常,然而这种方法容易将正常加工过程误分类为异常过程,从而产生大量误报。
机器学习可以自主学习特征,尤其是有监督的方法可以学习标签与特征之间的映射关系。但在工业制造场景中,传感器的序列长度长,数据特征维度高,这意味着许多时间点的特征与故障无关,影响机器学习的性能。无监督的分类方法一般是寻找正常样本的边界,但如果不配合较强的特征提取模型,效果也差强人意。分类模型通常希望预先进行有效的特征降维或者特征提取,以达到更好地分类效果。
半导体制造是一个复杂的过程,涉及多种加工步骤,包含多种物理过程。不同的物理过程反应到传感器数据上,呈现出不同的曲线模式,例如阶跃函数代表开关开断,振荡过程代表振动或欠阻尼驱动,尖峰代表瞬时扰动等。传统的统计学方法,其统计特征表征能力不强,并且依赖于数据分布假设,因此分类的准确度不高,存在大量误报。而依据制程划分管控窗口再提取统计特征,虽然效果有提升,单依旧受到同一制程内不同曲线模式的影响。
深度学习是目前表现最好的特征提取方法,但在实际应用中深度学习往往在耗费资源和处理时间上不尽人意。而其他的特征提取方法尤其统计学特征提取速度快、耗费资源少,但表征能力不强。因此行业需要处理速度更快、耗费资源更少,同时特征提取能力较强的方法。本发明提出的目的意在解决这类问题。
发明内容
本发明提出的一种曲线模式分段的半导体制造无监督异常检测方法、设备及存储介质,可至少解决背景技术中的技术问题之一。
为实现上述目的,本发明采用了以下技术方案:
一种曲线模式分段的半导体制造无监督异常检测方法,包括以下步骤,
收集半导体加工设定一段时间正常加工的数据作为训练样本数据;
采用信号处理技术对训练样本数据进行处理,即对传感器曲线进行模式分割,之后针对不同的曲线模式提取不同的统计特征;
再把提取不同的特征输入到机器学习算法中进行学习,构建基于密度的局部异常因子检测的无监督机器学习分类模型,用于对半导体产品的异常检测。
进一步地,信号处理技术包括进行数据预处理步骤,
在获得一批样本数据进行插值后,首先要剔除噪声数据,采用的方法是LOF离群样本检测,剔除不集中的样本;
之后为了进行窗口划分为传感器计算代表样本,采用的方法分两步:进行动态时间翘曲和求代表性曲线;
动态时间翘曲是进行数据对齐的算法,具体如下:
假设有两个时间序列Q和C,长度分别为n和m,具体表示为:
首先计算一个距离的映射矩阵,矩阵的元素是表示为对应两点的平方差,计算公式如下:
之后在距离矩阵中从到/>之间寻找一条最优翘曲路径/>;翘曲路径/>定义为映射矩阵元素的连续集合,其第k个元素被定义为/>,此时有:
其中
翘曲路径需要满足所有元素之和是最小的,即:
将累计距离定义为当前单元距离/>和相邻累计距离的最小值之和,公式如下:
选择一条参考曲线,将所有训练样本对齐后,对每一个时间点的数值求平均,得到一条代表性曲线,具体计算公式如下:
其中,S代表样本个数,T代表时间点数,/>代表传感器的时间序列。
进一步地,对传感器曲线进行模式分割包括,
首先进行尖峰模式的识别,采用连续小波变换的方法进行尖峰重构,筛选出候选区域;
信号的连续小波变换是其本身与小波母函数卷积得到的,具体公式如下:
其中,是特定小波母函数的收缩和偏移形式,s和b分别代表收缩尺度和平移参数;
选择母小波和卷积参数,涉及最小尺度、最大尺度/>、最大频率成分/>、最小频率成分/>、母函数阶数m和中心频率/>;
具体计算公式如下:
其中,/>表示信号的最大频率范围,/>表示采样频率,/>表示频率的最低分辨率,/>表示采样间隔;
小波变换后得到一个信号与不同收缩尺度母函数卷积后形成的系数矩阵;
为了进行尖峰信号重构,要进行滤波,将与尖峰相关尺度较低的成分滤除;
采用的是中值绝对偏差阈值法;阈值的计算公式如下:
其中表示CWT矩阵在地/>个时间点、第/>个尺度的系数,N为信号的长度,/>;
根据去噪的连续小波变换系数矩阵进行重构信号,数值非零的区域即为尖峰模式段的候选区域;
下一步利用极值法筛选出真实的尖峰区域,即检验候选区域中是否存在满足极值条件的点,它的边界定义为尖峰点临近的极小值点或者区域的临界点;
在进行变化段和稳态段的识别之前,将尖峰段去除;去掉尖峰后,在尖峰区域内采用线性插补的方法补齐数据;最后进行变化段和稳态段的识别;
采用基于滑动窗口的标准偏差结合聚类的方法自动区分变化段和稳态段;用滑动窗口法将去除尖峰的信号分成多个子序列,每个子序列求标准偏差,计算公式如下:
其中N表示窗口的大小,表示第i个点,/>表示窗口内的平均值;/>表示第j个子序列;
计算出每个子序列的标准偏差后,用K-means聚类方法将子序列样本分为两类,偏差值较高的为变化段,较低的为稳态段;
获取每个子序列的标签后,进行窗口合并,得到变化段和稳态段的索引;之后检验尖峰模式是否与变化段和稳态段的索引重合,如若重合,进行分离,最终完成曲线模式分割,将信号分为三种模式。
进一步地,针对不同的曲线模式提取不同的统计特征,包括,
计算尖峰突显程度作为尖峰模式的特征,即峰峰值;
传感器数据的变化段是斜坡,计算对应的斜率、最大值、最小值、变化时间和曲线下面积作为变化段的特征;
计算平均值、标准偏差、最大值和最小值作为表征平稳段的特征。
进一步地,构建基于密度的局部异常因子检测的无监督机器学习分类模型,实现精准的异常检测,具体包括,
收集半导体加工设定一段时间正常加工的数据作为训练样本,依据对样本进行处理和特征提取后,使用LOF无监督方法建立单分类模型;
首先计算所有训练数据的离群程度得分,剔除训练样本中的离群样本,防止其影响单分类模型的性能,之后依据纯净的正常数据构建无监督的异常检测模型;
LOF无监督方法是基于密度的单分类方法,它包括输入样本后,第一步计算每个样本的第k距离领域内各样本的第k可达距离,计算公式如下:
其中p表示要计算的样本,即邻域中心,o表示邻域内的样本,表示p的第k邻域内样本o的第k距离,/>表示o到p的距离,距离公式选择欧式距离;第k距离指样本中心与距离其第k远的样本之间的距离,第k邻域指样本中心第k距离内的所有邻近样本;
第二步计算每个样本的第k局部可达密度,计算公式如下:
其中表示p点的第k距离邻域,包括第k距离上的点,/>;
第三部计算每个样本的局部离群因子,计算公式如下:
局部离群因子将p的邻域内所有样本的平均局部可达密度与p的局部可达密度作比较,比值越大于1,表明p的密度越小,越可能是异常点;比值越小于1,表明p的密度大,p点越是正常。
又一方面,本发明还公开一种计算机可读存储介质,存储有计算机程序,所述计算机程序被处理器执行时,使得所述处理器执行如上述方法的步骤。
再一方面,本发明还公开一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行如上方法的步骤。
由上述技术方案可知,本发明的一种基于曲线模式分段的半导体制造无监督异常检测方法,该方法为传感器监控参数曲线按照模式(包括平稳模式,变化模式和尖峰模式)不同分成若干段,再为这些阶段提取不同的特征输入到机器学习算法中进行学习,得到一个可以判断半导体是否发生异常的分类器。考虑到实际中异常制造过程极少出现,本专利采用无监督机器学习算法仅仅学习正常加工过程传感器监控曲线的分类边界,超出边界则认为是异常。
本发明的一种基于曲线模式分段的半导体制造无监督异常检测方法。该方法认为不同的曲线模式需要提取的特征是不同的,首先采用信号处理技术对传感器曲线进行模式分割,这一步的目的是依据曲线模式自动划分管控窗口,解决了人工参与过多和窗口划分不合理的问题。之后针对不同的曲线模式提取不同的统计特征,进行快速、高效的特征提取。最后构建基于密度的局部异常因子检测(Local Outlier Factor,LOF)的无监督机器学习分类模型,实现精准的异常检测。
本发明提出了一种结合曲线模式分割的无监督故障检测方法,针对不同的敏感模式计算不同的统计特征,实现高效、快速的特征提取。采用基于密度的局部离群因子的方法,构建高准确度、高效率的无监督机器学习模型,实现高性能的单变量异常检测方法。经过实际测试,本发明的准确性高、耗费的计算资源低,能进行快速的在线故障检测。
附图说明
图1为本发明实施例的原理框图;
图2是本发明实施例的曲线模式分割流程图;
图3是本发明实施例的LOF算法流程示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。
本发明实施例的一种基于曲线模式分段的半导体制造无监督异常检测方法。该方法认为不同的曲线模式需要提取的特征是不同的,首先采用信号处理技术对传感器曲线进行模式分割,这一步的目的是依据曲线模式自动划分管控窗口,解决了人工参与过多和窗口划分不合理的问题。之后针对不同的曲线模式提取不同的统计特征,进行快速、高效的特征提取。最后构建基于密度的局部异常因子检测(Local Outlier Factor,LOF)的无监督机器学习分类模型,实现精准的异常检测。
以下具体说明:
方法流程
1)数据预处理
半导体制造过程复杂漫长,各类传感器会记录大量原始数据,经过各级系统收集到的数据往往是缺值、包含噪声和长度不对齐的。数据预处理可以提高数据的质量,促进高效的数据挖掘任务。尤其数据对齐处理是对单个传感器工艺管控的关键步骤,因为不同样本之间横向的漂移会影响窗口划分和故障检测的性能。
本发明实施例是一种无监督的异常检测技术,需要纯净的正常样本,在获得一批样本数据进行插值后,首先要剔除噪声数据。采用的方法是LOF离群样本检测,剔除不集中的样本,具体原理详见分类步骤。
之后为了进行窗口划分为传感器计算代表样本,采用的方法分两步:进行动态时间翘曲(Dynamic Time Warping,DTW)和求代表性曲线。DTW是进行数据对齐的算法,具体原理如下:
假设有两个时间序列Q和C,长度分别为n和m,具体表示为:
首先计算一个距离的映射矩阵,矩阵的元素是表示为对应两点的平方差,计算公式如下:
之后在距离矩阵中从到/>之间寻找一条最优翘曲路径/>。翘曲路径/>定义为映射矩阵元素的连续集合,其第k个元素被定义为/>,此时有:
其中
翘曲路径需要满足所有元素之和是最小的,即:
这正是DTW解决数据对齐问题的核心,该路径可以使用动态编程,采用回归的思想找到。将累计距离定义为当前单元距离/>和相邻累计距离的最小值之和,公式如下:
选择一条参考曲线(一般选择长度数值出现频率最多的正常数据),将所有训练样本对齐后,对每一个时间点的数值求平均,得到一条代表性曲线,具体计算公式如下:
其中,S代表样本个数,T代表时间点数,/>代表传感器的时间序列。
2)曲线模式分割
该步骤的目的是为1)中获得的每个传感器的代表样本进行窗口划分。曲线基本模式规定为平稳段、变化段和尖峰段。平稳段定义为数值波动不大,相对于整个曲线近似与水平;变化段定义为信号数值在这一阶段有较大的变动,短时间内上升或者下降,类似斜坡;尖峰段定义为信号中的尖峰扰动。
首先进行尖峰模式的识别,采用连续小波变换(Continuous Wavelet Transform,CWT)的方法进行尖峰重构,筛选出候选区域。基于小波变换识别尖峰器准确性和效率都是非常高的。图显示了尖峰检测的一般流程。
连续小波变换是信号的时频表示,在时域和频域上都比短时傅立叶变换提供了更高的分辨率。信号的连续小波变换是其本身与小波母函数卷积得到的,具体公式如下:
其中,是特定小波母函数的收缩和偏移形式,s和b分别代表收缩尺度和平移参数。
有效实现尖峰识别的关键是选择合适的母小波和合适的卷积参数,涉及最小尺度、最大尺度/>、最大频率成分/>、最小频率成分/>、母函数阶数m和中心频率/>。
具体计算公式如下:
其中,/>表示信号的最大频率范围,/>表示采样频率,/>表示频率的最低分辨率,/>表示采样间隔。
小波变换后得到一个信号与不同收缩尺度母函数卷积后形成的系数矩阵。为了进行尖峰信号重构,要进行滤波,将与尖峰相关尺度较低的成分滤除。大多数确定阈值的方法是根据不同尺度的系数分布确定的,本发明采用的是中值绝对偏差阈值法。阈值的计算公式如下:
其中表示CWT矩阵在地/>个时间点、第/>个尺度的系数,N为信号的长度,。
根据去噪的CWT系数矩阵进行重构信号,数值非零的区域即为尖峰模式段的候选区域。下一步利用极值法筛选出真实的尖峰区域,即检验候选区域中是否存在满足极值条件的点,它的边界定义为尖峰点临近的极小值点或者区域的临界点。
在进行变化段和稳态段的识别之前,需要将尖峰段去除。因为在半导体制造中,尖峰的特性与变化段相似,尖峰的存在会影响变化段和稳态段的识别。去掉尖峰后,在尖峰区域内采用线性插补的方法补齐数据。最后进行变化段和稳态段的识别。
根据上述对曲线模式的定义,可以发现变化段和稳态段最明显的区别是数据的变化程度和集中程度。本发明采用基于滑动窗口的标准偏差结合聚类的方法自动区分变化段和稳态段。用滑动窗口法将去除尖峰的信号分成多个子序列,每个子序列求标准偏差,计算公式如下:
其中N表示窗口的大小,表示第i个点,/>表示窗口内的平均值。/>表示第j个子序列。
计算出每个子序列的标准偏差后,用K-means聚类方法将子序列样本分为两类,偏差值较高的为变化段,较低的为稳态段。这样做的好处是无需为每中信号单独划分一个偏差阈值。
获取每个子序列的标签后,进行窗口合并,得到变化段和稳态段的索引。之后检验尖峰模式是否与变化段和稳态段的索引重合,如若重合,进行分离,最终完成曲线模式分割,将信号分为三种模式。
3)特征提取阶段
由2)得到样本数据的曲线模式分段索引,针对不同的敏感模式计算不同的统计特征,实现快速、高效特征提取。根据尖峰段短促、瞬时扰动的特点,计算尖峰突显程度作为该种模式的特征,即峰峰值;在半导体制造过程中,传感器数据的变化段往往是斜坡,因此计算该模式的斜率、最大值、最小值、变化时间和曲线下面积作为该种模式的特征;平稳段的主要特点是数据值偏差小、集中分布,因此计算平均值、标准偏差、最大值和最小值作为表征该种模式的特征。
4)单分类异常检测
收集半导体加工最近一段时间正常加工的数据作为训练样本,依据1)、2)、3)对样本进行处理和特征提取后,使用LOF无监督方法建立单分类模型。首先计算所有训练数据的离群程度得分,剔除训练样本中的离群样本,防止其影响单分类模型的性能,之后依据纯净的正常数据构建无监督的异常检测模型。
LOF是基于密度的单分类方法,它的基本原理是:输入样本后,第一步计算每个样本的第k距离领域内各样本的第k可达距离,计算公式如下:
其中p表示要计算的样本,即邻域中心,o表示邻域内的样本,表示p的第k邻域内样本o的第k距离,/>表示o到p的距离,距离公式选择欧式距离。第k距离指样本中心与距离其第k远的样本之间的距离,第k邻域指样本中心第k距离内的所有邻近样本。
第二步计算每个样本的第k局部可达密度,计算公式如下:
其中表示p点的第k距离邻域,包括第k距离上的点,/>。
第三部计算每个样本的局部离群因子,计算公式如下:
局部离群因子将p的邻域内所有样本的平均局部可达密度与p的局部可达密度作比较,比值越大于1,表明p的密度越小,越可能是异常点;比值越小于1,表明p的密度大,p点越是正常。
以下举例说明:
在半导体加工流水线管控中,针对单个传感器的故障检测,收集上一段时间正常加工的数据。先进行数据预处理,解决数据缺值、不对齐的问题,之后进行LOF检测,剔除不纯净的样本。数据整形之后为要监控的传感器计算参考样本,在参考样本上进行曲线模式分割,计算出不同模式对应的索引。对所有的训练数据进行分模式的特征提取,作为LOF分类模型的样本。在线检测时,先利用DTW将测试样本与参考样本对齐,按索引划分曲线模式,计算统计特征,最后输入到LOF模型中计算离群因子来判断是否出现异常。上述建模过程每隔一段时间要更新一次以适应设备环境动态变化的情况。
总的来说,本发明实施例提出了一种结合曲线模式分割的无监督故障检测方法,针对不同的敏感模式计算不同的统计特征,实现高效、快速的特征提取。采用基于密度的局部离群因子的方法,构建高准确度、高效率的无监督机器学习模型,实现高性能的单变量异常检测方法。经过实际测试,本发明的准确性高、耗费的计算资源低,能进行快速的在线故障检测。
又一方面,本发明还公开一种计算机可读存储介质,存储有计算机程序,所述计算机程序被处理器执行时,使得所述处理器执行如上述方法的步骤。
再一方面,本发明还公开一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行如上方法的步骤。
在本申请提供的又一实施例中,还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述实施例中任一曲线模式分段的半导体制造无监督异常检测方法。
可理解的是,本发明实施例提供的系统与本发明实施例提供的方法相对应,相关内容的解释、举例和有益效果可以参考上述方法中的相应部分。
本申请实施例还提供了一种电子设备,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信,
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现上述曲线模式分段的半导体制造无监督异常检测方法。
上述电子设备提到的通信总线可以是外设部件互连标准(英文:PeripheralComponent Interconnect,简称:PCI)总线或扩展工业标准结构(英文:Extended IndustryStandard Architecture,简称:EISA)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。
通信接口用于上述电子设备与其他设备之间的通信。
存储器可以包括随机存取存储器(英文:Random Access Memory,简称:RAM),也可以包括非易失性存储器(英文:Non-Volatile Memory,简称:NVM),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。
上述的处理器可以是通用处理器,包括中央处理器(英文:Central ProcessingUnit,简称:CPU)、网络处理器(英文:Network Processor,简称:NP)等;还可以是数字信号处理器(英文:Digital Signal Processing,简称:DSP)、专用集成电路(英文:ApplicationSpecific Integrated Circuit,简称:ASIC)、现场可编程门阵列(英文:Field-Programmable Gate Array,简称:FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘Solid State Disk (SSD))等。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。