Abnormality detection method and device and storage medium
By preprocessing and classifying the data output from the machine sensors during the wafer manufacturing process, and combining it with machine learning models, the problem of insufficient accuracy in defect detection in semiconductor wafer manufacturing has been solved, and the accuracy and operating speed of the detection system have been improved.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2026-03-13
- Publication Date
- 2026-04-10
AI Technical Summary
In existing semiconductor wafer manufacturing processes, the accuracy of defect detection is insufficient, leading to frequent false alarms. Furthermore, conventional methods struggle to effectively distinguish between normal and abnormal data, impacting production efficiency.
By preprocessing and normalizing the dataset output by the machine sensors during the wafer manufacturing process, the curves are classified as ordinary curves. Then, by adopting the corresponding anomaly detection strategy and using machine learning models such as classification models and reconstruction models, it is determined whether the curve is an abnormal curve.
It improves the accuracy and robustness of anomaly detection, reduces the false alarm rate, and enhances the operating speed and precision of the detection system.
Smart Images

Figure CN121843497A_ABST
Abstract
Description
Technical Field
[0001] The exemplary embodiments disclosed herein generally relate to the field of computers, and particularly to an anomaly detection method, apparatus, and computer-readable storage medium. Background Technology
[0002] Semiconductor wafer manufacturing is an extremely complex and highly precise process. During wafer manufacturing, various factors, such as process control and equipment precision, inevitably lead to various defects. Undetected defects result in wasted investment in subsequent processes. Therefore, anomaly detection in the wafer production process is of paramount importance in semiconductor manufacturing. Summary of the Invention
[0003] In a first aspect of this disclosure, an anomaly detection method is provided. The method includes: determining a set of curves based on a dataset related to wafer production, wherein the curves in the set represent sensor outputs of equipment during wafer production steps; classifying the individual curves in the set to determine a first curve belonging to a common curve category, the common curve category corresponding to a first anomaly detection strategy; and, for the first curve, determining whether the first curve is an anomalous curve according to the first anomaly detection strategy, the anomalous curve indicating an anomaly exists in the step.
[0004] In a second aspect of this disclosure, an electronic device is provided. The device includes at least one processor; and at least one memory coupled to the at least one processor and storing instructions for execution by the at least one processor. When executed by the at least one processor, the instructions cause the device to perform the method of the first aspect.
[0005] In a third aspect of this disclosure, a computer-readable storage medium is provided. The computer-readable storage medium stores computer-executable instructions that can be executed by a processor to implement the method of the first aspect.
[0006] As will be understood from the following description, according to embodiments of this disclosure, a set of curves is determined based on a dataset related to wafer production. These curves represent sensor outputs from equipment during wafer production steps. Further, each curve in this set is classified to identify a first curve belonging to a common curve category, which corresponds to a first anomaly detection strategy. For the first curve in this set, the first anomaly detection strategy determines whether it is an anomalous curve, indicating an anomaly in the process. In this way, by classifying the curves in a set to identify those belonging to a common curve category and employing an anomaly detection strategy corresponding to that category to detect anomalies in the wafer production steps, the accuracy of anomaly detection can be improved. This effectively enhances the robustness of the detection system, thereby increasing its operating speed.
[0007] It should be understood that the content described in this content section is not intended to limit the key or essential features of the embodiments of this disclosure, nor is it intended to restrict the scope of this disclosure. Other features of this disclosure will become readily apparent from the following description. Attached Figure Description
[0008] The above and other features, advantages, and aspects of the embodiments of this disclosure will become more apparent from the accompanying drawings and the following detailed description. In the drawings, the same or similar reference numerals denote the same or similar elements, wherein: Figure 1 A schematic diagram is shown of an example environment in which embodiments of the present disclosure may be implemented; Figure 2 A schematic diagram illustrating the results obtained through conventional anomaly detection methods is shown. Figure 3 A flowchart of an example process for anomaly detection according to some embodiments of this disclosure is shown; Figure 4 A schematic diagram of an example flat curve according to some embodiments of the present disclosure is shown; Figure 5 A schematic diagram of example similarity curves according to some embodiments of the present disclosure is shown; Figure 6A A schematic diagram illustrating example detection results of anomaly detection according to some embodiments of the present disclosure is shown; Figure 6B A schematic diagram illustrating example processes for training a classification model and reconstructing a model according to some embodiments of the present disclosure is shown; Figure 7 A flowchart of a process for anomaly detection according to some embodiments of the present disclosure is shown; Figure 8A block diagram of an electronic device in which one or more embodiments of the present disclosure can be implemented is shown. Detailed Implementation
[0009] Embodiments of this disclosure will now be described in more detail with reference to the accompanying drawings. While some embodiments of this disclosure are shown in the drawings, it should be understood that this disclosure can be implemented in various forms and should not be construed as limited to the embodiments set forth herein. Rather, these embodiments are provided to provide a more thorough and complete understanding of this disclosure. It should be understood that the accompanying drawings and embodiments of this disclosure are for illustrative purposes only and are not intended to limit the scope of protection of this disclosure.
[0010] It should be noted that the headings of any section / subsection provided herein are not limiting. Various embodiments are described throughout this document, and embodiments of any type may be included under any section / subsection. Furthermore, embodiments described in any section / subsection may be combined in any way with any other embodiments described in the same section / subsection and / or different sections / subsections.
[0011] In the description of embodiments of this disclosure, the term "comprising" and similar terms should be understood as open-ended inclusion, i.e., "including but not limited to". The term "based on" should be understood as "at least partially based on". The term "one embodiment" or "the embodiment" should be understood as "at least one embodiment". The term "some embodiments" should be understood as "at least some embodiments". Other explicit and implicit definitions may also be included below. The terms "first", "second", etc., may refer to different or the same objects. Other explicit and implicit definitions may also be included below.
[0012] The embodiments of this disclosure may involve user data, data acquisition, and / or use. All of these aspects comply with applicable laws, regulations, and relevant provisions. In the embodiments of this disclosure, all data collection, acquisition, processing, manipulation, forwarding, and use are conducted with the user's knowledge and confirmation. Accordingly, in implementing the embodiments of this disclosure, the type, scope of use, and usage scenarios of any data or information that may be involved should be communicated to the user and their authorization obtained in accordance with relevant laws and regulations through appropriate means. The specific methods of notification and / or authorization may vary depending on the actual situation and application scenario, and the scope of this disclosure is not limited in this respect.
[0013] In this specification and the embodiments, any processing of personal information will be carried out only under the premise of legality (such as obtaining the consent of the personal information subject, or being necessary for the performance of a contract), and will only be carried out within the scope stipulated or agreed upon. A user's refusal to process personal information other than that necessary for basic functions will not affect the user's use of basic functions.
[0014] As used in this paper, the term "model" refers to a model that learns the relationship between inputs and outputs from training data, enabling it to generate corresponding outputs for a given input after training. Model generation can be based on machine learning techniques. Deep learning is a machine learning algorithm that processes inputs and provides corresponding outputs using multiple layers of processing units. A neural network model is an example of a deep learning-based model. In this paper, "model" may also be referred to as a "machine learning model," "learning model," "machine learning network," or "learning network," and these terms are used interchangeably.
[0015] Figure 1 A schematic diagram of an example environment 100 in which embodiments of the present disclosure can be implemented is shown. A detection system 110 is deployed in this example environment 100. The detection system 110 can be implemented in a server and / or a terminal device.
[0016] In example environment 100, during the wafer manufacturing process, the inspection system 110 can acquire a dataset related to wafer manufacturing. Further, the inspection system 110 can determine multiple sets of curves from the dataset, such as curve A 142-1, curve B 142-2, curve C 142-3, ..., curve J 142-J. For ease of discussion, curves A 142-1, B 142-2, C 142-3, ..., curve J 142-J can be collectively referred to as or individually as a set of curves 142.
[0017] For each set of curves (i.e., a set of curves 142) in a plurality of sets of curves, the detection system 110 can determine the detection result 145 for the anomaly detection of each curve in the set of curves 142. In other words, the detection system 110 can determine whether each curve in the set of curves 142 is an abnormal curve. For example, the detection system 110 can detect which step or steps have an anomaly during the wafer fabrication process according to certain steps.
[0018] In environment 100, the detection system 110 can be implemented at any type of computing-capable device. For example, the detection system 110 can be implemented at a terminal device and / or a server device.
[0019] The terminal device can be any type of mobile terminal, fixed terminal, or portable terminal, including mobile phones, desktop computers, laptop computers, notebook computers, netbook computers, tablet computers, media computers, multimedia tablets, personal communication system (PCS) devices, personal navigation devices, personal digital assistants (PDAs), audio / video players, digital cameras / camcorders, television receivers, radio receivers, e-book devices, gaming devices, or any combination thereof, including accessories and peripherals of these devices or any combination thereof. In some embodiments, the detection system 110 can also support any type of user-facing interface (such as "wearable" circuitry).
[0020] In some embodiments, the server-side device may be a standalone physical server, a server cluster or distributed system composed of multiple physical servers, or a cloud server providing basic cloud computing services such as cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communication, middleware services, domain name services, security services, content delivery networks, and big data and artificial intelligence platforms. The server-side device may include, for example, computing systems / servers, such as mainframes, edge computing nodes, computing devices in a cloud environment, and so on.
[0021] It should be understood that the structure and function of the various elements in environment 100 are described for illustrative purposes only and do not imply any limitation on the scope of this disclosure.
[0022] As briefly described above, various defects inevitably arise during wafer manufacturing due to factors such as process control and equipment precision. Therefore, anomaly detection in the wafer production process is crucial in the semiconductor manufacturing industry. Conventionally, anomaly monitoring can be performed using real-time data generated by a Fault Detection and Classification (FDC) system. An FDC system is a technology used for real-time monitoring and analysis of equipment operating data during wafer production. However, this method has some accuracy limitations. The following will refer to… Figure 2 This describes the problem of insufficient accuracy. Figure 2 A schematic diagram 200 shows the results obtained by anomaly detection using a conventional method.
[0023] For the model, if a curve representing a step in wafer fabrication differs spatially from other curves, the model may output that curve as an anomalous curve. For example... Figure 2As shown, assuming there are no other curves near curve 211, the model may consider the appearance of curve 211 in this space to be an anomaly. That is, if there are few curves in this space, the model will output curve 211 as an anomalous curve.
[0024] Furthermore, automatically generated modeling data typically includes both normal and abnormal data. Since the normality of this data is not pre-identified in automated modeling scenarios, the model struggles to learn and distinguish between normal and abnormal data. This approach can easily lead to model overfitting, resulting in an excessively high number of false alarms. Typically, after the model is built, relevant personnel (e.g., experts) can relabel inaccurate predictions based on their knowledge and experience. However, the automated modeling approach described above easily leads to the problem of repeated manual relabeling.
[0025] In view of this, embodiments of the present disclosure propose an improved anomaly detection scheme. In this scheme, a set of curves is determined based on a dataset related to wafer production, where the curves represent sensor outputs of the equipment during wafer production steps. Further, each curve in the set is classified to determine a first curve belonging to the ordinary curve category, which corresponds to a first anomaly detection strategy. For the first curve in the set, according to the first anomaly detection strategy, it is determined whether the first curve is an anomalous curve; an anomalous curve indicates an anomaly in the step.
[0026] In this way, by classifying the curves in a set and applying different anomaly detection strategies to different curve categories, the accuracy of anomaly detection can be improved. This effectively enhances the robustness of the detection system, thereby increasing its operating speed.
[0027] The following description will continue with reference to the accompanying drawings, outlining some exemplary embodiments of this disclosure. Hereinafter, exemplary embodiments will be described primarily with respect to the detection system 110.
[0028] The following will be referenced Figure 3 The scheme for anomaly detection disclosed herein is described. Figure 3 A flowchart of an example process 300 for anomaly detection according to some embodiments of the present disclosure is shown. For ease of discussion, reference will be made to... Figure 1 These embodiments are described in the context of environment 100. These embodiments can be implemented in... Figure 1 The detection system has 110 locations. For ease of discussion, the following description will take implementation at detection system 110 as an example.
[0029] In embodiments of this disclosure, the detection system 110 determines a set of curves (i.e., a set of curves 142) based on a dataset related to wafer production. The curves in this set represent sensor outputs from the equipment during the wafer fabrication process. See also... Figure 3 The inspection system 110 can extract multiple sets of data from the dataset 311 related to wafer production. For example, one set of data may include information such as machine location, chamber, sensor name, process recipe, and time range. In some examples, the inspection system 110 can combine wafers produced under the same production conditions into a single set of data. For instance, assuming wafer a and wafer b are both produced via step a, the data output from sensors deployed in the machine in step a can be combined into a single set of data. In some examples, step a may include multiple sub-steps.
[0030] In block 312, the detection system 110 preprocesses a set of data to determine its corresponding set of curves 142. Specifically, in block 313, for the step used to generate the wafer, the detection system 110 calculates the maximum length of the data corresponding to each sub-step included in that step. Then, the data points are aligned on a sub-step basis, with null values used to fill in any inconsistencies in length. In some examples, a data point may refer to a parameter output by a sensor at a certain point in time. Further, after aligning the data points, the data is concatenated according to the order of the sub-steps.
[0031] Further, the detection system 110 determines the mean and variance of the spliced data for this combination. In block 314, based on the mean and variance of the combined data, the combined data is normalized to determine a set of curves corresponding to the combined data. In some embodiments, the following formula can be used to normalize the combined data: ,in, For the original sequence Data points, This is the mean of the combination. Let Variance be the variance of the combination. For normalized ordered data, This represents the sequence length under this combination. Therefore, by preprocessing the data to determine a set of curves, the accuracy, stability, and efficiency of curve analysis can be improved.
[0032] In this embodiment of the disclosure, after determining a set of curves, the detection system 110 classifies each curve in the set to identify a first curve belonging to the ordinary curve category. The ordinary curve category corresponds to a first anomaly detection strategy. A curve in the ordinary curve category can refer to a time-series curve showing the parameter variation pattern output by the sensor. For example, a curve in the ordinary curve category can be one without abnormal fluctuations or without similar characteristics to other curves. In this embodiment of the disclosure, the detection system 110 can detect whether a curve in the ordinary curve category is an abnormal curve according to the first anomaly detection strategy corresponding to the ordinary curve category. The following will describe in detail how to detect whether a curve is an abnormal curve according to the first anomaly detection strategy with reference to the accompanying drawings.
[0033] In some embodiments, after determining a set of curves, the detection system 110 can classify the individual curves in that set to determine the category to which each curve belongs. Figure 1 In the example, multiple curve categories 120 may include curve category 120-1, curve category 120-2, ..., curve category 120-N. In some embodiments, refer to Figure 3 In box 315, the detection system 110 can classify a set of curves according to rules to determine the category to which each curve belongs. In some embodiments, each of the multiple curve categories corresponds to an anomaly detection strategy 130. Figure 1 In the example, multiple anomaly detection strategies 130 may include anomaly detection strategy 130-1, anomaly detection strategy 130-2, ..., anomaly detection strategy 130-M. In some embodiments, the detection system 110 may detect whether curves under different curve categories are abnormal according to the anomaly detection strategy corresponding to that curve category.
[0034] In some embodiments, for anomaly detection strategies that require the use of a model, the detection system 110 can utilize the model to perform anomaly detection. (Refer to...) Figure 1The detection system 110 may deploy one or more models (also referred to as machine learning models), such as classification model 152, reconstruction model 155, reference model, or any other suitable machine learning model. It should be understood that these models may also be deployed on a server, and the detection system 110 may invoke these models to perform anomaly detection operations. In some embodiments, the models may include at least a language model (LM), such as a large language model (LLM). These models include content-generating models capable of generating corresponding outputs based on model inputs. In some embodiments, the language model-based machine learning model can receive non-textual modal model inputs (e.g., images, speech, video, etc.) and / or textual modal model inputs (e.g., natural language and / or machine language), and can obtain corresponding model outputs based on the model inputs and prompt words, thereby completing the task execution. The prompt words here are used to guide the model to generate requests that resolve the anomaly detection indicated by the model inputs.
[0035] In this way, adopting a simple and effective anomaly detection strategy for specific situations can enhance the robustness of the detection system.
[0036] The following will continue to refer to Figures 3 to 5 This describes how the detection system 110 determines the category to which each curve in a set of curves belongs. Figure 4 A schematic diagram 400 of an example flat curve according to some embodiments of the present disclosure is shown. Figure 5 A schematic diagram 500 showing example similarity curves according to some embodiments of the present disclosure is illustrated.
[0037] In some embodiments, the detection system 110 generates a data object with a predetermined structure based on data representing a set of curves 142. In some embodiments, the detection system 110 may stack the set of curves 142 into a data object, such as a two-dimensional array or any other suitable data object. The data in the data object is organized according to a time dimension and a numerical dimension. For example, a two-dimensional array may consist of rows (i.e., data in the time dimension) and columns (i.e., data in the numerical dimension). The rows of the two-dimensional array may indicate the curves in the set of curves, and the columns of the two-dimensional array may indicate the curve characteristics of the curves in the set of curves at a certain point in time.
[0038] In some embodiments, the category to which any curve in the set of curves 142 belongs can be determined in the following manner. For ease of discussion, the following description will use a specific curve in the set of curves 142 as an example to illustrate how to determine the category to which the curve belongs.
[0039] The detection system 110 can determine the data of a curve in at least one dimension, either time or numerical, from a data object. Further, based on the data of the curve in at least one dimension, the detection system 110 determines the curve category from multiple curve categories. In some examples, the detection system 110 can determine the corresponding row variance of the curve based on its time dimension data, thereby determining the curve category based on the row variance. In some examples, the detection system 110 can determine the corresponding column variance of the curve and other curves in the numerical dimension, thereby determining the curve categories based on the column variance. In this way, by determining the curve category, it is easier to subsequently adopt effective anomaly detection strategies to determine whether there are anomalies in the wafer manufacturing process.
[0040] The following describes how to determine the curve category based on data about the curve in the time dimension. In some embodiments, the detection system 110 determines whether the degree of fluctuation of the curve over time is within a first predetermined range based on data about the curve in the time dimension, thereby determining the curve category of the curve.
[0041] If the detection system 110 determines that the degree of fluctuation of the curve over time is within a first predetermined range, then the curve is classified as a flat curve (e.g., curve category 120-1) among multiple curve categories. The flat curve category indicates that the magnitude of change of the curve over time is less than a predetermined magnitude. See also... Figure 4 , Figure 4 The second curves shown (e.g., curves 411, 412, etc.) all belong to the flat curve category. The second curve of the flat curve category (e.g., curve 411) can refer to a time series curve in which the parameters output by the sensor change by a very small amount over time, remaining almost constant.
[0042] As an example, the detection system 110 determines the row variance corresponding to a row in a two-dimensional array based on the data of the row indicating curve 411 (which is an example of a second curve). Further, the detection system 110 determines whether the row variance corresponding to curve 411 is within a first predetermined range (e.g., whether it is close to zero, or any other suitable predetermined range). If the detection system 110 determines that the row variance corresponding to curve 411 is close to zero, then curve 411 is identified as a flat curve.
[0043] The following describes how to determine the curve category based on data in the numerical dimension of the curve (e.g., one of at least two curves). In some embodiments, the detection system 110 determines, based on data indicating the numerical dimension of the at least two curves, whether the degree of fluctuation of the difference between the at least two curves is within a second predetermined range. Furthermore, the detection system 110 determines the curve category of these curves.
[0044] If the detection system 110 determines that the degree of fluctuation of the differences between these curves is within a second predetermined range, then it classifies these curves as similar curves. A similar curve category indicates that at least two curves have similar curve characteristics. See also... Figure 5 , Figure 5 The third curves shown (e.g., curves 511, 512, etc.) all belong to the category of similar curves. Two or more curves belonging to the category of similar curves (e.g., curves 511, 512) can refer to curves that are similar in terms of trend of change, numerical distribution, and key features (peaks / valleys / flat segments).
[0045] As an example, the detection system 110 determines the column variance of a column in a two-dimensional array, which consists of data from curves 511 and 512 (each an example of a third curve) at a certain point in time. Further, the detection system 110 determines whether the row variances corresponding to curves 511 and 512 are within a second predetermined range (e.g., whether they are close to zero, or any other suitable predetermined range). If the detection system 110 determines that the column variances corresponding to curves 511 and 512 are close to zero, then curves 511 and 512 are identified as similar curves.
[0046] In some embodiments, the multiple curve categories may further include ordinary curve categories. The first curve of an ordinary curve category may refer to a time-series curve showing the variation of parameters output by the sensor. For example, a curve of an ordinary curve category may be one that exhibits no abnormal fluctuations or does not share similar characteristics with other curves. Additionally / alternatively, the multiple curve categories may also include any other suitable curve categories, such as curve categories without periodic vibrations within a predetermined range. These curve categories may also have their respective corresponding anomaly detection strategies.
[0047] The preceding text describes how the detection system 110 determines the curve category of each curve in a set of curves 142. The following text continues with further details. Figure 3 This describes how the detection system 110 determines whether a curve is an abnormal curve for different curve categories.
[0048] In this embodiment of the disclosure, multiple curve categories correspond to multiple anomaly detection strategies. For example... Figure 3 As shown, the flat curve category corresponds to anomaly detection strategy 130-1 (which is an example of the second anomaly detection strategy), the normal curve category corresponds to anomaly detection strategy 130-2 (which is an example of the first anomaly detection strategy), and the similar curve category corresponds to anomaly detection strategy 130-3 (which is an example of the third anomaly detection strategy).
[0049] In this embodiment of the disclosure, the detection system 110 determines whether a curve in a set of curves 142 is an abnormal curve according to an anomaly detection strategy corresponding to the curve category to which the curve belongs. An abnormal curve indicates that an anomaly exists in the process. (Continue to refer to...) Figure 3 In box 320, the detection system 110 determines that the second curve in a set of curves 142 belongs to the flat curve category. In this case, the detection system 110 can determine whether the second curve is abnormal according to the anomaly detection strategy 130-1 corresponding to the flat curve category. In box 330, the detection system 110 determines that the third curve in a set of curves 142 belongs to the similar curve category with other curves. In this case, the detection system 110 can determine whether these curves are abnormal according to the anomaly detection strategy 130-3 corresponding to the similar curve category.
[0050] In box 340, the detection system 110 determines that the first curve in a set of curves 142 belongs to the category of ordinary curves. In this case, the detection system 110 can determine whether the first curve is abnormal according to the anomaly detection strategy 130-2 corresponding to the ordinary curve category. In this way, determining whether a curve is abnormal according to different anomaly detection strategies for different curve categories can improve the robustness and accuracy of the detection system.
[0051] The following is for reference first. Figure 3 This describes how the detection system 110 determines whether a curve is an anomalous curve according to its corresponding anomaly detection strategy 130-1 for curves of the flat curve category (e.g., the second curve described above).
[0052] In some embodiments, if the curve belongs to the flat curve category, the detection system 110 performs an anomaly detection on the curve based on predetermined conditions indicated by the anomaly detection strategy 130-1 corresponding to the flat curve category. (Refer to...) Figure 3 In block 322, if the detection system 110 determines that the curve belongs to the flat curve category, it determines whether the curve is an abnormal curve by determining whether the curve value meets a predetermined condition. In some embodiments, the predetermined condition may indicate a curve threshold or a variance threshold. If the detection system 110 determines that the curve value meets the predetermined condition, it proceeds to block 324. In block 324, the detection system 110 determines that the curve is a normal curve. If the detection system 110 determines that the curve value does not meet the predetermined condition, it proceeds to block 336. In block 336, the detection system 110 determines that the curve is an abnormal curve.
[0053] In some embodiments, the detection system 110 may determine whether a curve is abnormal based on a curve threshold indicated by predetermined conditions. If the detection system 110 determines that the curve value exceeds the curve threshold, the curve is identified as an abnormal curve. Conversely, if the detection system 110 determines that the curve value does not exceed the curve threshold, the curve is identified as a normal curve. In some examples, the detection system 110 may determine the curve threshold based on the maximum and minimum curve values among a set of curves 142. The curve threshold may refer to the curve range of a normal curve; for example, the curve threshold may be a range from the maximum curve value +5% to the minimum curve value -5%. However, this is merely exemplary, and the curve threshold may be any suitable range.
[0054] As an example, refer to Figure 4 Suppose that in a set of curves 142, curve 413 has the maximum curve value in that set, and curve 414 has the minimum curve value (this is merely an example; the maximum and minimum curve values can be any suitable curve values). Then, the curve threshold could refer to a range from 1.55 to 2.05. In this case, the detection system 110 can identify all curves with values between 1.55 and 2.05 as normal curves. The detection system 110 can identify curves with values outside the range of 1.55 to 2.05 as abnormal curves.
[0055] In some embodiments, the detection system 110 can determine whether a curve is an abnormal curve based on a variance threshold indicated by preset conditions. If the detection system 110 determines that the row variance of the curve exceeds the variance threshold, it identifies the curve as an abnormal curve. Conversely, if the detection system 110 determines that the row variance of the curve does not exceed the variance threshold, it identifies the curve as a normal curve. The variance threshold can be a preset fixed value used to monitor whether the curve exhibits abrupt changes. Since the row variance of curves belonging to the flat curve category should be close to zero, curves exceeding the variance threshold can be identified as abnormal curves.
[0056] The above describes how the detection system 110 determines whether a curve is an abnormal curve according to its corresponding anomaly detection strategy 130-1 for curves of the flat curve category. The following will continue to refer to... Figure 3 This describes how the detection system 110 determines whether a curve is an anomalous curve according to its corresponding anomaly detection strategy 130-3 for curves of similar curve categories (e.g., the third curve described above).
[0057] In some embodiments, if a curve belongs to a similar curve category with at least one curve in a set of curves 142, the detection system 110 can perform an anomaly detection on the curve based on a distance threshold indicated by the anomaly detection strategy 130-3 corresponding to the similar curve category. (Refer to...) Figure 3 In box 332, the detection system 110 generates a standard curve based on the curve and data of at least one curve in the numerical dimension. In some examples, the detection system 110 takes the average value along the column direction as the standard curve. Further, the detection system 110 determines the distance between the curve and the standard curve.
[0058] In block 334, the detection system 110 determines whether the curve is an abnormal curve by determining whether the distance between the curve and the standard curve exceeds a distance threshold. In some embodiments, the distance threshold can be a pre-set threshold, for example, the detection system 110 can use N times the data variance in the column direction at each time point (e.g., 1.5 times, 3 times, or any other suitable multiple), where N is a rational number greater than or equal to 1. If the detection system 110 determines that the distance between the curve and the standard curve exceeds the distance threshold, it proceeds to block 336. In block 336, the detection system 110 identifies the curve as an abnormal curve. If the detection system 110 determines that the distance between the curve and the standard curve does not exceed the distance threshold, it proceeds to block 324. In block 324, the detection system 110 identifies the curve as a normal curve.
[0059] The above describes how the detection system 110 determines whether a curve is an anomalous based on its corresponding anomaly detection strategy 130-3 for curves of the similar curve category. The following will continue to refer to... Figure 3 This describes how the detection system 110 determines whether a curve is an abnormal curve according to its corresponding anomaly detection strategy 130-2 for a curve of the normal curve category (i.e., the first curve).
[0060] In some embodiments, if a curve in a set of curves 142 belongs to the normal curve category, the detection system 110 can use at least one machine learning model indicated by the anomaly detection strategy 130-2 corresponding to the normal curve category to perform anomaly detection on that curve. In some embodiments, the at least one machine learning model may include a classification model and a reconstruction model. Reference will be made below. Figure 6B This describes how to train the classification model and the reconstruction model. See also... Figure 3 In box 341, the detection system 110 uses a classification model to obtain an initial label for the curve. The initial label indicates whether the curve is an anomalous curve. In some embodiments, the classification model can be built based on a variety of possible models to determine whether a curve is an anomalous curve. In some examples, the classification model can be built based on a neural network. For example, the classification model can refer to a classifier built from a predetermined number of layers (e.g., two layers or other suitable number of layers) of multilayer perceptrons (MLPs).
[0061] As an example, the detection system 110 inputs curves belonging to the normal curve category into a trained classification model to obtain curves with initial labels. In some embodiments, the detection system 110 can input normal curves into a trained classification model, which can then filter these curves to determine normal curves (i.e., curves with initial labels) and abnormal curves.
[0062] In some embodiments, the detection system 110, based on the initial label and the curve, uses a trained reconstruction model to generate a detection result regarding whether the curve is an anomalous curve. The reconstruction model is trained based on normal curve samples output by the classification model. As an example, continue to refer to... Figure 3 In box 342, the detection system 110 can input a curve with initial labels into a trained reconstruction model to determine whether the curve is an anomalous curve. The reconstruction model can be built based on various possible models to reconstruct the signal. In some examples, the reconstruction model can be built based on a large time series model. For example, the reconstruction model can use the MOMENT algorithm, which can reconstruct the signal using mask reconstruction. Determining whether a curve is an anomalous in this way allows the reconstruction model to adapt to scenarios with partially missing data.
[0063] In some embodiments, the detection system 110 can input a curve with initial labels into a trained reconstruction model, and the trained reconstruction model can output a reconstructed curve with labels. Further, the detection system 110 can determine the reconstruction error between the normalized curve and the curve output by the reconstruction model. In block 343, the detection system 110 determines whether the reconstruction error exceeds a preset error. If the detection system 110 determines that the reconstruction error exceeds the preset error, it proceeds to block 344. In block 344, the detection system 110 identifies the curve with initial labels as an abnormal curve. If the detection system 110 determines that the reconstruction error does not exceed the preset error, it proceeds to block 324. In block 324, the detection system 110 identifies the curve with initial labels as a normal curve.
[0064] In some embodiments, if the detection result output by the trained reconstruction model indicates that the curve is a normal curve, the detection result can indicate that all sub-steps in the step represented by the curve are normal. If the detection result output by the trained reconstruction model indicates that the curve is an abnormal curve, the detection result can also indicate that there are abnormal sub-steps in the step represented by the curve. For example, for a normal curve output by a trained classification model, the detection system 110 can use the trained reconstruction model to obtain a normal label for the curve. For an abnormal curve output by a trained classification model, the detection system 110 can use the trained reconstruction model to obtain abnormal sub-steps in the step represented by the curve.
[0065] In some examples, because the trained reconstruction model is trained on normal curve samples, it can also correct the output of the classification model. This allows the detection system to achieve more accurate results.
[0066] In this way, by determining whether curves belonging to different curve categories are abnormal according to different anomaly detection strategies, the accuracy of anomaly detection by the detection system can be improved. Figure 6A A schematic diagram illustrating an example detection result 600A of anomaly detection according to some embodiments of the present disclosure is shown. Figure 6A As shown, the detection system 110 can display abnormal curves and normal curves in different styles. For example, the detection system 110 can use a dashed line 602 to represent an abnormal curve and a solid line 604 to represent a normal curve. This is merely an example, and this disclosure is not limited thereto. For example, normal curves and abnormal curves can be displayed in different colors, transparency, etc.
[0067] The above describes how trained classification and reconstruction models can be used to determine whether a curve belonging to the normal curve category is an anomalous curve. The following section will refer to... Figure 6B This describes how to train the classification model and reconstruct the model. Figure 6B A schematic diagram of an example process 600B for training a classification model and reconstructing a model according to some embodiments of the present disclosure is shown.
[0068] In some embodiments, the detection system 110 acquires multiple curve samples belonging to the common curve category. For example... Figure 6B As shown, in example process 600B, detection system 110 determines a set of curve samples from data sample set 611. In block 612, detection system 110 can determine a set of curve samples by preprocessing data sample set 611. Specifically, in block 613, detection system 110 uses data alignment padding in data sample set 611 to determine a set of curve samples. In block 614, detection system 110 determines a set of curve samples by performing normalization processing on the aligned and padded data.
[0069] Further, in box 615, the detection system 110 classifies each curve sample in a set of curve samples according to rules to determine the curve category of each curve sample. In box 616, curve samples belonging to the ordinary curve category are obtained from this set of curve samples for training the classification model and the reconstruction model. In the embodiments of this disclosure, by using only curve samples belonging to the ordinary curve category to train the classification model and the reconstruction model, the robustness of the system can be effectively improved, the implementation difficulty can be reduced, and the accuracy of the detection system can be improved. It should be understood that the specific method of determining curve samples belonging to the ordinary curve category from the data sample set can be referred to the specific description of determining curves belonging to the ordinary curve category above, and will not be repeated here.
[0070] In some embodiments, the detection system 110 uses a reference model to obtain multiple curve samples with labeled samples based on multiple curve samples. The labeled samples are used to identify whether each curve sample among the multiple curve samples is an abnormal curve sample. The detection system 110 can input the multiple curve samples into the reference model to obtain multiple curve samples with labeled samples. The reference model can be deployed in the detection system 110. Alternatively, the reference model can also be deployed on a server.
[0071] The reference model is configured to detect anomalous curve samples among multiple curve samples. In some embodiments, the reference model can be built based on various possible models to output normal / abnormal labels for the curves. The reference model can, for example, be an unsupervised / self-supervised temporal feature learning (TS2Vec) model. The reference model can support input signals of different lengths for training. In some embodiments, the detection system 110 can randomly divide the curve samples into a validation set and a test set, with one part serving as the training set for the reference model and the other as the validation set.
[0072] Continue to refer to Figure 6B In box 617, the detection system 110 can input multiple curve samples into a reference model to obtain embedding vectors indicating these curve samples. In box 618, based on the embedding vectors, the detection system 110 uses a target algorithm (e.g., the Isolation Forest algorithm or any other suitable algorithm) to obtain multiple curve samples with labeled samples. For example, the detection system 110 uses the embedding vectors as input to the Isolation Forest algorithm for unsupervised classification to obtain a normal or abnormal label for each curve sample.
[0073] In some embodiments, the detection system 110 acquires multiple enhanced curve samples based on multiple curve samples with labeled samples. In block 619, the detection system 110 acquires multiple updated curve samples based on the multiple curve samples with labeled samples and expert knowledge. As an example, experts can relabel inaccurate results output by the classification model based on their experience to acquire multiple curve samples that have been confirmed or relabeled by the expert.
[0074] In some embodiments, the detection system 110 may acquire enhanced curve samples based on an augmentation strategy using multiple updated curve samples. In some embodiments, the updated curve samples represent sensor outputs from equipment during the wafer fabrication step. That is, assuming wafer a is fabricated via step a, the labeled curve sample may indicate parameters output by sensors deployed on equipment in step a. The wafer fabrication step may include multiple sub-steps.
[0075] As an example, the inspection system 110 can augment time-off data based on multiple updated curve samples to obtain enhanced curve samples. For instance, during wafer fabrication, data may shift. To simulate this phenomenon, a sub-step corresponding to an updated curve sample is randomly selected, and the data is randomly shifted by a preset unit (e.g., 1-5 units, or any other suitable number of units) along the time dimension. This allows for the acquisition of enhanced curve samples.
[0076] As an example, the detection system 110 can augment noisy data based on multiple updated curve samples to obtain enhanced curve samples. For instance, during wafer manufacturing, data may contain random perturbations. To simulate this phenomenon, an updated curve sample is randomly selected, and noise conforming to a Gaussian distribution (e.g., a mean of 0 and a standard deviation of 0.01 to 0.05 times the standard deviation of the original data curve) is added to the original data. This allows for the acquisition of enhanced curve samples.
[0077] As an example, the detection system 110 can augment missing data based on multiple updated labeled curve samples to obtain enhanced curve samples. For instance, during wafer manufacturing, data may be randomly missing. To simulate this phenomenon, an updated labeled curve sample is randomly selected, and a predetermined number (e.g., 1% to 5%, or any other suitable number) of values are randomly replaced with null values in sub-steps. This allows the acquisition of enhanced curve samples.
[0078] As an example, the detection system 110 can augment missing data in subsequences based on multiple updated labeled curve samples to obtain enhanced curve samples. For instance, during wafer manufacturing, the data corresponding to a certain sub-step may be entirely missing. In such cases, enhanced curve samples can be obtained by randomly replacing the values corresponding to a preset number (e.g., 1, 2, or any other appropriate number) of sub-steps with null values.
[0079] Continuing with process 600B, in block 621, detection system 110 trains a classification model based on multiple enhancement curve samples. In some embodiments, detection system 110 may divide all enhancement curve samples into training and test sets for training the classification model. In some embodiments, detection system 110 may train the classification model based on a first loss function. The first loss function may, for example, include focal loss. Focal loss can be expressed using the following formula: ,in The predicted probability that a sample in the classification model's prediction curve belongs to the normal category; Refers to the balance factor, which is used to solve the problem of unbalanced curve samples; It is a hyperparameter, and its value can range from 0 to 5.
[0080] In some embodiments, the trained classification model can be used to detect whether a curve is an anomalous. For example, the detection system 110 can input curves belonging to the normal curve category into the classification model to obtain curves with normal or anomalous labels. Thus, by introducing expert knowledge to determine the updated curve samples, the accuracy of the trained classification model can be ensured. Furthermore, by combining real-world data to obtain augmented data, data acquisition costs can be effectively reduced.
[0081] The above describes the specific process of training a classification model; the following text will continue to refer to... Figure 6B This describes how to train the reconstruction model.
[0082] Continuing with process 600B, in block 622, the detection system 110, based on at least one curve sample belonging to the normal curve category, uses a trained classification model to obtain curve samples with target labels from the at least one curve sample. The target label indicates that the curve sample is a normal curve sample. That is, the detection system 110 obtains normal curve samples by using the trained classification model. Further, in block 623, the detection system 110 trains a reconstruction model based on the normal curve samples. In block 624, the detection system 110 can use the trained reconstruction model to obtain detection results, such as whether the curve sample is abnormal, and if so, which sub-steps in the step indicated by the curve sample are abnormal. In this way, by removing abnormal curve samples, the ability of the reconstruction model to reconstruct normal signals can be improved, thereby improving the accuracy of anomaly detection by the reconstruction model and reducing the probability of false alarms.
[0083] In some embodiments, the detection system 110 uses a reconstruction model to obtain reconstructed curve samples based on curve samples with target labels. The detection system 110 inputs the curve samples with target labels into the reconstruction model to obtain the reconstructed curve samples. Further, the detection system 110 trains the reconstruction model based on the difference between the curve samples with target labels and the reconstructed curve samples (e.g., the distance error between them or any other suitable difference).
[0084] In some examples, the detection system 110 can train the reconstruction model based on a second loss function. The second loss function may, for example, include mean squared error. The second loss function can be expressed by the following formula: ,in Refers to the true value, for example, it can indicate a curve sample with a target label; Refers to the predicted value output by the reconstruction model, such as indicating a reconstructed curve sample; This refers to the total number of curve samples used to train the reconstruction model.
[0085] As an example, the detection system 110 inputs normal curve samples into the reconstruction model. The reconstruction model outputs reconstructed curve samples by downsampling and upsampling the normal curve samples. Furthermore, the detection system 110 trains the reconstruction model based on the distance error between the normal curve samples and the reconstructed curve samples. In this way, since the reconstruction model is trained based on normal curve samples filtered by a trained classification model, the reconstruction model will not become insensitive to anomalous data due to learning patterns in anomalous data. This increases the probability of detecting anomalous data.
[0086] In summary, classifying curves within a set and employing different anomaly detection strategies for different curve categories can improve the accuracy of the detection system. This approach effectively enhances the robustness of the detection system, thereby increasing its operating speed.
[0087] Figure 7 A flowchart of a process 700 for anomaly detection according to some embodiments of the present disclosure is shown. Process 700 can be implemented at detection system 110. Reference is made below. Figure 1 Describe process 700.
[0088] In box 710, detection system 110 determines a set of curves based on a dataset related to wafer production, where the curves in the set represent the sensor outputs of the machine during the wafer production steps.
[0089] In box 720, the detection system 110 classifies each curve in a set of curves to determine the first curve in the set of curves that belongs to the ordinary curve category, which corresponds to the first anomaly detection strategy.
[0090] In box 730, the detection system 110 determines whether the first curve is an abnormal curve according to the first anomaly detection strategy. An abnormal curve indicates that there is an anomaly in the step.
[0091] In some embodiments, determining whether a first curve is an anomalous curve includes: performing an anomalous curve detection on the first curve using at least one machine learning model indicated by a first anomaly detection strategy.
[0092] In some embodiments, at least one machine learning model includes a classification model and a reconstruction model, and performing detection on the first curve to determine whether it is an anomalous curve includes: obtaining an initial label for the first curve using the classification model based on the first curve, the initial label indicating whether the first curve is an anomalous curve; and generating a detection result on whether the first curve is an anomalous curve using the reconstruction model based on the initial label and the first curve, the reconstruction model being trained based on normal curve samples output by the classification model.
[0093] In some embodiments, the detection result indicates that the first curve is an abnormal curve, and the detection result also indicates that there is an abnormal sub-step in the step represented by the first curve.
[0094] In some embodiments, a classification model is trained by: obtaining multiple curve samples belonging to the ordinary curve category; obtaining multiple curve samples with labeled samples based on the multiple curve samples using a reference model, wherein the reference model is configured to detect abnormal curve samples among the multiple curve samples, and the labeled samples are used to identify whether each curve sample among the multiple curve samples is an abnormal curve sample; obtaining multiple enhanced curve samples based on the multiple curve samples with labeled samples; and training a classification model based on the multiple enhanced curve samples.
[0095] In some embodiments, obtaining multiple enhanced curve samples includes: obtaining multiple updated curve samples based on multiple curve samples with labeled samples and expert knowledge; and obtaining enhanced curve samples using an augmentation strategy based on the updated multiple curve samples.
[0096] In some embodiments, the reconstruction model is trained by: using a trained classification model to obtain curve samples with target labels from at least one curve sample belonging to the normal curve category, wherein the target labels indicate that the curve samples are normal curve samples; and using the curve samples with target labels to train the reconstruction model.
[0097] In some embodiments, training the reconstruction model includes: obtaining reconstructed curve samples based on curve samples with target labels using the reconstruction model; and training the reconstruction model based on the difference between the curve samples with target labels and the reconstructed curve samples.
[0098] In some embodiments, process 700 further includes: classifying the individual curves in a set of curves to determine a second curve in the set of curves that belongs to the flat curve category, the flat curve category corresponding to a second anomaly detection strategy; and performing an anomaly detection on the second curve based on predetermined conditions indicated by the second anomaly detection strategy, the flat curve category indicating that the change in the curve over time is less than a predetermined range.
[0099] In some embodiments, detecting whether the second curve is an abnormal curve includes: determining whether the curve value of the second curve meets a predetermined condition; determining the second curve as an abnormal curve in response to the curve value not meeting the predetermined condition; and determining the second curve as a normal curve in response to the curve value meeting the predetermined condition.
[0100] In some embodiments, process 700 further includes: classifying the individual curves in a set of curves to determine a third curve in the set of curves that belongs to a similar curve category; and in response to the third curve belonging to a similar curve category with at least one curve in the set of curves, performing an anomaly detection on the third curve based on a distance threshold indicated by a third anomaly detection strategy, wherein the similar curve category indicates that at least two curves have similar curve features.
[0101] In some embodiments, detecting whether a third curve is an abnormal curve includes: generating a standard curve based on data of the third curve and at least one curve in the numerical dimension; determining the distance between the third curve and the standard curve; determining the third curve as an abnormal curve in response to the determined distance being greater than a distance threshold; and determining the third curve as a normal curve in response to the determined distance being less than a distance threshold.
[0102] In some embodiments, individual curves in a set of curves are classified in the following ways: generating a data object with a predetermined structure based on data representing the set of curves, wherein the data in the data object is organized according to a time dimension and a numerical dimension; and for a curve in the set of curves, determining, from the data object, the data of the curve in at least one dimension of the time dimension and the numerical dimension; and determining the curve category to which each curve belongs based on the data of the curve in at least one dimension.
[0103] In some embodiments, determining the curve category to which each curve belongs includes: for a curve in a set of curves, determining whether the degree of fluctuation of the curve over time is within a first predetermined range based on data of the curve in the time dimension; and in response to the degree of fluctuation of the curve over time being within the first predetermined range, determining the curve as a flat curve category among a plurality of curve categories, wherein the flat curve category indicates that the change of the curve in the time dimension is less than a predetermined range.
[0104] In some embodiments, determining the curve category to which a curve belongs from a plurality of curve categories includes: for at least two curves in a set of curves, determining whether the degree of fluctuation of the difference between the at least two curves is within a second predetermined range based on data of the at least two curves in the numerical dimension; and in response to the degree of fluctuation of the difference being within the second predetermined range, identifying the at least two curves as similar curve categories among the plurality of curve categories, the similar curve category indicating that the at least two curves have similar curve characteristics.
[0105] Figure 8 A block diagram of an electronic device 800 in which one or more embodiments of the present disclosure may be implemented is shown. It should be understood that... Figure 8 The electronic device 800 shown is merely exemplary and should not be construed as limiting the functionality and scope of the embodiments described herein. Figure 8 The electronic device 800 shown can be used to achieve Figure 1 The detection system 110.
[0106] like Figure 8 As shown, electronic device 800 is in the form of a general-purpose electronic device. Components of electronic device 800 may include, but are not limited to, one or more processors 810 or processing units, memory 820, storage device 830, one or more communication units 840, one or more input devices 850, and one or more output devices 860. Processor 810 may be a physical or virtual processor and is capable of performing various processes according to programs stored in memory 820. In a multiprocessor system, multiple processors execute computer-executable instructions in parallel to improve the parallel processing capability of electronic device 800.
[0107] Electronic device 800 typically includes multiple computer storage media. Such media can be any accessible media that is accessible to electronic device 800, including but not limited to volatile and non-volatile media, removable and non-removable media. Memory 820 can be volatile memory (e.g., registers, cache, random access memory (RAM)), non-volatile memory (e.g., read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory), or some combination thereof. Storage device 830 can be removable or non-removable media and can include machine-readable media, such as flash drives, disks, or any other media that can be used to store information and / or data and can be accessed within electronic device 800.
[0108] Electronic device 800 may further include additional removable / non-removable, volatile / non-volatile storage media. Although not explicitly stated... Figure 8 As shown, disk drives for reading from or writing to removable, non-volatile disks (e.g., "floppy disks") and optical disk drives for reading from or writing to removable, non-volatile optical disks can be provided. In these cases, each drive can be connected to a bus (not shown) via one or more data media interfaces. Memory 820 may include computer program product 825 having one or more program modules configured to perform various methods or actions of various embodiments of this disclosure.
[0109] The communication unit 840 enables communication with other electronic devices via a communication medium. Additionally, the functionality of the components of the electronic device 800 can be implemented using a single computing cluster or multiple computing machines capable of communicating via communication connections. Therefore, the electronic device 800 can operate in a networked environment using logical connections to one or more other servers, networked personal computers (PCs), or another network node.
[0110] Input device 850 can be one or more input devices, such as a mouse, keyboard, trackball, etc. Output device 860 can be one or more output devices, such as a monitor, speaker, printer, etc. Electronic device 800 can also communicate with one or more external devices (not shown) via communication unit 840 as needed. These external devices include storage devices, display devices, etc., and can communicate with one or more devices that enable user interaction with electronic device 800, or with any device that enables electronic device 800 to communicate with one or more other electronic devices (e.g., network card, modem, etc.). Such communication can be performed via input / output (I / O) interface (not shown).
[0111] According to an exemplary implementation of this disclosure, a computer-readable storage medium is provided that stores computer-executable instructions thereon, wherein the computer-executable instructions are executed by a processor to implement the methods described above. According to an exemplary implementation of this disclosure, a computer program product is also provided, which is tangibly stored on a non-transitory computer-readable medium and includes computer-executable instructions, which are executed by a processor to implement the methods described above.
[0112] Various aspects of this disclosure are described herein with reference to flowchart illustrations and / or block diagrams of methods, apparatuses, devices, and computer program products implemented according to this disclosure. It should be understood that each block of the flowchart illustrations and / or block diagrams, and combinations of blocks in the flowchart illustrations and / or block diagrams, can be implemented by computer-readable program instructions.
[0113] These computer-readable program instructions can be provided to a processing unit of a general-purpose computer, a special-purpose computer, or other programmable data processing apparatus to produce a machine such that, when executed by the processing unit of the computer or other programmable data processing apparatus, they create means for implementing the functions / actions specified in one or more blocks of the flowchart and / or block diagram. These computer-readable program instructions can also be stored in a computer-readable storage medium that causes a computer, programmable data processing apparatus, and / or other device to operate in a particular manner. Thus, the computer-readable medium storing the instructions comprises an article of manufacture that includes instructions for implementing aspects of the functions / actions specified in one or more blocks of the flowchart and / or block diagram.
[0114] Computer-readable program instructions can be loaded onto a computer, other programmable data processing apparatus, or other device to cause a series of operational steps to be performed on the computer, other programmable data processing apparatus, or other device to produce a computer-implemented process, thereby causing the instructions that execute on the computer, other programmable data processing apparatus, or other device to perform the functions / actions specified in one or more boxes of a flowchart and / or block diagram.
[0115] The flowcharts and block diagrams in the accompanying drawings illustrate the architecture, functionality, and operation of possible implementations of systems, methods, and computer program products according to various embodiments of this disclosure. In this regard, each block in a flowchart or block diagram may represent a module, segment, or portion of an instruction, which contains one or more executable instructions for implementing the specified logical function. In some alternative implementations, the functions indicated in the blocks may occur in a different order than those indicated in the drawings. For example, two consecutive blocks may actually be executed substantially in parallel, and they may sometimes be executed in reverse order, depending on the functions involved. It should also be noted that each block in the block diagrams and / or flowcharts, and combinations of blocks in the block diagrams and / or flowcharts, may be implemented using a dedicated hardware-based system that performs the specified function or action, or using a combination of dedicated hardware and computer instructions.
[0116] Various implementations of this disclosure have been described above. These descriptions are exemplary and not exhaustive, nor are they limited to the disclosed implementations. Many modifications and variations will be apparent to those skilled in the art without departing from the scope and spirit of the described implementations. The terminology used herein is chosen to best explain the principles, practical applications, or improvements to technology in the market, or to enable others skilled in the art to understand the various implementations disclosed herein.
Claims
1. An anomaly detection method, comprising: A set of curves is determined based on a dataset related to wafer production, wherein the curves in the set represent the sensor outputs of the equipment during the steps of producing the wafer; Each curve in the set of curves is classified to determine the curve category to which each curve belongs, and multiple curve categories correspond to multiple anomaly detection strategies. For each curve in the set of curves, an anomaly detection strategy corresponding to the curve category to which the curve belongs is used to determine whether the curve is an abnormal curve. The abnormal curve indicates that there is an anomaly in the step. The plurality of curve categories include at least one of flat curve category, ordinary curve category, or similar curve category, and the plurality of anomaly detection strategies include at least a first anomaly detection strategy corresponding to the ordinary curve category, a second anomaly detection strategy corresponding to the flat curve category, or a third anomaly detection strategy corresponding to the similar curve category.
2. The method according to claim 1, wherein the curves in the set of curves include a first curve, the first curve belonging to the category of normal curves, and determining whether the first curve is an abnormal curve includes: Using at least one machine learning model indicated by the first anomaly detection strategy, the first curve is used to detect whether it is an anomaly curve.
3. The method of claim 2, wherein the at least one machine learning model comprises a classification model and a reconstruction model, and performing detection on the first curve to determine whether it is an anomalous curve comprises: Based on the first curve, the classification model is used to obtain an initial label for the first curve, the initial label indicating whether the first curve is an abnormal curve; as well as Based on the initial label and the first curve, the reconstruction model is used to generate a detection result on whether the first curve is an abnormal curve. The reconstruction model is trained based on the normal curve samples output by the classification model.
4. The method of claim 3, wherein the detection result indicates that the first curve is an abnormal curve, and the detection result further indicates that there is an abnormal sub-step in the step represented by the first curve.
5. The method of claim 3, wherein the classification model is trained in the following manner: Obtain multiple curve samples belonging to the aforementioned ordinary curve category; Based on the multiple curve samples, a reference model is used to obtain multiple curve samples with labeled samples. The reference model is configured to detect abnormal curve samples among the multiple curve samples. The labeled samples are used to identify whether each curve sample among the multiple curve samples is an abnormal curve sample. Based on the plurality of curve samples containing the aforementioned label samples, a plurality of enhanced curve samples are obtained; and The classification model is trained based on the multiple augmentation curve samples.
6. The method of claim 5, wherein obtaining a plurality of enhancement curve samples comprises: Based on the multiple curve samples with the labeled samples and expert knowledge, obtain multiple updated curve samples; as well as Based on the updated multiple curve samples, the enhanced curve samples are obtained using an augmentation strategy.
7. The method of claim 3, wherein the reconstruction model is trained in the following manner: Based on at least one curve sample belonging to the normal curve category, using the trained classification model, curve samples with target labels are obtained from the at least one curve sample, the target labels indicating that the curve sample is a normal curve sample; and The reconstruction model is trained using curve samples with the target label.
8. The method of claim 7, wherein training the reconstruction model comprises: Based on the curve samples with the target labels, the reconstructed curve samples are obtained using the reconstruction model; as well as The reconstruction model is trained based on the difference between the curve samples with the target label and the reconstructed curve samples.
9. The method of claim 1, wherein the curves in the set of curves include a second curve, the second curve belonging to the flat curve category, and determining whether the second curve is an abnormal curve includes: Based on the predetermined conditions indicated by the second anomaly detection strategy, the second curve is tested to determine whether it is an anomaly curve, wherein the flat curve category indicates that the change in the curve over time is less than a predetermined range.
10. The method of claim 9, wherein performing a detection on whether the second curve is an abnormal curve includes: Determine whether the curve value of the second curve meets the predetermined conditions; In response to the curve value not meeting the predetermined condition, the second curve is determined to be an abnormal curve; as well as In response to the curve value satisfying the predetermined condition, the second curve is determined to be a normal curve.
11. The method of claim 1, wherein the curves in the set of curves include a third curve, the third curve belonging to the similar curve category, and determining whether the third curve is an abnormal curve includes: In response to the fact that the third curve and at least one of the curves in the set belong to the similar curve category, Based on the distance threshold indicated by the third anomaly detection strategy, the third curve is tested to determine whether it is an anomaly curve, wherein the similar curve category indicates that at least two curves have similar curve features.
12. The method of claim 11, wherein performing a detection on whether the third curve is an abnormal curve comprises: A standard curve is generated based on the numerical data of the third curve and the at least one curve. Determine the distance between the third curve and the standard curve; In response to the determined distance being greater than the distance threshold, the third curve is identified as an abnormal curve; as well as In response to the determined distance being less than the distance threshold, the third curve is determined to be a normal curve.
13. The method of claim 1, wherein the individual curves in the set of curves are classified in the following manner: Based on the data representing the set of curves, a data object with a predetermined structure is generated, wherein the data in the data object is organized according to time and numerical dimensions; and For the curve in the set of curves, From the data object, determine the data of the curve in at least one of the time dimension and the numerical dimension; and Based on the data of the curve in at least one dimension, the curve category to which each curve belongs is determined.
14. The method of claim 13, wherein determining the curve category to which each curve belongs comprises: For the curve in the set of curves, Based on the data of the curve in the time dimension, determine whether the degree of fluctuation of the curve in time is within a first predetermined range; as well as In response to the fact that the degree of fluctuation of the curve over time is within the first predetermined range, the curve is determined to be a flat curve category among the plurality of curve categories, the flat curve category indicating that the change of the curve over time is less than a predetermined range.
15. The method of claim 13, wherein determining the curve category to which the curve belongs from the plurality of curve categories comprises: For at least two curves in the set of curves, Based on the data of the at least two curves in the numerical dimension, determine whether the degree of fluctuation of the difference between the at least two curves is within a second predetermined range; as well as In response to the degree of fluctuation of the difference being within the second predetermined range, the at least two curves are identified as similar curve categories among the plurality of curve categories, the similar curve category indicating that the at least two curves have similar curve characteristics.
16. An electronic device comprising: At least one processor; as well as At least one memory coupled to the at least one processor and storing instructions for execution by the at least one processor, the instructions causing the electronic device to perform the method according to any one of claims 1 to 15 when executed by the at least one processor.
17. A computer-readable storage medium having stored thereon computer-executable instructions that can be executed by a processor to implement the method according to any one of claims 1 to 15.