Method and system for yield prediction based on harris hawk optimization optimized random forest
By optimizing the random forest model using the Harris Eagle algorithm, the problem of low accuracy in wafer acceptance test data processing was solved, achieving more efficient wafer yield prediction, reducing costs and improving accuracy.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- ZHEJIANG UNIV
- Filing Date
- 2023-06-25
- Publication Date
- 2026-05-12
AI Technical Summary
Existing wafer acceptance test data processing methods are not very accurate and have a small data processing volume, making it difficult to effectively utilize wafer acceptance test data to improve process parameters.
The Harris Eagle algorithm is used to optimize the random forest model. By preprocessing data and iteratively optimizing key framework parameters, a wafer yield prediction model is constructed, including outlier detection, missing value handling, and data normalization. The Harris Eagle algorithm is used to optimize the key framework parameters of the random forest algorithm to construct and train the wafer yield prediction model.
It improves the accuracy of wafer yield prediction, reduces the human and material costs of prediction results, and enhances the effectiveness and accuracy of data processing.
Smart Images

Figure CN116756662B_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of big data algorithm technology, and in particular to a yield prediction method and system based on the Harris Eagle algorithm for optimizing random forests. Background Technology
[0002] In integrated circuit manufacturing, process parameters are key factors affecting chip performance. Abnormalities in process parameters can lead to performance degradation and yield loss. To fully understand and monitor the impact of manufacturing process parameters, extensive testing is often conducted during wafer fabrication. This allows for effective control and improvement of process parameters, thereby increasing wafer yield and reducing chip costs.
[0003] Wafer acceptance testing (WAT), also known as electrical testing (E-Test), is an important wafer testing method. It primarily involves creating specific test patterns within the scribe lines on the wafer to measure the electrical parameters of the chips. The collected wafer electrical characteristic data indirectly reflects process parameters. Analyzing wafer acceptance test data allows for targeted improvements to undesirable process parameters in IC manufacturing. While wafer acceptance testing is a mainstream testing method in current technology, effectively processing and utilizing this data remains a challenge. Furthermore, existing algorithms suffer from low accuracy and limited data processing capacity, issues that urgently need to be addressed. Summary of the Invention
[0004] This invention addresses the shortcomings of existing technologies by providing a yield prediction method and system based on the Harris Eagle algorithm for optimizing random forests.
[0005] To solve the above-mentioned technical problems, the present invention provides the following technical solution:
[0006] A yield prediction method for random forests based on the Harris Eagle algorithm includes the following steps:
[0007] Obtain historical wafer acceptance test dataset;
[0008] Preprocess the acceptance test data in the historical wafer acceptance test dataset to obtain the acceptance test sample set;
[0009] By iteratively optimizing the key framework parameters of the random forest model using the Harris Eagle algorithm and modifying the random forest model based on the key framework parameters, a pre-trained model for wafer yield prediction is constructed.
[0010] The wafer yield test pre-training model is trained based on the acceptance test sample set to obtain the wafer yield prediction model.
[0011] Input the acceptance test data to be tested into the wafer yield prediction model to obtain the prediction results.
[0012] As one possible implementation, the preprocessing includes at least one or more of outlier detection and processing, missing value processing, and data normalization processing.
[0013] As one possible implementation, the missing value processing includes missing value deletion or missing value filling;
[0014] The missing value filling includes:
[0015] Missing values can be filled using the mean, mode, and median, or a predictive model can be built to fill in missing values.
[0016] As one possible implementation, the data normalization process includes standard normalization or maximum / minimum value normalization.
[0017] As one possible implementation, the method of iteratively optimizing the key framework parameters of the random forest model using the Harris Eagle algorithm and modifying the random forest model based on the key framework parameters includes the following steps:
[0018] The parameters of the Harris Eagle algorithm are preset, including population size, maximum number of iterations, and the range and dimensions of change in the eagle flock and prey location;
[0019] Set key framework parameters for iteratively optimizing the random forest algorithm using the Harris Eagle algorithm. The key framework parameters include at least the maximum number of weak learners, the maximum depth of the decision tree parameters, the maximum number of features, the minimum number of samples required for internal node repartitioning, and the minimum number of samples required for leaf nodes.
[0020] The positions of the eagle flock and the prey in the Harris Eagle algorithm are initialized separately. The classification error of the random forest algorithm is selected as the fitness function. In each iteration, different position update strategies are selected to update the position vector based on whether the prey is found, the energy state of the prey, and the size of the fitness function. When the number of iterations reaches the preset maximum number of iterations, the optimization is completed. The position vector after the iteration is the optimized key frame parameters.
[0021] In this context, the positions of both the eagle flock and the prey are represented as position vectors of size 1*dim, where dim represents the dimension. The size of the dimension represents the number of parameters to be optimized. The position vectors are updated in each iteration, and these position vectors are constructed using the key framework parameters. The position vectors are represented as follows:
[0022] X rb (t)=[X[0],X[1],X[2],X[3],X[4]]
[0023] Among them, Xrb (t) represents the position vector at the t-th iteration, t represents the t-th iteration, X[0] represents the maximum number of weak learners, X[1] represents the maximum depth in the decision tree parameters, X[2] represents the maximum number of features, X[3] represents the minimum number of samples required for the internal nodes to be further divided, and X[4] represents the minimum number of samples required for the leaf nodes.
[0024] As one possible implementation, the fitness function is expressed as follows:
[0025] F = 1 - auc score
[0026] Here, AUC score represents the evaluation metric.
[0027] As one possible implementation method, the Harris Eagle algorithm includes the following steps:
[0028] Before engaging in a chase, determine the prey's escape energy using the following formula:
[0029]
[0030] Where E represents the escape energy of the prey, t represents the t-th iteration, T represents the maximum number of iterations set, and E0 represents a random number between (-1, 1);
[0031] When the prey's escape energy |E|≥1, it is considered that the prey's escape energy is high and it is in the exploration stage. At this time, the Harris Eagle algorithm considers the prey to have sufficient strength and the eagle flock flies over a large area to search for the prey. A random number q is generated for the two cases of finding the prey and not finding the prey. Based on the size of q, different strategies are selected to update the position X(t+1) of the next iteration.
[0032] When q≥0.5, no individual eagle in the flock has located the prey. The individual eagle's position is updated by randomly selecting the flight position of any individual eagle in the flock according to the following formula:
[0033] X(t+1)=X rd (t)-r1|X rd (t)-2r2X(t)|
[0034] Among them, X rd (t) represents the position of a randomly selected eagle from the flock in the t-th iteration, where r1 and r2 are random numbers between (0,1);
[0035] When q < 0.5, the flock of eagles spots prey, and individuals in the flock circle around it and update their positions. The position update is calculated using the following formula:
[0036] X(t+1)=(X rb (t)-X m(t))-r3[L b +r4(U b -L b )]
[0037] Among them, X rb (t) represents the position of the prey individual at the t-th iteration, X m (t) represents the average position of the eagle population in the t-th iteration; r3 and r4 represent random numbers in (0,1); L b and U b Let X represent the upper and lower bounds of the position, respectively, where X... m (t) is calculated according to the following formula:
[0038]
[0039] Where N represents the population size, X i (t) represents the position of the population at the t-th iteration;
[0040] When the prey's escape energy |E| < 1, it enters the transition phase from exploration to exploitation. The Harris Eagle algorithm shifts from the exploration phase to the exploitation phase based on the size of the prey's escape energy and will choose different strategies to launch a surprise attack.
[0041] When the development phase begins, the flock of eagles has four different strategies to ambush their prey. Let R be the probability that the prey successfully escapes.
[0042] When |E|≥0.5 and R≥0.5, the eagle flock launches a soft encirclement attack on the prey, and the position update is calculated according to the following formula:
[0043] X(t+1)=X rb (t)-X(t)-E|JX rb (t)-X(t)|
[0044] Among them, X rb X(t) represents the position of the prey individual at iteration t, X(t) represents the position of the individual in the eagle flock at iteration t, and J represents the intensity of the prey's random jump, which is calculated according to the following formula:
[0045] J = 2(1-r5)
[0046] Where r5 is a random number between (0,1);
[0047] When |E| < 0.5 and R ≥ 0.5, the eagle flock launches a hard attack, and the position update is calculated according to the following formula:
[0048] X(t+1)=X rb (t)-E|X rb (t)-X(t)|
[0049] Among them, X rb X(t) represents the position of the prey individual at the t-th iteration, and X(t) represents the position of the individual in the eagle flock at the t-th iteration;
[0050] When |E|≥0.5 and R<0.5, the eagle flock launches a gradual, soft-attack dive, and the position update is calculated according to the following formula:
[0051] Y = X rb (t)-E|JX rb (t)-X(t)|
[0052] Z = Y + S × LF(D)
[0053]
[0054] Among them, X rb X(t) represents the position of an individual prey at the t-th iteration, X(t) represents the position of an individual in the eagle flock at the t-th iteration, J represents the random jump intensity of the prey, F represents the fitness function, S represents a 1*D dimensional random vector, and LF(D) represents the Levy function.
[0055] When |E| < 0.5 and R < 0.5, the eagle flock launches a gradual dive-and-attack maneuver, and the position update is calculated according to the following formula:
[0056] Y = X rb (t)-E|JX rb (t)-X m (t)|
[0057] Z = Y + S × LF(D)
[0058]
[0059] Among them, X rb (t) represents the position of the prey individual at the t-th iteration, X m (t) represents the average position of the population in the eagle flock at the t-th iteration, J represents the random jump intensity of the prey, F represents the fitness function, S represents a 1*D dimensional random vector, and LF(D) represents the Levy function.
[0060] As one possible implementation, training a pre-trained model for wafer yield testing based on an acceptance test sample set includes the following steps:
[0061] The acceptance test sample set is divided into a training dataset, a test dataset, and a validation dataset;
[0062] The pre-trained model for wafer yield testing is trained based on the training dataset, and the wafer yield prediction model after each training is evaluated based on the validation dataset to finally obtain the wafer yield prediction model.
[0063] The wafer yield prediction model is tested based on the test dataset, and the wafer yield prediction results for the samples in the test dataset are output.
[0064] A yield prediction system based on Harris Eagle algorithm for optimizing random forest includes a data processing module, a model training module, and a prediction and evaluation module.
[0065] The data processing module is used to acquire historical wafer acceptance test datasets; preprocess the acceptance test data in the historical wafer acceptance test datasets to obtain acceptance test sample sets;
[0066] The model training module is used to iteratively optimize the key framework parameters of the random forest model using the Harris Eagle algorithm and modify the random forest model based on the key framework parameters to construct a pre-trained model for wafer yield prediction; and to train the pre-trained model for wafer yield testing based on the acceptance test sample set to obtain the wafer yield prediction model.
[0067] The prediction and evaluation module is used to input the acceptance test data to be tested into the wafer yield prediction model to obtain the prediction results.
[0068] A yield prediction device based on Harris Eagle algorithm for optimizing random forest includes a memory, a processor, and a computer program stored in the memory and executable on the processor. When the processor executes the computer program, it implements the method described above.
[0069] A computer-readable storage medium storing computer instructions, the computer-readable storage medium storing instructions for performing any of the above methods.
[0070] This invention, by adopting the above technical solutions, has significant technical effects:
[0071] By optimizing the random forest model using the Harris Eagle algorithm, a wafer yield prediction model is obtained. Based on this model, the yield of the wafer is predicted, reducing the manpower and material costs required to obtain the prediction results. At the same time, the model also has higher prediction accuracy. Attached Figure Description
[0072] Figure 1 This is a flowchart illustrating a method for predicting the yield of a random forest based on the Harris Eagle algorithm, as described in this invention.
[0073] Figure 2This is a flowchart illustrating the process of optimizing key framework parameters of a random forest based on the Harris Eagle algorithm according to the present invention.
[0074] Figure 3 This is a schematic diagram of the structure of a yield prediction system based on the Harris Eagle algorithm for optimizing random forests according to the present invention. Detailed Implementation
[0075] The technical solutions of the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of the present invention, and not all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of the present invention.
[0076] Example 1:
[0077] A yield prediction method for random forests based on the Harris Eagle algorithm is shown in the attached figure. Figure 1 As shown, it includes the following steps:
[0078] S100, Obtain historical wafer acceptance test dataset;
[0079] S200. Preprocess the acceptance test data in the historical wafer acceptance test dataset to obtain the acceptance test sample set.
[0080] S300: The key framework parameters of the random forest model are iteratively optimized using the Harris Eagle algorithm, and the random forest model is modified based on the key framework parameters to construct a pre-trained model for wafer yield prediction.
[0081] S400. The wafer yield test pre-training model is trained based on the acceptance test sample set to obtain the wafer yield prediction model.
[0082] S500: Input the acceptance test data to be tested into the wafer yield prediction model to obtain the prediction results.
[0083] The method of the present invention may involve using the Harris Eagle algorithm written in Python to optimize the random forest model, thereby obtaining a wafer yield prediction model. Based on the wafer yield prediction model, the yield of the wafer is predicted. The ultimate goal is to reduce the human and material costs required to obtain prediction data and improve the prediction accuracy.
[0084] In step S100, the historical wafer acceptance test dataset is obtained, including the following steps:
[0085] The electrical parameters of the chips in the wafer are tested using the wafer acceptance test method to obtain a wafer process parameter dataset.
[0086] Extract the attribute items from the wafer process parameter dataset to obtain the wafer acceptance test dataset, wherein the attribute items include wafer number, drain-source current I. DS Substrate current I SUB One or more of the following: threshold voltage VT, contact resistance Re, and wafer yield.
[0087] In this embodiment, a wafer acceptance test dataset can be obtained using a wafer acceptance test method. Wafer acceptance testing, also known as electrical testing, is an important IC wafer testing method. It primarily involves creating special test keys in the scribe lines of the wafer to test the electrical parameters of the chips on the wafer. The collected wafer electrical characteristic parameter data can indirectly reflect the process parameters during manufacturing, resulting in a wafer process parameter dataset. Attribute items are extracted from this dataset, including the wafer number, drain-source current I0, etc. DS Substrate current I SUB Threshold voltage VT, contact resistance R e The wafer acceptance test dataset includes attribute items.
[0088] In one embodiment, preprocessing includes at least one or more of outlier detection and handling, missing value handling, and data normalization.
[0089] Missing value handling includes missing value deletion or missing value filling; missing value filling includes:
[0090] Missing values can be filled using the mean, mode, and median, or a predictive model can be built to fill in missing values.
[0091] Outliers in the wafer acceptance test dataset may be caused by factors such as measurement error, sampling error, and data processing error. Optionally, the box plot method can be used to detect outliers in the wafer acceptance test dataset. Values less than QL-1.5IQR or greater than QU+1.5IQR are considered outliers. Here, QL is called the lower quartile, indicating that one-quarter of the data in the entire sample is smaller than it; QU is called the upper quartile, indicating that one-quarter of the data in the entire sample is larger than it; and IQR is called the interquartile range, which is the difference between QU and QL and includes half of the entire sample data. The box plot method provides relatively objective results in identifying outliers and has certain advantages in this regard. Alternatively, the 3 sigma principle method can be used. The 3 sigma principle method is more suitable for data that follows a normal distribution. Under the assumption of normal distribution, the probability of a value x that is three times the standard deviation 3σ away from the mean μ is P(|x-μ|>3σ)≤0.003, which is an extremely rare low-probability event. Therefore, if the deviation of the measured value from the mean in a set of data exceeds three times the standard deviation, it will be regarded as an outlier.
[0092] In addition, the missing values of the null values and wafer acceptance test dataset are processed to obtain a standard dataset. The method for processing the null values and wafer acceptance test dataset may optionally include deleting null values and missing values, filling null values and missing values with the mean, mode, and median, or filling null values and missing values by predicting missing data using mathematical modeling.
[0093] Data normalization includes standard normalization or maximum-minimum normalization. Since outliers have already been detected and processed in the wafer acceptance test dataset before normalization, eliminating the influence of outliers on the maximum-minimum normalization result and obtaining a standard dataset, the maximum-minimum normalization method can be used on the standard dataset to scale all data to the range (0,1), as implemented by the following mathematical formula:
[0094]
[0095] Where x represents the data in the standard dataset, Max and Min represent the maximum and minimum values of the data in the standard dataset, respectively, and x' represents the data after the maximum and minimum values have been normalized.
[0096] In step S300, the key frame parameters of the random forest model are iteratively optimized using the Harris Eagle algorithm, and the random forest model is modified based on the key frame parameters, including the following steps:
[0097] The parameters of the Harris Eagle algorithm are preset, including population size, maximum number of iterations, and the range and dimensions of change in the eagle flock and prey location;
[0098] Set the key framework parameters for iteratively optimizing the random forest algorithm using the Harris Eagle algorithm. The key framework parameters should include at least the maximum number of weak learners, the maximum depth of the decision tree, the maximum number of features, the minimum number of samples required for internal node re-partitioning, and the minimum number of samples required for leaf nodes.
[0099] The positions of the eagle flock and the prey in the Harris Eagle algorithm are initialized separately. The classification error of the random forest algorithm is selected as the fitness function. In each iteration, different position update strategies are selected to update the position vector based on whether the prey is found, the energy state of the prey, and the size of the fitness function. When the number of iterations reaches the preset maximum number of iterations, the optimization is completed. The position vector after the iteration is the optimized key frame parameters.
[0100] In this context, the positions of both the eagle flock and the prey are represented as position vectors of size 1*dim, where dim represents the dimension. The size of the dimension indicates the number of parameters to be optimized. The position vector is updated in each iteration and is constructed using key framework parameters. The position vector is represented as follows:
[0101] X rb (t)=[X[0],X[1],X[2],X[3],X[4]]
[0102] Among them, X rb (t) represents the position vector at the t-th iteration, t represents the t-th iteration, X[0] represents the maximum number of weak learners, X[1] represents the maximum depth in the decision tree parameters, X[2] represents the maximum number of features, X[3] represents the minimum number of samples required for the internal nodes to be further divided, and X[4] represents the minimum number of samples required for the leaf nodes.
[0103] See appendix Figure 2 As shown, attached Figure 2 This embodiment provides a flowchart illustrating the key framework parameters for optimizing random forests based on the Harris Eagle algorithm. The parameters of the Harris Eagle algorithm are preset, specifically including the population size, the maximum number of iterations, and the lower and upper bounds of the position vectors of individuals in the flock and prey individuals [L]. b U b The system includes a dimension dim, a preset fitness function, and initializes the positions of individuals and prey in the eagle flock. The iteration is divided into different stages based on whether prey is found and the difference in the prey's escape energy. The optimal position is taken as the latest prey position based on the comparison of the fitness of individuals and prey in the eagle flock after the iteration. The iteration stops when the maximum number of iterations is reached, and the prey's position vector is output. The position vector is the key frame parameter.
[0104] The fitness function in the embodiment is expressed as follows:
[0105] F = 1 - auc_score
[0106] Where auc_score represents the area of the image bounded by the ROC curve obtained based on the AUC evaluation metric and the x-axis and y-axis.
[0107] In addition, the Harris Eagle algorithm can be divided into three phases: the exploration phase, the transition phase from exploration to development, and the development phase.
[0108] Before engaging in a chase, determine the prey's escape energy using the following formula:
[0109]
[0110] Where E represents the escape energy of the prey, t represents the t-th iteration, T represents the maximum number of iterations set, and E0 represents a random number between (-1, 1);
[0111] When the prey's escape energy |E|≥1, it is considered that the prey's escape energy is high and it is in the exploration stage. At this time, the Harris Eagle algorithm considers the prey to have sufficient strength and the eagle flock flies over a large area to search for the prey. A random number q is generated for the two cases of finding the prey and not finding the prey. Based on the size of q, different strategies are selected to update the position X(t+1) of the next iteration.
[0112] When q≥0.5, no individual eagle in the flock has located the prey. The individual eagle's position is updated by randomly selecting the flight position of any individual eagle in the flock according to the following formula:
[0113] X(t+1)=X rd (t)-r1|X rd (t)-2r2X(t)|
[0114] Among them, X rd (t) represents the position of a randomly selected eagle from the flock in the t-th iteration, where r1 and r2 are random numbers between (0,1);
[0115] When q < 0.5, the flock of eagles spots prey, and individuals in the flock circle around it and update their positions. The position update is calculated using the following formula:
[0116] X(t+1)=(X rb (t)-X m (t))-r3[L b +r4(U b -L b )]
[0117] Among them, X rb (t) represents the position of the prey individual at the t-th iteration, X m(t) represents the average position of the eagle population in the t-th iteration; r3 and r4 represent random numbers in (0,1); L b and U b Let X represent the upper and lower bounds of the position, respectively, where X... m (t) is calculated according to the following formula:
[0118]
[0119] Where N represents the population size, X i (t) represents the position of the population at the t-th iteration;
[0120] When the prey's escape energy |E| < 1, it enters the transition phase from exploration to exploitation. The Harris Eagle algorithm shifts from the exploration phase to the exploitation phase based on the size of the prey's escape energy and will choose different strategies to launch a surprise attack.
[0121] When the development phase begins, the flock of eagles has four different strategies to ambush their prey. Let R be the probability that the prey successfully escapes.
[0122] When |E|≥0.5 and R≥0.5, the eagle flock launches a soft encirclement attack on the prey, and the position update is calculated according to the following formula:
[0123] X(t+1)=X rb (t)-X(t)-E|JX rb (t)-X(t)|
[0124] Among them, X rb X(t) represents the position of the prey individual at iteration t, X(t) represents the position of the individual in the eagle flock at iteration t, and J represents the intensity of the prey's random jump, which is calculated according to the following formula:
[0125] J = 2(1-r5)
[0126] Where r5 is a random number between (0,1);
[0127] When |E| < 0.5 and R ≥ 0.5, the eagle flock launches a hard attack, and the position update is calculated according to the following formula:
[0128] X(t+1)=X rb (t)-E|X rb (t)-X(t)|
[0129] Among them, X rb X(t) represents the position of the prey individual at the t-th iteration, and X(t) represents the position of the individual in the eagle flock at the t-th iteration;
[0130] When |E|≥0.5 and R<0.5, the eagle flock launches a gradual, soft-attack dive, and the position update is calculated according to the following formula:
[0131] Y = X rb (t)-E|JX rb (t)-X(t)|
[0132] Z = Y + S × LF(D)
[0133]
[0134] Among them, X rb X(t) represents the position of an individual prey at the t-th iteration, X(t) represents the position of an individual in the eagle flock at the t-th iteration, J represents the random jump intensity of the prey, F represents the fitness function, S represents a 1*D dimensional random vector, and LF(D) represents the Levy function.
[0135] When |E| < 0.5 and R < 0.5, the eagle flock launches a gradual dive-and-attack maneuver, and the position update is calculated according to the following formula:
[0136] Y = X rb (t)-E|JX rb (t)-X m (t)|
[0137] Z = Y + S × LF(D)
[0138]
[0139] Among them, X rb (t) represents the position of the prey individual at the t-th iteration, X m (t) represents the average position of the population in the eagle flock at the t-th iteration, J represents the random jump intensity of the prey, F represents the fitness function, S represents a 1*D dimensional random vector, and LF(D) represents the Levy function.
[0140] For example, the parameters of the Harris Eagle algorithm are set as follows: population size equals 100, maximum number of iterations t equals 100, and lower and upper bounds of the position vectors of individuals in the eagle flock and prey individuals [L]. b U b The values are 2 and 500 respectively, and the dimension dim is 5. Then, the fitness function F of the Harris Eagle algorithm is chosen to minimize the classification error (1-auc_score). The prey's position vector X is... rb(t) = [X[0],X[1],X[2],X[3],X[4]] is used as the optimal parameter value for each update. The update of the prey position vector in each iteration also represents the update of the key frame parameters of the random forest model. When the iteration reaches the maximum number of iterations set, the iteration stops. At this time, the output prey position is a 1*5 dimensional vector, and each vector element corresponds to a parameter item, that is, the values of the five optimal key frame parameters are output.
[0141] Furthermore, in the key framework parameters of the random forest model, the Gini index is used to select the optimal splitting feature for each node split within the decision tree. For a random variable X with K splitting features and each feature having a probability of p1, p2, ..., pk in the dataset, the Gini index is a concept similar to entropy. The formula for calculating the Gini coefficient is as follows:
[0142]
[0143] Where X represents a random variable, K represents the number of splitting features in the dataset, and P k This represents the probability of each feature appearing in the dataset;
[0144] If the probability that a random variable X belongs to the first splitting feature is p, and there are a total of 2 splitting features, then the Gini index is:
[0145] Gini(p) = 2p(1-p)
[0146] For a sample set D in the pre-training dataset, there are K splitting features, which divide it into K sample subsets. The Gini coefficient of sample set D is calculated according to the following formula:
[0147]
[0148] Where D represents the set of samples in the pre-training dataset, K represents the number of classification features in the set of samples, and C k Represents a subset of samples from class K, |C k |For C k The size of D, |D| is the size of D;
[0149] Let A be the splitting feature used in a single decision tree. Then, select a possible value 'a' to split the sample set D into two parts, D1 and D2.
[0150] D1 = {D|A = a}
[0151] D2={D|A≠a}
[0152] When the splitting characteristic of the sample set D is A, the Gini index is calculated according to the following formula:
[0153]
[0154] Where Gini(D,A) represents the Gini coefficient of sample set D when the splitting feature is A, D represents the sample set of the pre-training dataset, Gini(D1) represents the Gini coefficient of sample set D1, Gini(D2) represents the Gini coefficient of sample set D2, |D1| is the size of D1, and |D2| is the size of D2.
[0155] The larger the value of Gini(D,A), the greater the uncertainty. Therefore, when selecting the optimal splitting feature, the splitting feature with the smaller Gini coefficient should be selected as the optimal splitting feature.
[0156] A random forest model is obtained by fusing multiple decision trees. The optimal splitting feature is assigned to each decision tree. Based on the data processing results of the decision trees, the splitting features are classified by voting. The splitting feature with the most votes is used as the final splitting feature in the decision trees of the random forest model, calculated according to the following formula:
[0157]
[0158] Where H(x) represents the final output result, h i (x) represents each decision tree, I represents the indicator function, and Y represents the output variable. Random forest has advantages such as high parallelism and strong generalization ability, and is suitable for processing large sample and high-dimensional data. However, it is necessary to choose appropriate parameters to build the model, otherwise it is easy to fall into overfitting.
[0159] In step S400, the pre-trained model for wafer yield testing is trained based on the acceptance test sample set, including the following steps:
[0160] The acceptance test sample set is divided into a training dataset, a test dataset, and a validation dataset;
[0161] The pre-trained model for wafer yield testing is trained based on the training dataset, and the wafer yield prediction model after each training is evaluated based on the validation dataset to finally obtain the wafer yield prediction model.
[0162] The wafer yield prediction model is tested based on the test dataset, and the wafer yield prediction results for the samples in the test dataset are output.
[0163] In this embodiment, the pre-training dataset is divided into a training dataset, a test dataset, and a validation dataset in a 7:2:1 ratio. This ensures that there are no duplicates among the three subsets, which helps improve the rationality of the decision tree construction. The attribute labeling and partitioning operations for the data in the pre-training dataset are shown in Figure 1.
[0164] Table 1
[0165]
[0166] For example, wafers with a chip yield greater than 50% are considered positive, and wafers with a chip yield less than 50% are considered negative. A validation set is then added to observe the training effect, resulting in a wafer yield prediction model. Finally, the model is tested using sample data from the test set, and the AUC (Average Acceptance Rate) metric is used to evaluate its generalization ability.
[0167] In step S500, the acceptance test data to be tested is input into the wafer yield prediction model to obtain the prediction result:
[0168] In this embodiment, the generalization ability of the model can be evaluated based on the AUC evaluation index. Wafers with a chip yield greater than 50% are considered as positive, and wafers with a chip yield less than 50% are considered as negative. If the acceptance test data belongs to the yield of the evaluation, the prediction result is positive, and if the acceptance test data belongs to the yield of the evaluation, the prediction result is negative.
[0169] As shown in Table 2, comparing the AUC of the wafer yield prediction model after obtaining the Harris algorithm-optimized parameters with the AUC of the random forest model without the Harris Eagle algorithm-optimized parameters, the results show that the AUC of the random forest model after obtaining the Harris Eagle algorithm-optimized parameters is 4.59% higher than that of the unoptimized random forest model. The random forest model after obtaining the Harris Eagle algorithm-optimized parameters has better generalization ability for dataset analysis and prediction.
[0170] Table 2
[0171]
[0172] In the table, RF represents the Random Forest model, and HHO-RF represents the wafer yield prediction model.
[0173] Example 2:
[0174] A yield prediction system based on Harris Eagle algorithm for optimizing random forests, as shown in the attached figure. Figure 3 As shown, it includes a data processing module 100, a model training module 200, and a prediction and evaluation module 300:
[0175] The data processing module 100 is used to acquire historical wafer acceptance test datasets; preprocess the acceptance test data in the historical wafer acceptance test datasets to obtain acceptance test sample sets;
[0176] The model training module 200 iteratively optimizes the key framework parameters of the random forest model using the Harris Eagle algorithm and modifies the random forest model based on the key framework parameters to construct a pre-trained model for wafer yield prediction; the pre-trained model for wafer yield testing is trained based on the acceptance test sample set to obtain the wafer yield prediction model.
[0177] The prediction and evaluation module 300 is used to input the acceptance test data to be tested into the wafer yield prediction model to obtain the prediction results.
[0178] As the device embodiment is basically similar to the method embodiment, the description is relatively simple, and relevant parts can be found in the description of the method embodiment.
[0179] The various embodiments in this specification are described in a progressive manner, with each embodiment focusing on the differences from other embodiments. The same or similar parts between the various embodiments can be referred to each other.
[0180] Those skilled in the art will understand that embodiments of the present invention can be provided as methods, apparatus, or computer program products. Therefore, the present invention can take the form of a completely hardware embodiment, a completely software embodiment, or an embodiment combining software and hardware aspects. Furthermore, the present invention can take the form of a computer program product embodied on one or more computer-usable storage media (including, but not limited to, disk storage, CD-ROM, optical storage, etc.) containing computer-usable program code.
[0181] This invention is described with reference to flowchart illustrations and / or block diagrams of the method, terminal device (system), and computer program product according to the invention. It will 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 program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, special-purpose computer, embedded processor, or other programmable data processing terminal device to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing terminal device, generate instructions for implementing the flowchart illustrations and / or block diagrams. Figure 1 One or more processes and / or boxes Figure 1 A device that provides the functions specified in one or more boxes.
[0182] These computer program instructions may also be stored in a computer-readable storage medium that can direct a computer or other programmable data processing terminal device to operate in a particular manner, such that the instructions stored in the computer-readable storage medium produce an article of manufacture including instruction means, which are implemented in a process Figure 1 One or more processes and / or boxes Figure 1 The function specified in one or more boxes.
[0183] These computer program instructions can also be loaded onto a computer or other programmable data processing terminal equipment, causing a series of operational steps to be performed on the computer or other programmable terminal equipment to produce a computer-implemented process, thereby providing instructions that execute on the computer or other programmable terminal equipment for implementing the process. Figure 1 One or more processes and / or boxes Figure 1 The steps of the function specified in one or more boxes.
[0184] Furthermore, it should be noted that the shapes and names of the components in the specific embodiments described in this specification may differ. All equivalent or simple variations made to the structure, features, and principles described in this patent concept are included within the protection scope of this patent. Those skilled in the art to which this invention pertains may make various modifications or additions to the described specific embodiments or use similar methods to substitute them, as long as they do not depart from the structure of this invention or exceed the scope defined in these claims, they should all fall within the protection scope of this invention.
Claims
1. A yield prediction method for random forests based on the Harris Eagle algorithm, characterized in that, Includes the following steps: Obtain historical wafer acceptance test dataset; Preprocess the acceptance test data in the historical wafer acceptance test dataset to obtain the acceptance test sample set; By iteratively optimizing the key framework parameters of the random forest model using the Harris Eagle algorithm and modifying the random forest model based on the key framework parameters, a pre-trained model for wafer yield prediction is constructed. The wafer yield test pre-training model is trained based on the acceptance test sample set to obtain the wafer yield prediction model. Input the acceptance test data to be tested into the wafer yield prediction model to obtain the prediction results; The step of iteratively optimizing the key frame parameters of the random forest model using the Harris Eagle algorithm and modifying the random forest model based on the key frame parameters includes the following steps: The parameters of the Harris Eagle algorithm are preset, including population size, maximum number of iterations, and the range and dimensions of change in the location of the eagle flock and prey. Set key framework parameters for iteratively optimizing the random forest algorithm using the Harris Eagle algorithm. The key framework parameters include at least the maximum number of weak learners, the maximum depth of the decision tree parameters, the maximum number of features, the minimum number of samples required for internal node repartitioning, and the minimum number of samples required for leaf nodes. The positions of the eagle flock and the prey in the Harris Eagle algorithm are initialized separately. The classification error of the random forest algorithm is selected as the fitness function. In each iteration, different position update strategies are selected to update the position vector based on whether the prey is found, the energy state of the prey, and the size of the fitness function. When the number of iterations reaches the preset maximum number of iterations, the optimization is completed. The position vector after the iteration is the optimized key frame parameters. In this context, the positions of both the eagle flock and the prey are represented by a 1. A position vector of size 'dim', where 'dim' represents the dimension and the size of the dimension represents the number of parameters to be optimized. The position vector is updated in each iteration and is constructed using the key framework parameters. The position vector is represented as: in, X rb ( t ) indicates the first t The position vector at the next iteration. t Indicates the first t iteration X [0] represents the maximum number of weak learners. X [1] represents the maximum depth among the decision tree parameters. X [2] represents the largest eigenvalue. X [3] represents the minimum number of samples required for further partitioning of internal nodes. X [4] indicates the minimum number of samples required for a leaf node.
2. The yield prediction method for random forests based on the Harris Eagle algorithm according to claim 1, characterized in that, The preprocessing includes at least one or more of the following: outlier detection and processing, missing value processing, and data normalization processing.
3. The yield prediction method based on Harris Eagle algorithm for optimizing random forests according to claim 2, characterized in that, The missing value handling includes missing value deletion or missing value filling; The missing value filling includes: Missing values can be filled using the mean, mode, and median, or a predictive model can be built to fill in missing values.
4. The yield prediction method for random forests based on the Harris Eagle algorithm according to claim 1, characterized in that, The data normalization process includes standard normalization or maximum / minimum value normalization.
5. The yield prediction method for random forests based on the Harris Eagle algorithm according to claim 1, characterized in that, The fitness function is expressed as follows: F =1- aucscore in, aucscore Indicates the evaluation indicators.
6. The yield prediction method for random forests based on the Harris Eagle algorithm according to claim 1, characterized in that, The Harris Eagle algorithm includes the following steps: Before engaging in a chase, determine the prey's escape energy using the following formula: in, E This represents the escape energy of the prey. t Indicates the first t iteration T This indicates the maximum number of iterations set. E 0 represents a random number between (-1, 1); When the prey's escape energy| E When |≥1, the prey is considered to have high escape energy and is in the exploration phase. At this time, the Harris Eagle Algorithm considers the prey to have sufficient strength, and the eagle flock flies over a wide area to search for prey. A random number is generated for both the case of finding prey and not finding prey. q ,according to q Different strategies are used to update the position of the next iteration based on the size selection. X ( t +1); when q When the value is ≥0.5, no individual eagle in the flock has detected the location of the prey. The eagle's position is updated by randomly selecting the flight position of any individual eagle in the flock according to the following formula: in, X rd ( t ) indicates the first t In the next iteration, the position of an eagle randomly selected from the flock... r 1, r 2 is a random number between (0,1); when q When the value is less than 0.5, the flock of eagles spots prey. Individual eagles circle around the prey and update their positions. The position update is calculated using the following formula: in, X rb ( t ) indicates the first t The location of the prey individual in the next iteration. X m ( t () represents the average position of the population in the eagle flock at the t-th iteration; r 3, r 4 represents a random number in (0,1); Lb and Ub Let represent the upper and lower bounds of the position, respectively. X m ( t The following formula is used to calculate: in, N Indicates population size. Xi ( t ) indicates the first t The position of the population at the next iteration; When the prey's escape energy| E When | < 1, the process enters the transition phase from exploration to development. The Harris Eagle algorithm shifts from the exploration phase to the development phase based on the escape energy of the prey and will choose different strategies to launch a surprise attack. When entering the development phase, eagles employ four different strategies to ambush their prey. R It is the probability that the prey successfully escapes; When | E |≥0.5 and R When the value is ≥0.5, the flock of eagles launches a soft attack on the prey, and the position update is calculated according to the following formula: in, X rb ( t ) indicates the first t The location of the prey individual in the next iteration. X ( t ) indicates the first t The position of an individual eagle in the flock at the next iteration. J Indicates the intensity of the prey's random jump. J The following formula is used to calculate: in, r 5 is a random number between (0, 1); When | E | < 0.5 and R When the value is ≥0.5, the eagle flock launches a hard attack, and the position update is calculated according to the following formula: in, X rb ( t ) indicates the first t The location of the prey individual in the next iteration. X ( t ) indicates the first t The position of an individual eagle in the flock at the next iteration; When | E |≥0.5 and R When the value is less than 0.5, the eagle flock launches a gradual, soft-attack dive. The position update is calculated using the following formula: in, X rb ( t ) indicates the first t The location of the prey individual in the next iteration. X ( t ) indicates the first t The position of an individual eagle in the flock at the next iteration. J Indicates the intensity of the prey's random jump. F Represents the fitness function. S Indicates 1 D 3D random vector, LF(D) Represents the Levy function; When | E | < 0.5 and R When the value is less than 0.5, the eagle flock launches a gradual, dive-and-surround attack. The position update is calculated using the following formula: in, X rb ( t ) indicates the first t The location of the prey individual in the next iteration. X m ( t () represents the average position of the population in the eagle flock at the t-th iteration. J Indicates the intensity of the prey's random jump. F Represents the fitness function. S Indicates 1 D 3D random vector, LF(D) This represents the Levy function.
7. The yield prediction method for random forests based on the Harris Eagle algorithm according to claim 1, characterized in that, The pre-trained model for wafer yield testing is trained based on the acceptance test sample set, including the following steps: The acceptance test sample set is divided into a training dataset, a test dataset, and a validation dataset. The pre-trained model for wafer yield testing is trained based on the training dataset, and the wafer yield prediction model after each training is evaluated based on the validation dataset to finally obtain the wafer yield prediction model. The wafer yield prediction model is tested based on the test dataset, and the wafer yield prediction results for the samples in the test dataset are output.
8. A yield prediction system based on Harris Eagle algorithm for optimizing random forests, characterized in that, It includes a data processing module, a model training module, and a prediction and evaluation module; The data processing module is used to acquire historical wafer acceptance test datasets; preprocess the acceptance test data in the historical wafer acceptance test datasets to obtain acceptance test sample sets; The model training module is used to iteratively optimize the key framework parameters of the random forest model using the Harris Eagle algorithm and modify the random forest model based on the key framework parameters to construct a pre-trained model for wafer yield prediction; and to train the pre-trained model for wafer yield testing based on the acceptance test sample set to obtain the wafer yield prediction model. The prediction and evaluation module is used to input the acceptance test data to be tested into the wafer yield prediction model to obtain the prediction result; The step of iteratively optimizing the key frame parameters of the random forest model using the Harris Eagle algorithm and modifying the random forest model based on the key frame parameters includes the following steps: The parameters of the Harris Eagle algorithm are preset, including population size, maximum number of iterations, and the range and dimensions of change in the location of the eagle flock and prey. Set key framework parameters for iteratively optimizing the random forest algorithm using the Harris Eagle algorithm. The key framework parameters include at least the maximum number of weak learners, the maximum depth of the decision tree parameters, the maximum number of features, the minimum number of samples required for internal node repartitioning, and the minimum number of samples required for leaf nodes. The positions of the eagle flock and the prey in the Harris Eagle algorithm are initialized separately. The classification error of the random forest algorithm is selected as the fitness function. In each iteration, different position update strategies are selected to update the position vector based on whether the prey is found, the energy state of the prey, and the size of the fitness function. When the number of iterations reaches the preset maximum number of iterations, the optimization is completed. The position vector after the iteration is the optimized key frame parameters. In this context, the positions of both the eagle flock and the prey are represented by a 1. A position vector of size 'dim', where 'dim' represents the dimension and the size of the dimension represents the number of parameters to be optimized. The position vector is updated in each iteration and is constructed using the key framework parameters. The position vector is represented as: in, X rb ( t ) indicates the first t The position vector at the next iteration. t Indicates the first t iteration X [0] represents the maximum number of weak learners. X [1] represents the maximum depth among the decision tree parameters. X [2] represents the largest eigenvalue. X [3] represents the minimum number of samples required for further partitioning of internal nodes. X [4] indicates the minimum number of samples required for a leaf node.
9. A yield prediction device for optimizing random forests based on the Harris Eagle algorithm, comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, characterized in that, When the processor executes the computer program, it implements the method according to any one of claims 1 to 7.
10. A computer-readable storage medium storing computer instructions, characterized in that, The computer-readable storage medium stores the method for performing any one of claims 1 to 7.