Spectral value calculation model training method and device, medium and equipment

By building and training the spectral value calculation model, the problem of large spectral values ​​in the existing technologies is large and time -consuming. Demand.

CN119377682AActive Publication Date: 2025-01-28JIANGSU JIANGLING SEMICON CO LTD

Patent Information

Application Number
CN202411954794.5
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-12-26
Publication Date
2025-01-28
Estimated Expiration
2044-12-26

AI Technical Summary

Technical Problem

When building native databases, the spectral value calculation is large and time-consuming, making it difficult to meet the requirements of semiconductor chip grating structure complexity for measurement accuracy and speed.

Method used

Adopt a spectral value calculation model training method, to determine the number of target dimensions, build a spectral value calculation model to be trained, and optimize the model through training samples to make the difference between the spectral values ​​of the output and the labeling, thereby replacing the traditional value instead of the traditional value Solve the method of calculating the spectrum value.

Benefits of technology

It improves the efficiency of building native databases, reduces the size and migration difficulty of the database, and improves the speed and accuracy of optical critical size measurement.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119377682A_ABST
    Figure CN119377682A_ABST
Patent Text Reader

Abstract

The invention provides a spectral value calculation model training method and device, a medium and equipment, and the method comprises the steps: determining a target spectral dimension, obtaining a first structure parameter set as a training sample, and taking a corresponding spectral value as an annotation; and constructing a to-be-trained spectrum value calculation model according to the target spectrum dimension, inputting a training sample into the spectrum value calculation model, and training the spectrum value calculation model by taking the minimum difference between output and annotation as an optimization target. And according to the determined target dimension number, constructing the to-be-trained spectrum value calculation model, so that the trained spectrum value calculation model outputs the spectrum values of the target dimension number, and the efficiency of constructing the native database is improved. In addition, the size of the spectral value calculation model is far smaller than that of the native database, so that when optical critical dimension measurement is carried out on different devices, the spectral value calculation model can be migrated in the different devices to replace migration of the native database, the migration speed is increased, and storage resources of the devices are saved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of computers, and in particular to a method, device, medium and equipment for training a spectral value calculation model. Background Art

[0002] At present, when performing optical critical dimension (OCD) measurement on a grating structure to be measured, the measured spectrum of the grating structure to be measured is usually matched with each spectrum stored in a pre-built native database, and the structural data corresponding to the matched spectrum is used as the structural data of the grating structure to be measured. That is, before performing OCD on the grating to be measured, a grating model corresponding to the grating structure to be measured is usually constructed first, and then the values ​​of various structural parameters of the grating model are determined, and a number of structural points are constructed according to the values ​​of various structural parameters, wherein each structural point contains at least two structural parameters, and then the spectral values ​​corresponding to each structural point are calculated according to the values ​​of the structural parameters contained in each structural point, so as to determine the spectrum corresponding to each structural point according to the spectral values ​​corresponding to each structural point, and construct the native database of the grating structure to be measured. In the OCD process, the measured spectrum of the grating structure to be measured is matched with the theoretical spectrum stored in the native database, and the measurement result of the semiconductor to be measured is determined according to the matched grating structure. Therefore, the construction of the native database determines the accuracy of the OCD result.

[0003] In the prior art, when constructing a native database, the spectral values ​​corresponding to different structural points are usually calculated through numerical solution methods such as the Finite Element Method (FEM) and the Boundary Element Method (BEM), and then the corresponding spectra are determined based on the determined spectral values. Finally, the native database can be constructed based on the determined spectra and the structural points corresponding to each spectrum. However, as the grating structure of semiconductor integrated chips becomes more and more complex, the amount of spectral value calculation becomes larger and larger, and the calculation time becomes longer and longer, which makes it difficult to meet the needs of users. Therefore, this specification provides a spectral value calculation model training method, device, medium and equipment. Summary of the invention

[0004] This specification provides a spectral value calculation model training method, device, medium and equipment to partially solve the above-mentioned problems existing in the prior art.

[0005] This manual adopts the following technical solutions: A spectral value calculation model training method, comprising: Determine the target number of dimensions, and obtain a first set of structural parameters of a grating model as a training sample, and a spectral value corresponding to the first set of structural parameters under the target number of dimensions as a label, wherein the grating model is established based on the structure of the grating to be measured; According to the target dimension number, construct a spectral value calculation model to be trained; The training sample is input into the spectral value calculation model, and the output of the spectral value calculation model is determined to be the training spectral value. The spectral value calculation model is trained with the minimum difference between the training spectral value and the annotation as the optimization goal, wherein the trained spectral value calculation model is used to determine the corresponding first theoretical spectral value according to the input structural parameters.

[0006] Optionally, the step of determining the number of target dimensions specifically includes: Acquire a second structural parameter set of the grating model and a second theoretical spectrum value corresponding to the grating model to determine an original data set; The target number of dimensions is determined according to the restoration accuracy of the original data set at each number of reduced dimensions.

[0007] Optionally, the step of determining the restoration accuracy specifically includes: determining a restored data set of the original data set according to the second theoretical spectrum value; The restoration accuracy of the restored data set is determined according to the original data set and the restored data set.

[0008] Optionally, the step of determining a restored data set of the original data set according to the second theoretical spectrum value specifically includes: The number of reduced dimensions is determined, the second theoretical spectrum value is reduced to the number of reduced dimensions and then restored, the restored spectrum value is determined, and a restored data set is constructed.

[0009] Optionally, the step of reducing the dimension of the second theoretical spectrum value to the number of reduced dimensions specifically includes: Determining each spectral dimension included in the second theoretical spectral value; For each spectral dimension, determining the comprehensive correlation between the spectral dimension and other spectral dimensions according to the second theoretical spectral value; According to the determined comprehensive correlation, determining each target dimension corresponding to the number of dimension reduction dimensions from each spectral dimension; The second theoretical spectrum value is reduced in dimension according to each target dimension.

[0010] Optionally, the step of determining the restoration accuracy of the restored data set according to the original data set and the restored data set specifically includes: matching the restored data set with spectral values ​​in the original data set; The restoration accuracy is determined according to the matching result, and the matching result is positively correlated with the restoration accuracy.

[0011] Optionally, the step of determining the target number of dimensions according to the restoration accuracy of the original data set at each number of reduced dimensions specifically includes: According to the restoration accuracy, with the restoration accuracy not less than the preset accuracy and the minimum number of reduced dimensions as the adjustment target, the number of reduced dimensions is adjusted until a target number of dimensions that meets the adjustment target is determined.

[0012] Optionally, the number of reduced dimensions is adjusted according to an adjustment direction in which the number of reduced dimensions decreases round by round; The step of adjusting the number of reduced dimensions according to the restoration accuracy, taking the restoration accuracy not less than the preset accuracy and the number of reduced dimensions as the adjustment target, until determining the target number of dimensions that meets the adjustment target, specifically includes: When the restoration accuracy is not less than the preset accuracy, the number of reduced dimensions is reduced according to the preset number of single iteration dimensions, the restored data set is reconstructed according to the reduced number of reduced dimensions, and the restoration accuracy of the reduced number of reduced dimensions is re-determined until the restoration accuracy of the reduced number of reduced dimensions is less than the preset accuracy. The number of reduced dimensions before the most recent reduction in the number of reduced dimensions is used as the target number of dimensions.

[0013] Optionally, the step of taking the number of reduced dimensions before the last adjustment of the number of reduced dimensions as the target number of dimensions specifically includes: When the number of dimensions in the most recent single iteration is greater than the number of dimensions, the number of dimensions in the single iteration is reduced, and starting from the number of dimensions before the most recent reduction of the number of dimensions, the number of dimensions in the single iteration is continued to be reduced with the number of dimensions in the reduced single iteration until the adjustment target is met; When the number of dimensions in the most recent single iteration is equal to one number of dimensions, the number of dimensions reduced before the most recent reduction of the number of dimensions reduced is used as the target number of dimensions.

[0014] Optionally, the number of reduced dimensions is adjusted according to an adjustment direction in which the number of reduced dimensions increases round by round; The step of adjusting the number of reduced dimensions according to the restoration accuracy, taking the restoration accuracy not less than the preset accuracy and the number of reduced dimensions as the adjustment target, until determining the target number of dimensions that meets the adjustment target, specifically includes: When the restoration accuracy is less than the preset accuracy, the number of reduced dimensions is increased, the restored data set is reconstructed according to the increased number of reduced dimensions, and the restoration accuracy of the increased number of reduced dimensions is re-determined until the restoration accuracy of the increased number of reduced dimensions is not less than the preset accuracy, and the number of reduced dimensions after the most recent increase is used as the target number of dimensions.

[0015] Optionally, the step of taking the number of dimension reduction dimensions after the most recent adjustment as the target number of dimensions specifically includes: When the number of dimensions in the most recent single iteration is equal to the number of one dimension, the number of dimensions reduced after the most recent adjustment of the number of dimensions reduced is used as the target number of dimensions; When the number of dimensions in the most recent single iteration is greater than the number of dimensions, the number of dimensions in the single iteration is reduced, and the number of dimensions reduced is continued to be increased from the number of dimensions reduced before the most recent adjustment of the number of dimensions reduced, with the number of dimensions reduced after the reduction, until the adjustment target is met.

[0016] Optionally, the step of adjusting the number of reduced dimensions according to the restoration accuracy, taking the restoration accuracy not less than a preset accuracy and the number of reduced dimensions as an adjustment target, until determining a target number of dimensions that meets the adjustment target, specifically includes: According to the number of spectral dimensions of the second theoretical spectral value, determining the number of reduced dimensions by a dichotomy method, and determining the restoration accuracy corresponding to the number of reduced dimensions; Based on the relationship between the restoration accuracy corresponding to the number of reduced dimensions and the preset accuracy, the range of the number of reduced dimensions is determined according to the bisection method, and the number of reduced dimensions is redetermined, as well as the restoration accuracy, until the minimum number of reduced dimensions with a restoration accuracy not less than the preset accuracy is determined as the target number of dimensions.

[0017] Optionally, the step of determining the target number of dimensions according to the restoration accuracy of the original data set at each number of reduced dimensions specifically includes: Determine a dimensionality reduction score, input the dimensionality reduction score into a preset dimensionality reduction function, determine the number of dimensionality reduction dimensions corresponding to the dimensionality reduction score and each spectral dimension after dimensionality reduction, and determine the restoration accuracy of the number of dimensionality reduction dimensions; The restoration accuracy is not less than the preset accuracy and the number of reduced dimensions is minimized as the adjustment target, the dimensionality reduction score is adjusted, and the dimensionality reduction function is re-used to determine the number of reduced dimensions and the spectral dimensions after the dimensionality reduction corresponding to the adjusted dimensionality reduction score, and the restoration accuracy corresponding to the adjusted number of reduced dimensions is recalculated until the target number of dimensions that meet the adjustment target and the spectral dimensions corresponding to the target number of dimensions are determined.

[0018] Optionally, the dimensionality reduction score is adjusted according to an adjustment direction in which the number of dimensionality reduction scores decreases round by round; The step of adjusting the number of dimension reduction dimensions, adjusting the dimension reduction score, and re-using the dimension reduction function to determine the number of dimension reduction dimensions corresponding to the adjusted dimension reduction score and each spectral dimension after dimension reduction, and recalculating the restoration accuracy corresponding to the adjusted number of dimension reduction dimensions until determining the target number of dimensions that meet the adjustment target and each spectral dimension corresponding to the target number of dimensions, specifically includes: When the restoration accuracy is not less than the preset accuracy, the dimensionality reduction score is lowered, and the dimensionality reduction function is used to re-determine the number of reduced dimensions and the corresponding restoration accuracy after reducing the dimensionality reduction score, until the determined restoration accuracy is less than the preset accuracy. The number of reduced dimensions before the most recent reduction of the dimensionality reduction score is taken as the target dimension number, and the spectral dimensions corresponding to the target dimension number are determined.

[0019] Optionally, adjusting the dimensionality reduction score according to the adjustment direction of increasing the dimensionality reduction score round by round; The step of adjusting the dimensionality reduction score, re-passing the dimensionality reduction function, determining the number of dimensionality reduction dimensions corresponding to the adjusted dimensionality reduction score and each spectral dimension after dimensionality reduction, and recalculating the restoration accuracy corresponding to the adjusted number of dimensionality reduction dimensions until determining the target number of dimensions that meet the adjustment target and each spectral dimension corresponding to the target number of dimensions, specifically includes: When the restoration accuracy is less than the preset accuracy, the dimensionality reduction score is increased, and the dimensionality reduction function is used to re-determine the number of reduced dimensions and the corresponding restoration accuracy after reducing the dimensionality reduction score, until the determined restoration accuracy is not less than the preset accuracy. The number of reduced dimensions after the most recent increase in the dimensionality reduction score is used as the target dimension number, and the spectral dimensions corresponding to the target dimension number are determined.

[0020] Optionally, the step of adjusting the dimensionality reduction score, re-passing the dimensionality reduction function, determining the number of dimensionality reduction dimensions corresponding to the adjusted dimensionality reduction score and each spectral dimension after dimensionality reduction, and recalculating the restoration accuracy corresponding to the adjusted number of dimensionality reduction dimensions, until determining the target number of dimensions that meet the adjustment target and each spectral dimension corresponding to the target number of dimensions, specifically includes: Based on the relationship between the restoration accuracy of the number of reduced dimensions corresponding to the reduced dimension score and the preset accuracy, the reduced dimension score is adjusted by a dichotomy method; The dimension reduction function is used to determine the number of reduced dimensions and the corresponding restoration accuracy after reducing the dimension reduction score, until the target number of dimensions that meet the adjustment target and the spectral dimensions corresponding to the target number of dimensions are determined.

[0021] Optionally, the step of constructing a spectral value calculation model to be trained according to the target dimension number specifically includes: According to the target number of dimensions, the number of neurons in each network layer except the input layer of the spectral value calculation model to be trained is determined, and the target number of dimensions is positively correlated with the number of neurons in each network layer.

[0022] Optionally, the structural parameters of the grating model include at least two of the side wall angle, height, depth, top width and bottom width of the grating structure to be measured, and the first theoretical spectral value, the second theoretical spectral value and the training spectral value are determined based on at least two structural parameters and incident light of a preset wavelength.

[0023] Optionally, the step of training the spectral value calculation model specifically includes: According to the size of the difference, adjusting each model parameter in the spectral value calculation model according to a preset step size; When the number of adjustments reaches a preset value, the preset step size is reduced, and the model parameters are adjusted again according to the reduced preset step size.

[0024] Optionally, the spectral value calculation model is trained through multiple rounds of iterations, and the first structure parameter set includes a plurality of structure points, wherein: The number of structural points in the training samples of each round of iteration is determined in an incremental manner; The first set of structural parameters is sampled according to the number of structural points in this round of iterative process, and each structural point obtained by sampling is used as a training sample for this round of iterative process.

[0025] Optionally, the spectral value calculation model is trained through multiple rounds of iterations, and the first structure parameter set includes a plurality of structure points, wherein: Sampling the first set of structural parameters at least twice to determine at least two training sets containing different numbers of structural points; For each round of iteration, a training set different from the training set used in the previous round of iteration is determined for use in the training of the current round of iteration.

[0026] Optionally, the step of training the spectral value calculation model specifically includes: During the training process, recording the differences determined in each round of training of the spectral value calculation model and the model parameters of the spectral value calculation model before the parameters are adjusted in the round of training; When the condition for stopping training is reached, the target difference is determined based on each recorded difference; The model parameters corresponding to the target difference are used as the model parameters of the spectral value calculation model.

[0027] Optionally, after the step of training the spectral value calculation model, the method further includes: Establishing a theoretical spectrum value database through a plurality of said first theoretical spectrum values; Matching the spectrum value of the grating model to be measured with each first theoretical spectrum value in the theoretical spectrum database; The structural parameters corresponding to the successfully matched spectral values ​​are used as the structural parameters of the grating model to be measured.

[0028] This specification provides a spectral value calculation model training device, including: An acquisition module, used for determining the target number of dimensions, and acquiring a first set of structural parameters of a grating model as a training sample, and a spectral value corresponding to the first set of structural parameters at the target number of dimensions as a label, wherein the grating model is established based on the structure of the grating to be measured; A construction module, used to construct a spectral value calculation model to be trained according to the target dimension number; The training module is used to input the training sample into the spectral value calculation model, determine the output of the spectral value calculation model as the training spectral value, and train the spectral value calculation model with the minimum difference between the training spectral value and the annotation as the optimization goal.

[0029] This specification provides a computer-readable storage medium, which stores a computer program. When the computer program is executed by a processor, a spectral value calculation model training method is implemented.

[0030] The present specification provides an electronic device, which includes a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor implements a spectral value calculation model training method when executing the computer program.

[0031] At least one of the above technical solutions adopted in this specification can achieve the following beneficial effects: In a spectral value calculation model training method provided in the present specification, a target spectral dimension of a spectral value output by a trained spectral value calculation model is determined, and a first structural parameter set of a grating model is obtained as a training sample, and the spectral value under the target spectral dimension corresponding to the first structural parameter set is used as a label. Then, a spectral value calculation model to be trained is constructed according to the determined target spectral dimension, and the determined training sample is input into the spectral value calculation model, and the spectral value calculation model is trained with the difference between the training spectral value output by the spectral value calculation model and the determined label being minimized as an optimization target.

[0032] It can be seen from the above method that according to the determined number of target dimensions, a spectral value calculation model to be trained is constructed so that the trained spectral value calculation model can output spectral values ​​of the target number of dimensions. The trained spectral value calculation model is used instead of the traditional numerical solution method to calculate the spectral value, thereby improving the efficiency of building a native database. In addition, the size of the trained spectral value calculation model is much smaller than the size of the native database, so that when optical critical dimension measurement is performed on different devices, the trained spectral value calculation model can be directly migrated in different devices, replacing the migration of the native database, thereby improving the migration speed and saving the storage resources of the device. BRIEF DESCRIPTION OF THE DRAWINGS

[0033] The drawings described herein are used to provide a further understanding of this specification and constitute a part of this specification. The illustrative embodiments and descriptions of this specification are used to explain this specification and do not constitute an improper limitation on this specification. In the drawings: Figure 1 A schematic diagram of a grating structure provided in this specification; Figure 2 A schematic diagram of a grating structure provided in this specification; Figure 3 A schematic diagram of a spectrum provided in this specification; Figure 4 A schematic diagram of a spectral value calculation model training method provided in this specification; Figure 5 A schematic diagram of a training process of a spectral value calculation model provided in this specification; Figure 6 A schematic diagram of a spectral value calculation model training device provided in this specification; Figure 7 The corresponding Figure 4 Schematic diagram of electronic equipment. DETAILED DESCRIPTION

[0034] In order to make the purpose, technical solutions and advantages of this specification more clear, the technical solutions of this specification will be clearly and completely described in combination with the specific embodiments of this specification and the corresponding drawings. Obviously, the described embodiments are only part of the embodiments of this specification, not all of the embodiments. Based on the embodiments in this specification, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of the present invention.

[0035] With the development of semiconductor technology, the manufacturing process of integrated circuits has become more and more sophisticated, the characteristic size of semiconductor chips has become smaller and smaller, and the precision requirements for semiconductor chips have become higher and higher. Small changes in characteristic size will affect the performance and reliability of semiconductor chips. Therefore, it is necessary to accurately measure the characteristic size of semiconductor devices. However, traditional contact measurement methods can no longer meet the measurement accuracy required now, and contact measurement methods may also cause physical damage or contamination to the surface of semiconductor chip samples, resulting in degradation of semiconductor chip performance or even failure. Therefore, non-contact measurement is currently often used to measure the characteristic size of semiconductor chips, namely optical critical dimension measurement (OCD).

[0036] When performing OCD, the dimensions of the grating structure on the semiconductor chip are usually measured. Figure 1 As shown, Figure 1 A schematic diagram of a grating structure provided in this specification. The grating structure is composed of a plurality of periodically arranged protruding structures. In one or more embodiments of this specification, the grating structure of the grating refers to the cross-sectional shape of the periodically arranged protruding structures constituting the grating, that is, Figure 1 The cross section of each protrusion structure is a trapezoid. Of course, in addition to this, the cross section of the protrusion structure can also be composed of multiple trapezoids, such as Figure 2 As shown, Figure 2 A schematic diagram of a grating structure provided in this specification. Figure 1 Some parameters used to describe the characteristics of the cross-section of the raised structure in the grating are marked, such as top width, bottom width, side wall angle, height, depth, etc. These are all structural parameters used to describe the raised structures that constitute the periodic arrangement of the grating. Each raised structure requires at least two structural parameters to be determined. These structural parameters are the optical critical dimensions to be measured in the OCD process. Of course, the specific types of structural parameters to be measured and the number of types of structural parameters to be measured depend on the types of structural parameters contained in the structural points stored in the native database used, and can be selected according to actual needs.

[0037] When performing OCD, the grating to be measured is usually illuminated by light of a preset wavelength at a preset angle to measure the spectrum of the grating to be measured. The measured spectrum is then matched with the spectrum stored in the native database, and the spectrum with the highest similarity to the measured spectrum is determined from the spectrum stored in the native database, and the structural parameters corresponding to the spectrum with the highest similarity are used as the structural parameters of the grating to be measured.

[0038] Therefore, the quality of native database construction determines the accuracy of OCD. At present, when constructing a native database, a grating model is usually pre-constructed, and then several groups of structural parameter values ​​are determined based on the constructed grating model. Several structural points are constructed through permutations and combinations. Each structural point is composed of at least two structural parameters. For example, a grating structure contains three structural parameters, namely top width, height, and sidewall angle. The top width is 3nm, the height is 4nm, and the sidewall angle is 53°. Then a structural point is [3nm, 4nm, 53°]. Then, according to the determined structural points, the spectral values ​​corresponding to each structural point are calculated, and then the corresponding spectrum is determined according to the determined spectral values, wherein the spectral value is a multidimensional characteristic value used to characterize the corresponding spectral characteristics, that is, the number of spectral dimensions of the spectral value is often very high, for example [0.1533 0.1236 0.1766… 0.4650 0.5579 0.4802], the multidimensional value as a whole represents a spectral value, the spectral value contains 100 spectral dimensions, and each value represents a spectral dimension. The spectrum corresponding to the structural point can be determined according to the multidimensional value, such as Figure 3 As shown, Figure 3 A schematic diagram of a spectrum provided in this specification. Finally, a native database is constructed based on each structural point and the corresponding spectrum.

[0039] Currently, commonly used methods for calculating spectral values ​​include the finite element method and the boundary element method. However, as the grating structure of semiconductor chips becomes more and more complex, the types of structural parameters contained in each structural point are also increasing, resulting in an increasing amount of calculations when calculating spectral values, and the calculation time is also increasing. In order to meet the increasing accuracy requirements of OCD, when building a native database, the change step size between the same type of structural parameters between each structural point is getting smaller and smaller, and the number of structural points is increasing, resulting in a longer and longer time to build the native database, and the memory resources occupied by the native database are also increasing.

[0040] In addition, when performing OCD through different devices, it is necessary to migrate the native database between different devices. However, the native database is getting larger and larger, and the migration time is getting longer and longer, which is difficult to meet the needs of users. Based on this, this specification provides a spectral value calculation model training method, that is, the trained spectral value calculation model replaces the traditional spectral value calculation method through numerical solution, thereby building a native database to reduce the migration difficulty and construction time of the native database.

[0041] The technical solutions provided by the embodiments of this specification are described in detail below in conjunction with the accompanying drawings.

[0042] like Figure 4 As shown, Figure 4A schematic diagram of the process of a spectral value calculation model training method provided in this specification includes the following steps: S300: Determine the target number of dimensions, and obtain a first set of structural parameters of a grating model as a training sample, and spectral values ​​corresponding to the first set of structural parameters under the target number of dimensions as annotations, wherein the grating model is established based on the structure of the grating to be measured.

[0043] In one or more embodiments of this specification, it is not limited which device executes the spectral value calculation model training method, for example, a mobile terminal and a server. However, since the subsequent steps such as model training are usually performed by a server, this specification will be described by taking the server executing the spectral value calculation model training method as an example. The server may be a single device, or may be composed of multiple devices, for example, a distributed server, and this specification does not limit this.

[0044] Since the selection of model parameters of the spectral value calculation model determines the efficiency of model training, in order to improve the training efficiency of the spectral value calculation model, the server may first determine the number of spectral dimensions of the spectral values ​​output by the spectral value calculation model to be trained as the target spectral dimension before constructing the spectral value calculation model, so as to determine the training samples and annotations of the spectral value calculation model to be trained according to the target spectral dimension.

[0045] Specifically, the server may first determine the target number of dimensions, then obtain a first set of structural parameters of the grating model as a training sample for the training spectrum value calculation model, wherein the training sample includes a plurality of structural points, and then calculate the spectrum value corresponding to each structural point in the training sample under the target number of dimensions as the label of the training sample.

[0046] It should be noted that the above-mentioned grating model refers to a grating model constructed according to the grating structure to be measured, which is used to determine the specific structure of the grating. In one or more embodiments of the present specification, the server is not limited to the specific method used to determine the target number of dimensions. The number of spectral dimensions of the spectral values ​​of the grating to be measured can be determined first, and then the number of spectral dimensions of the spectral values ​​of the grating to be measured can be used as the target number of dimensions. Of course, the number of dimensions that does not exceed the number of spectral dimensions of the spectral values ​​of the grating to be measured can also be determined as the target number of dimensions. Since there are many methods that can be adopted, in one or more embodiments of the present specification, there is no limitation on this. The specific methods that can be adopted are described in the subsequent content of this specification and will not be repeated here.

[0047] Furthermore, in one or more embodiments of the present specification, there is no limitation on the specific method used by the server to obtain the first set of structural parameters of the grating model. It may be to manually set a floating value range of several structural parameters, and then randomly sample several values ​​from each floating value range, and then determine several structural points by permutations and combinations to determine the first set of structural parameters. It is also possible to determine the boundary values ​​of each structural parameter, and then adjust each boundary value according to a preset step size to determine each value corresponding to each structural parameter. Then, the values ​​of each structural parameter are permuted and combined to determine several structural points. Of course, other methods may also be used. Since there are many methods that can be adopted, this specification does not limit this and can be set according to actual needs.

[0048] In addition, in the above-mentioned first set of structural parameters, the types and quantities of structural parameters contained in each structural point are the same, and only the values ​​of the structural parameters are different. Moreover, in one or more embodiments of the present specification, it is not limited what specific method the server adopts to determine the spectral value corresponding to each structural point. It can be calculated by numerical solution methods such as finite element method (Finite Element Method, FEM), boundary element method (Boundary Element Method, BEM), or by strict coupled wave analysis (Rigorous Coupled Wave Analysis, RCWA). The server can be set according to actual needs. This specification will be described later by taking the calculation of the first theoretical spectral value by RCWA as an example. If the number of spectral dimensions of the calculated spectral value is greater than the target number of dimensions, the calculated spectral value can be reduced to the target number of dimensions.

[0049] S302: Constructing a spectral value calculation model to be trained according to the target dimension quantity.

[0050] After determining the target number of dimensions, the server can construct a spectral value calculation model to be trained according to the determined target number of dimensions.

[0051] Specifically, the server determines the number of neurons in each network layer except the input layer of the spectral value calculation model to be trained according to the determined number of target dimensions, wherein the number of target dimensions is positively correlated with the number of neurons in each network layer.

[0052] For example, if the target number of dimensions is determined to be 10, then the number of neurons in each network layer can be determined to be 10. If the target number of dimensions is determined to be 12, then the number of neurons in each network layer can be determined to be 14. That is, the larger the target number of dimensions is determined, the greater the number of neurons in each network layer. The specific number can be set according to actual needs. This specification does not limit this.

[0053] It should be noted that in one or more embodiments of the present specification, there is no restriction on the specific model used to train the spectral value calculation model to be trained. It can be a convolutional model, a neural network model, etc. The present specification does not impose any restrictions on this and can be set according to actual needs. When the spectral value calculation model is obtained through the neural network model, there is no restriction on the way in which the neurons in the spectral value calculation model to be trained are connected. It can be fully connected or non-fully connected and can be set according to actual needs.

[0054] S304: Input the training sample into the spectral value calculation model, determine the output of the spectral value calculation model as the training spectral value, and train the spectral value calculation model with the minimum difference between the training spectral value and the annotation as the optimization goal, wherein the trained spectral value calculation model is used to determine the corresponding first theoretical spectral value according to the input structural parameters.

[0055] After the construction of the spectral value calculation model to be trained is completed, the spectral value calculation model can be trained according to the training samples and annotations. The trained spectral value calculation model can be used as a native database to facilitate the subsequent OCD process. Compared with the traditional native database, the trained spectral value calculation model has a small memory usage and is easy to migrate.

[0056] Specifically, the training samples are input into the spectral value calculation model, the output of the spectral value calculation model is determined to be the training spectral value, and the spectral value calculation model is trained with the minimum difference between the training spectral value and the annotation as the optimization goal.

[0057] After determining the trained spectral value calculation model, the first theoretical spectral value corresponding to each structure point output by the trained spectral value calculation model can be determined according to inputting several groups of structure points into the trained spectral value calculation model. A native database is constructed with each first theoretical spectral value generated according to the spectral value calculation model and the corresponding structure point. Then the spectral value of the measured spectrum is determined, the spectral value of the measured spectrum is matched with each first theoretical spectral value in the native database, and the structure point corresponding to the first theoretical spectral value with the smallest difference is determined as the structure point of the spectral structure of the measured spectrum. Of course, it is also possible to determine several first theoretical spectral values ​​with the smallest difference, and then select the corresponding first theoretical spectral value from the several first theoretical spectral values ​​with the smallest difference according to the needs, and use the structure point corresponding to the corresponding first theoretical spectral value as the structure point of the spectral structure of the measured spectrum, and this specification does not limit this.

[0058] It should be noted that in one or more embodiments of the present specification, there is no restriction on whether the native database constructed by the server stores the first theoretical spectral values ​​or the spectra corresponding to the first theoretical spectral values. That is, after determining the first theoretical spectral values ​​output by the trained spectral value calculation model, the native database can be directly constructed based on the structural points input into the trained spectral value calculation model and the first theoretical spectral values ​​output by the trained spectral value calculation model. Then, when performing OCD, the server can convert the measured spectrum into the corresponding measured spectral value, match the measured spectral value with the first theoretical spectral values ​​stored in the native database, determine the first theoretical spectral value with the highest similarity to the measured spectral value, and use the structural point corresponding to the first theoretical spectral value with the highest similarity as the structural point of the spectral structure of the measured spectrum.

[0059] Of course, the server can also determine the spectra corresponding to each first theoretical spectrum value according to each first theoretical spectrum value after determining each first theoretical spectrum value, and then build a native database based on the spectrum corresponding to the first theoretical spectrum value and the corresponding structure point. When performing OCD, the measured spectrum is matched with each spectrum in the native database to determine the spectrum with the highest similarity to the measured spectrum, and the structure point corresponding to the spectrum with the highest similarity is used as the structure point of the spectral structure of the measured spectrum. This manual does not limit this, and it can be set according to actual needs.

[0060] In addition, since the number of spectral dimensions of the first theoretical spectral value is equal to the number of target dimensions, and the number of target dimensions is often different from the number of dimensions of the spectral value corresponding to the grating structure to be measured, in order to subsequently match the spectrum to be measured with the spectrum in the native database, the server can restore each first theoretical spectral value, that is, through a preset algorithm, restore each first theoretical spectral value from the number of target spectral dimensions to the number of dimensions of the spectral value corresponding to the grating to be measured. The native database is constructed based on each first theoretical spectral value and the corresponding structural point generated by the spectral value calculation model.

[0061] It should be noted that in one or more embodiments of this specification, the server is not limited to a specific method for restoring the first theoretical spectrum value, such as reverse principal component analysis, reverse kernel principal component analysis, reverse autoencoder, etc. The corresponding restoration method can be determined according to the adopted dimensionality reduction method. This specification does not limit this.

[0062] Of course, the measured spectral values ​​obtained by measurement may also be reduced in dimension to the target number of dimensions, and then the reduced spectral values ​​may be matched with the first theoretical spectral values ​​in the native database, and this specification does not impose any limitation on this.

[0063] based on Figure 3The target spectral dimension of the spectral value output by the trained spectral value calculation model is determined, and the first structural parameter set of the grating model is obtained as a training sample, and the spectral value under the target spectral dimension corresponding to the first structural parameter set is used as an annotation. Then, the spectral value calculation model to be trained is constructed according to the determined target spectral dimension, and the determined training sample is input into the spectral value calculation model, and the difference between the training spectral value output by the spectral value calculation model and the determined annotation is minimized as the optimization target, and the spectral value calculation model is trained.

[0064] It can be seen from the above method that according to the determined number of target dimensions, a spectral value calculation model to be trained is constructed so that the trained spectral value calculation model can output spectral values ​​of the target number of dimensions. The trained spectral value calculation model is used instead of the traditional numerical solution method to calculate the spectral value, thereby improving the efficiency of building a native database. In addition, the size of the trained spectral value calculation model is much smaller than the size of the native database, so that when optical critical dimension measurement is performed on different devices, the trained spectral value calculation model can be directly migrated in different devices, replacing the migration of the native database, thereby improving the migration speed and saving the storage resources of the device.

[0065] In step S300, since the higher the number of spectral dimensions of the spectral value, the longer the model calculation time, the longer the training time required for the spectral value calculation model to be trained to achieve fitting, in order to reduce the training time of the spectral value calculation model, the number of spectral dimensions of the spectral value required by the native database can be reduced to determine the target number of dimensions. However, the smaller the number of target dimensions, the greater the difference between the spectral value output by the spectral value calculation model and the spectral value of the grating to be measured, which affects the accuracy of OCD. Therefore, the server can also first restore the spectral value after dimension reduction through a preset restoration algorithm, and after determining the restored spectral value, determine the target number of dimensions according to the restoration accuracy between the restored spectral value and the spectral value before dimension reduction.

[0066] Specifically, the server obtains the second structural parameter set of the grating model and the second theoretical spectral value corresponding to each structural point in the second structural parameter set, and constructs an original data set, wherein the number of spectral dimensions of the second theoretical spectral value is the number of dimensions of the spectral value of the grating to be measured. Then, each second theoretical spectral value in the original data set is dimensionally reduced, and the restoration accuracy of the original data set under each number of reduced dimensions is determined, and the number of reduced dimensions corresponding to the target restoration accuracy is determined as the target number of dimensions. The number of reduced dimensions refers to the number of dimensions remaining after each second theoretical spectral value is dimensionally reduced, which is used as the number of reduced dimensions.

[0067] It should be noted that the method for obtaining the second structure parameter set may be the same as the method for obtaining the first structure parameter set, or may be different from the method. This specification does not limit this and may be set according to actual needs. In order to improve the training efficiency of the model and reduce the time required to obtain the second structure parameter set and the computing resources consumed, the server may also use the first structure parameter set as the second structure parameter set.

[0068] When determining the restoration accuracy corresponding to each number of reduced dimensions, for each number of reduced dimensions, the second theoretical spectrum value can be first reduced to the number of reduced dimensions, and then the reduced second theoretical spectrum value can be restored by a preset restoration algorithm to determine a restored data set. Then, the restored data set is matched with each spectral value in the original data set to determine the difference between the corresponding second theoretical spectrum values ​​in the restored data set and the original data set, thereby determining the restoration accuracy corresponding to the number of reduced dimensions.

[0069] It should be noted that in one or more embodiments of this specification, the server is not limited to the specific method used to reduce the dimension of the second theoretical spectrum value, and the spectrum values ​​of certain dimensions may be deleted to achieve spectrum value dimension reduction. In addition, the server can also achieve spectrum value dimension reduction by combining related quantities, such as principal component analysis (PCA), linear discriminant analysis (LDA), kernel principal component analysis (KPCA), etc.

[0070] For example, the server may first determine the spectral dimensions included in the second theoretical spectral value, and then determine the comprehensive correlation between the spectral dimension and other spectral dimensions according to the second theoretical spectral value for each spectral dimension. Then, according to the determined comprehensive correlation, the target dimensions corresponding to the number of dimension reduction dimensions are determined from the spectral dimensions, and then, the spectral dimensions are respectively mapped to the determined target dimensions, and the spectral value after the merging dimensions is determined as the spectral value after dimension reduction.

[0071] After determining the restoration accuracy under each number of reduced dimensions, in order to improve the training efficiency of the spectral value calculation model, the restoration accuracy can be no less than the preset accuracy, and the minimum number of reduced dimensions is the adjustment target. The number of reduced dimensions is adjusted until the target number of dimensions that meets the adjustment target is determined.

[0072] According to the above content, the steps for calculating the restoration accuracy are relatively complicated. In order to save computing resources and reduce the time used to determine the target number of dimensions, the server can successively determine the restoration accuracy corresponding to the number of each reduced dimension, instead of determining the restoration accuracy corresponding to the number of each reduced dimension at one time.

[0073] Specifically, the server can adjust the number of reduced dimensions according to the minimum number of reduced dimensions as the adjustment target until the target number of dimensions that meets the adjustment target is determined. That is, according to the number of spectral dimensions of the second theoretical spectral value, a number of reduced dimensions is determined, and the restoration accuracy corresponding to the number of reduced dimensions is calculated. When the restoration accuracy is not less than the preset accuracy, the number of reduced dimensions is reduced according to the preset number of single iteration dimensions, and the restored data set is reconstructed according to the reduced number of reduced dimensions, and the restoration accuracy of the reduced number of reduced dimensions is re-determined until the restoration accuracy of the reduced number of reduced dimensions is less than the preset accuracy, and the number of reduced dimensions before the most recent reduction in the number of reduced dimensions is used as the target number of dimensions.

[0074] For example, if the number of spectral dimensions of the second theoretical spectral value is 16 dimensions, the second theoretical spectral value can be reduced in dimension. After reducing the second theoretical spectral value to 15 dimensions, determine the spectral value after restoring the 15-dimensional spectral value to 16 dimensions, compare it with the second theoretical spectral value, and calculate the restoration accuracy. If the restoration accuracy is still greater than the preset accuracy, then determine the corresponding restoration accuracy when the number of reduced dimensions is 13 dimensions, and judge whether it is less than the preset accuracy. If so, 15 dimensions are used as the target number of dimensions. If not, continue to adjust until it is determined that the restoration accuracy is less than the preset accuracy, and the number of reduced dimensions before the last reduction in the number of reduced dimensions is used as the target number of dimensions.

[0075] In addition, if the number of dimensions in a single iteration of the number of reduced dimensions is large, the server may miss the optimal target number of dimensions. Therefore, the server can also determine whether the number of dimensions in a single iteration is one dimension. When the number of dimensions in the most recent single iteration is greater than one dimension, the number of dimensions in a single iteration is reduced, and the number of dimensions in a single iteration is reduced from the number of dimensions before the most recent reduction in the number of reduced dimensions to the number of dimensions after the reduction, and the number of dimensions in the reduced dimensions is continued to be reduced until the adjustment target is met. When the number of dimensions in the most recent single iteration is equal to one dimension, the number of dimensions before the most recent reduction in the number of reduced dimensions is used as the target number of dimensions.

[0076] For example, as in the above embodiment, since the number of dimensions in the most recent single iteration is 2 dimensions, that is, it is directly adjusted from 15 dimensions to 13 dimensions, the server can reduce the number of dimensions in a single iteration, that is, set the number of dimensions in a single iteration to 1 dimension, thereby determining 14 dimensions as the number of reduced dimensions. Then determine the restoration accuracy corresponding to 14 dimensions, if the restoration accuracy corresponding to 14 dimensions is greater than or equal to the preset accuracy, then the target number of dimensions is 14 dimensions, if the restoration accuracy corresponding to 14 dimensions is less than the preset accuracy, then the target number of dimensions is 15 dimensions.

[0077] Of course, the server can also use the adjustment direction of increasing the number of reduced dimensions in rounds to adjust the number of reduced dimensions until the target number of dimensions that meets the adjustment target is determined. That is, the restoration accuracy corresponding to the minimum number of reduced dimensions is determined. When the restoration accuracy is less than the preset accuracy, the number of reduced dimensions is increased, and the restored data set is reconstructed according to the increased number of reduced dimensions, and the restoration accuracy of the increased number of reduced dimensions is re-determined until the restoration accuracy of the increased number of reduced dimensions is not less than the preset accuracy, and the number of reduced dimensions after the most recent increase is used as the target number of dimensions.

[0078] For example, if the minimum number of reduced dimensions is 1, the second theoretical spectral value can be reduced to 1 dimension, and then the spectral value after the 1-dimensional spectral value is restored to 16 dimensions is determined. Then, the restored spectral value is compared with the second theoretical spectral value, and the restoration accuracy is calculated. If the restoration accuracy is less than the preset accuracy, the restoration accuracy corresponding to the reduced dimension number of 3 dimensions is determined, and it is judged whether it is not less than the preset accuracy. If so, 3 dimensions is used as the target dimension number. If not, continue to adjust until it is determined that the restoration accuracy is not less than the preset accuracy, and the number of reduced dimensions after the most recent increase in the number of reduced dimensions is used as the target dimension number.

[0079] In addition, if the number of dimensions of the single iteration of the number of reduced dimensions is large, the server may miss the optimal target number of dimensions. Therefore, the server can also determine whether the number of dimensions of the single iteration is one dimension. When the number of dimensions of the most recent single iteration is equal to one dimension, the number of dimensions of the most recent reduced dimensions after the number of dimensions of the most recent adjustment is used as the target number of dimensions. When the number of dimensions of the most recent single iteration is greater than one dimension, the number of dimensions of the single iteration is reduced, and the number of dimensions of the most recent reduced dimensions before the most recent adjustment is continued to increase the number of dimensions of the most recent reduced dimensions, until the adjustment target is met.

[0080] For example, as in the above embodiment, since the number of dimensions in the most recent single iteration is two dimensions, that is, it is directly adjusted from 1 dimension to 3 dimensions, the server can reduce the number of dimensions in a single iteration, that is, set the number of dimensions in a single iteration to 1 dimension, so that 2 dimensions can be determined as the number of reduced dimensions. Then, the restoration accuracy corresponding to 2 dimensions is determined. If the restoration accuracy corresponding to 2 dimensions is greater than or equal to the preset accuracy, the target number of dimensions is 2 dimensions. If the restoration accuracy corresponding to 2 dimensions is less than the preset accuracy, the target number of dimensions is 3 dimensions.

[0081] In addition, in order to further improve the efficiency of determining the number of target dimensions and reduce the number of times the restoration accuracy is determined, the server can also use a binary search method to determine the number of target dimensions, that is, according to the number of spectral dimensions of the second theoretical spectral value, the number of reduced dimensions is determined by a binary search method, and the restoration accuracy corresponding to the number of reduced dimensions is determined. Based on the relationship between the restoration accuracy corresponding to the number of reduced dimensions and the preset accuracy, the range of the number of reduced dimensions is determined by a binary search method, and the number of reduced dimensions and the restoration accuracy are re-determined, until the number of reduced dimensions with a restoration accuracy not less than the preset accuracy and the minimum number is determined as the target number of dimensions.

[0082] For example, if the number of spectral dimensions of the second theoretical spectrum value is 16, then 8 dimensions can be determined as the number of reduced dimensions, and the corresponding restoration accuracy can be determined when the number of reduced dimensions is 8. If the restoration accuracy is greater than or equal to the preset accuracy, 4 dimensions are determined as the number of reduced dimensions for this round from 1 to 8 dimensions. If the restoration accuracy is less than the preset accuracy, 12 dimensions are determined as the number of reduced dimensions for this round from 8 to 16 dimensions. Based on this idea, the number of reduced dimensions with a restoration accuracy not less than the preset accuracy and the minimum number of reduced dimensions is determined as the target number of dimensions.

[0083] Furthermore, since the number of spectral dimensions of spectral values ​​is often very high, whether determining the number of reduced dimensions by rounds or by binary search, it is necessary to calculate the restoration accuracy corresponding to each reduced dimension number for multiple times, and the amount of calculation for restoration accuracy is large. This will result in a long time-consuming process to determine the target number of dimensions and high computing resource requirements. At the same time, although the relationship between the number of reduced dimensions and restoration accuracy is positively correlated, it is not a linear relationship. Therefore, in order to further reduce the number of calculations of restoration accuracy and improve the efficiency of determining the target number of dimensions, the server can also score each reduced dimension number in advance when determining the target number of dimensions. After determining the score of each reduced dimension number, the score is used instead of the reduced dimension number to determine the target number of dimensions.

[0084] Specifically, the server randomly determines the dimensionality reduction score from the scores corresponding to the number of each dimensionality reduction dimension, and then inputs the dimensionality reduction score into the preset dimensionality reduction function to determine the number of dimensionality reduction dimensions corresponding to the dimensionality reduction score and each spectral dimension after dimensionality reduction, and determines the restoration accuracy of the number of dimensionality reduction dimensions. The dimensionality reduction score is then adjusted with the restoration accuracy not less than the preset accuracy and the minimum number of dimensionality reduction dimensions as the adjustment target, and the dimensionality reduction function is used again to determine the number of dimensionality reduction dimensions corresponding to the adjusted dimensionality reduction score and each spectral dimension after dimensionality reduction, and the restoration accuracy corresponding to the adjusted number of dimensionality reduction dimensions is recalculated until the target number of dimensions that meet the adjustment target and each spectral dimension corresponding to the target number of dimensions are determined. Among them, the score of the number of dimensionality reduction dimensions is positively correlated with the number of dimensionality reduction dimensions, and is also positively correlated with the restoration accuracy corresponding to each number of dimensionality reduction dimensions, and the score corresponding to each number of dimensionality reduction dimensions is between 0 and 1.

[0085] For example, after determining the scores corresponding to the number of each reduced dimension, the server can first randomly determine a score from the scores corresponding to the number of each reduced dimension as the reduced dimension score, such as 0.99, and then input 0.99 into the preset reduced dimension function, so that the reduced dimension function outputs the number of reduced dimension and the corresponding spectral dimension corresponding to the score according to the input 0.99. Then determine the restoration accuracy corresponding to the number of reduced dimension, and judge whether the restoration accuracy is greater than or equal to the preset accuracy. If so, reduce the reduced dimension score, if not, increase the score. Since the reduced dimension score is nonlinear with the number of reduced dimension, when adjusting the score, the adjustment step size of the number of reduced dimension is often large, but the reduced dimension score is also positively correlated with the restoration accuracy of the corresponding number of reduced dimension, so the server can quickly approach the target number of dimensions by adjusting the reduced dimension score, thereby improving the efficiency of determining the target number of dimensions.

[0086] It should be noted that in one or more embodiments of this specification, the specific method used by the server to determine the score corresponding to each number of reduced dimensions is not limited. It can be based on the mapping relationship between the number of reduced dimensions and the corresponding restoration accuracy, and the score corresponding to each number of reduced dimensions is calculated by a preset formula. Other methods can also be used, and this specification does not limit this. When determining the dimensionality reduction score input into the dimensionality reduction function, the server can obtain the manually input score in addition to randomly determining it from the scores corresponding to the number of reduced dimensions, and input the manually input score into the dimensionality reduction function.

[0087] In addition, in one or more embodiments of the present specification, there is no restriction on the specific method used by the server to determine the dimensionality reduction function, which is used to determine the number of dimensionality reduction dimensions corresponding to the dimensionality reduction score according to the input dimensionality reduction score, and the remaining spectral dimensions when the second theoretical spectral value is reduced to the number of dimensionality reduction dimensions. Since there are many existing dimensionality reduction functions, they can be set according to actual needs, and this specification does not limit this.

[0088] Of course, when adjusting the dimensionality reduction score, the dimensionality reduction score input into the dimensionality reduction function can be adjusted in the direction of the adjustment in which the number of dimensionality reduction scores decreases round by round. Specifically, a larger score can be determined from the scores corresponding to the number of dimensionality reduction dimensions as the dimensionality reduction score, and the dimensionality reduction score can be input into the preset dimensionality reduction function to determine the number of dimensionality reduction dimensions corresponding to the dimensionality reduction score and the corresponding spectral dimensions, and then the restoration accuracy corresponding to the number of dimensionality reduction dimensions is calculated. If the restoration accuracy is not less than the preset accuracy, the dimensionality reduction score is reduced, and the number of dimensionality reduction dimensions and the corresponding restoration accuracy of the reduced dimensionality reduction score are determined again through the dimensionality reduction function until the determined restoration accuracy is less than the preset accuracy, and the number of dimensionality reduction dimensions before the most recent reduction in the dimensionality reduction score is used as the target number of dimensions, and the spectral dimensions corresponding to the target number of dimensions are determined.

[0089] For example, assuming that the determined dimensionality reduction score is 0.9999, the dimensionality reduction score can be reduced to 0.999 based on 0.9999. Then 0.999 is input into the dimensionality reduction function to determine the number of dimensionality reduction dimensions and each spectral dimension output by the dimensionality reduction function, and then the restoration accuracy corresponding to the number of dimensionality reduction dimensions is determined. If the restoration accuracy is not less than the preset accuracy, the input dimensionality reduction score can be reduced, such as 0.99. If the restoration accuracy is less than the preset accuracy, the number of dimensionality reduction dimensions corresponding to 0.999 can be used as the target number of dimensions.

[0090] In addition, when adjusting the dimensionality reduction score, the server can also adjust the dimensionality reduction score according to the adjustment direction of the dimensionality reduction score increasing round by round. Specifically, a smaller score can be determined from the scores corresponding to the number of dimensionality reduction dimensions as the dimensionality reduction score, and the dimensionality reduction score can be input into the preset dimensionality reduction function to determine the number of dimensionality reduction dimensions corresponding to the dimensionality reduction score and the corresponding spectral dimensions, and then the restoration accuracy corresponding to the number of dimensionality reduction dimensions is calculated. When the restoration accuracy is less than the preset accuracy, the dimensionality reduction score is increased, and the number of dimensionality reduction dimensions and the corresponding restoration accuracy after the dimensionality reduction score is increased are determined again through the dimensionality reduction function until the determined restoration accuracy is not less than the preset accuracy, and the number of dimensionality reduction dimensions after the most recent increase in the dimensionality reduction score is used as the target number of dimensions, and the spectral dimensions corresponding to the target number of dimensions are determined.

[0091] For example, assuming that the determined dimensionality reduction score is 0.9, the dimensionality reduction score can be increased on the basis of 0.9, such as 0.99, and then 0.99 can be input into the dimensionality reduction function to determine the number of dimensionality reduction dimensions and each spectral dimension output by the dimensionality reduction function, and then the restoration accuracy corresponding to the number of dimensionality reduction dimensions can be determined. If the restoration accuracy is less than the preset accuracy, the input dimensionality reduction score can be increased, such as 0.999. If the restoration accuracy is not less than the preset accuracy, the number of dimensionality reduction dimensions corresponding to 0.99 can be used as the target number of dimensions.

[0092] Furthermore, the server may also use a binary method to adjust the dimensionality reduction score to further reduce the number of adjustments to the number of dimensionality reduction dimensions when determining the target number of dimensions, thereby improving the efficiency of determining the target number of dimensions. Specifically, the median of the score can be determined from the scores corresponding to each number of dimensionality reduction dimensions as the dimensionality reduction score, and the dimensionality reduction score can be input into a preset dimensionality reduction function to determine the number of dimensionality reduction dimensions corresponding to the dimensionality reduction score and the corresponding spectral dimensions, and then the restoration accuracy corresponding to the number of dimensionality reduction dimensions is calculated. Based on the relationship between the restoration accuracy of the number of dimensionality reduction dimensions corresponding to the dimensionality reduction score and the preset accuracy, the dimensionality reduction score is adjusted by a binary method. Then, through the dimensionality reduction function, the number of dimensionality reduction dimensions and the corresponding restoration accuracy after reducing the dimensionality reduction score are re-determined through the dimensionality reduction function until the target number of dimensions that meet the adjustment target and the spectral dimensions corresponding to the target number of dimensions are determined.

[0093] For example, if the median of the score corresponding to each number of reduced dimensions is determined to be 0.8, 0.8 can be input into the dimensionality reduction function to determine the number of reduced dimensions and each spectral dimension output by the dimensionality reduction function. Then, when the dimensionality reduction score is determined to be 0.8, the number of reduced dimensions output by the dimensionality reduction function corresponds to the restoration accuracy. If the restoration accuracy is less than the preset accuracy, 0.9 is determined from 0.8 to 1 as the adjusted dimensionality reduction score. If the restoration accuracy is greater than the preset accuracy, 0.4 is determined from 0 to 0.8 as the adjusted dimensionality reduction score. Then, the dimensionality reduction function is used to re-determine the number of reduced dimensions and the corresponding restoration accuracy after reducing the dimensionality reduction score, until the target number of dimensions that meet the adjustment target and the spectral dimensions corresponding to the target number of dimensions are determined. If the restoration accuracy is equal to the preset accuracy, the number of reduced dimensions corresponding to the dimensionality reduction score can be used as the target number of dimensions.

[0094] In addition, in step S300, when determining the annotations for training the spectral value calculation model, the spectral values ​​corresponding to each first structural parameter set having the same number of spectral dimensions as the spectral values ​​of the grating to be measured can also be directly determined as annotations. Then, in step S304, when training the spectral value calculation model to be trained, since the spectral values ​​output by the constructed spectral value calculation model are the target number of dimensions, it is also necessary to restore the spectral values ​​output by the spectral value calculation model to training spectral values ​​having the same number of annotated spectral dimensions, and then train the spectral value calculation model with the optimization goal of minimizing the difference between the training spectral values ​​and the annotations.

[0095] Furthermore, in order to improve the model accuracy of the spectral value calculation model to be trained and enhance the generalization ability of the spectral value calculation model, the server can also train the spectral value calculation model through multiple rounds of iterations, that is, Figure 5 As shown, Figure 5A schematic diagram of the training process of a spectral value calculation model provided in this specification.

[0096] S500: Acquire a first structural parameter set of a grating model.

[0097] S502: Determine the number of training samples to be used in this round of iteration process, sample the first structure parameter set, and obtain a structure point sampling set.

[0098] S504: Using the structure point sampling set as training samples, and determining the output of the spectrum value calculation model as the training spectrum value.

[0099] S506: Taking the difference between the training spectral values ​​corresponding to the structure point sampling set and the annotations corresponding to the structure point sampling set as the minimum as an optimization goal, training the spectral value calculation model.

[0100] S508: Determine whether the training effect of the spectral value calculation model meets expectations. If not, execute step S510. If yes, end the training.

[0101] S510: Determine the number of training samples used in the next round of iteration according to the number of training samples used in the current round of iteration.

[0102] It should be noted that before the end of training, it is also possible to first determine whether the spectral value training model has reached the training end condition, and then determine whether to end the training. In addition, in one or more embodiments of this specification, the server is not limited to the specific method used to sample the structure parameter set in each round of training, such as random point method, Gaussian distribution sampling, etc., that is, when sampling the structure parameter set to determine the training sample in each round of training, the sampling method used can be the same or different, and can be set according to actual needs.

[0103] When determining the number of training samples to be used in the next round of iteration according to the number of training samples used in the current round of iteration, the server may use the same number of training samples in each round of training. In order to increase the training efficiency of the model, the server may also use different numbers of training samples in each round of training to train the spectral value calculation model to be trained. For example, the server uses an incremental method to determine the number of training samples in each round, so that in the early stage of model training, the spectral value calculation model to be trained is trained with fewer training samples, which speeds up the convergence of the model and avoids overfitting a small amount of data. Then, as the number of training samples increases in each round, the spectral value calculation model is exposed to more diverse data, thereby improving the generalization ability of the model.

[0104] Specifically, the server determines the number of structure points in the training samples of each round of iteration in an incremental manner, samples the structure parameter set by random scattering according to the number of structure points in the iteration, and uses the sampled structure points as the training samples of the iteration. Of course, the number of structure points used in the next round of iteration can be increased after several rounds of iteration. Or when the duration of training the spectral value calculation model reaches a threshold, the number of structure points used can be increased.

[0105] It should be noted that in one or more embodiments of the present specification, there is no limit on the specific method used by the server to sample the structure parameter set. The server can resample the structure parameter set in each round according to the number of structure points required in the round of training, and use the sampling results as training samples for the current round of training. Before each round of training, the server can resample each structure point in the first structure parameter set, and the number of samples can be unlimited. Then, the structure points obtained by this sampling can be used together with the training samples used in the previous round of training as training samples for this round of training. The above two methods can also be combined to alternately determine the training samples required for each round of training. There are many methods that can be used, which can be set according to actual needs.

[0106] When the server determines the number of structural points to be used in the first iterative training, the server may use a preset number as the number of structural points to be used in the first iterative training, or it may be calculated by the multidimensional central limit theorem based on the accuracy and confidence level required by the model, or it may be calculated by other methods, and this manual does not impose any restrictions on this.

[0107] In addition, in addition to determining the number of structural points in the training samples of each iteration process in an incremental manner, the server can also train the spectral value calculation model by alternating the number of samples, that is, through a small number of sample rounds, the convergence of the spectral value calculation model can be accelerated to avoid overfitting, and through a large number of sample rounds, the spectral value calculation model can be globally optimized to improve the generalization ability.

[0108] Specifically, the server can determine the number of structural points to be adopted in the next round based on the number of structural points in the training samples adopted in the current round and the number of structural points in the training samples adopted in the previous round. That is, if the number of structural points adopted in the previous round is greater than the number of structural points adopted in the current round, the number of structural points adopted in the next round is also greater than the number of structural points adopted in the current round. If the number of structural points adopted in the previous round is less than the number of structural points adopted in the current round, the number of structural points adopted in the next round is also less than the number of structural points adopted in the current round. The spectral value calculation model is trained alternately with large and small samples. Of course, the number of structural points adopted in the next round of iteration can also be changed after several rounds of iteration. Or when the duration of training the spectral value calculation model reaches a threshold, the number of structural points adopted can be changed.

[0109] Furthermore, the server may also preset a number of sampling numbers, and then, before each round of iterative training, select a corresponding sampling number from the preset sampling numbers according to the requirements as the number of structural points required for the current round of iterative training. Since there are many methods that can be used, this specification does not limit this, and it can be set according to actual needs.

[0110] Furthermore, when determining the number of structural points in the training samples of each round of iteration, the server may perform sampling once before each round of iteration as described above. Of course, it is also possible to perform sampling of the first structural parameter set several times before the start of training, and then determine the training samples used in each round of iteration according to the number of structural points included in each structural point sampling set obtained by sampling.

[0111] That is, after sampling the first set of structural parameters, the server can also determine at least two training sets containing different numbers of structural points based on the structural points obtained by sampling when determining the structural point sampling set. Then, when training the spectral value calculation model, it is ensured that the training set used in each round of training is different from the training set used in the previous round of training, so as to achieve alternating sample quantity training, or the training sets used in every few rounds of training are different from the training sets used in the previous rounds.

[0112] For example, the server divides the sampled structural points into two training sets with different numbers of structural points, wherein the training set with a larger number of structural points is used as a large sample, and the training set with a smaller number of structural points is used as a small sample, and then the large sample is used as a training sample for odd-numbered trainings, and the small sample is used as a training sample for even-numbered trainings. Of course, the large sample can also be used as a training sample for even-numbered trainings, and the small sample can be used as a training sample for odd-numbered trainings.

[0113] In addition, in order to further speed up the training efficiency of the spectral value calculation model, when adjusting the parameters of the model, the server can also reduce the training step of the parameters as the number of training times increases, that is, reduce the learning rate of the spectral value calculation model to prevent missing the optimal solution due to too long training step.

[0114] Specifically, the server may first adjust the parameters of the spectral value calculation model according to a preset training step size to reduce the difference between the training spectral value and the corresponding first theoretical spectral value. When the model training reaches a preset value, the training time reaches a preset time, or the size of the difference reaches a preset threshold, the preset training step size is reduced, and the model parameters of the spectral value calculation model are adjusted again according to the reduced preset training step size.

[0115] Furthermore, since the changes in the differences of the spectral value calculation model during the training process are often in an oscillating state, in order to determine the optimal solution of the spectral value calculation model during the training process, the server can also record the differences determined in each round of training of the spectral value calculation model during the training process and the model parameters of the spectral value calculation model before adjusting the parameters in this round of training. When the conditions for stopping training are met, the target difference is determined based on the minimum value of the recorded differences, and the model parameters corresponding to the target difference are used as the model parameters of the spectral value calculation model.

[0116] In addition, it should be noted that in one or more embodiments of the present specification, the trained spectral value calculation model is obtained by training only for one type of structure point, that is, the type and number of structure parameters contained in each input structure point are fixed. When calculating the first theoretical spectral value, the type and number of structure parameters of the input model should be the same as the type and number of structure parameters contained in the structure point used when training the spectral value calculation model. If they are different, a new spectral value calculation model needs to be trained. Figure 1 The spectral value calculation model trained by the grating model shown cannot be used for Figure 2 Construction of the native database of the raster model shown.

[0117] This specification also provides a corresponding spectral value calculation model training device, such as Figure 6 As shown, Figure 5 A schematic diagram of a spectral value calculation model training device provided in this specification.

[0118] An acquisition module 600 is used to determine the target number of dimensions, and acquire a first set of structural parameters of a grating model as a training sample, and a spectral value corresponding to the first set of structural parameters at the target number of dimensions as a label, wherein the grating model is established based on the structure of the grating to be measured; A construction module 601 is used to construct a spectral value calculation model to be trained according to the target dimension quantity; The training module 602 is used to input the training sample into the spectral value calculation model, determine the output of the spectral value calculation model as the training spectral value, and train the spectral value calculation model with the minimum difference between the training spectral value and the annotation as the optimization goal.

[0119] Optionally, the acquisition module 600 is used to obtain a second set of structural parameters of the grating model and a second theoretical spectral value corresponding to the grating model to determine the original data set; and determine the target number of dimensions based on the restoration accuracy of the original data set at each number of reduced dimensions.

[0120] Optionally, the acquisition module 600 is used to determine a restored data set of the original data set according to the second theoretical spectrum value; and determine a restoration accuracy of the restored data set according to the original data set and the restored data set.

[0121] Optionally, the acquisition module 600 is used to determine the number of reduced dimensions, reduce the second theoretical spectral value to the number of reduced dimensions and then restore it, determine the restored spectral value, and construct a restored data set.

[0122] Optionally, the acquisition module 600 is used to determine the spectral dimensions included in the second theoretical spectral value; for each spectral dimension, determine the comprehensive correlation between the spectral dimension and other spectral dimensions according to the second theoretical spectral value; according to the determined comprehensive correlation, determine the target dimensions corresponding to the number of reduced dimensions from each spectral dimension; and reduce the second theoretical spectral value according to the target dimensions.

[0123] Optionally, the acquisition module 600 is used to match the restored data set with the spectral values ​​in the original data set; and determine the restoration accuracy according to the matching result, and the matching result is positively correlated with the restoration accuracy.

[0124] Optionally, the acquisition module 600 is used to adjust the number of reduced dimensions according to the restoration accuracy, with the restoration accuracy being not less than a preset accuracy and the number of reduced dimensions being the minimum as an adjustment target, until a target number of dimensions that meets the adjustment target is determined.

[0125] Optionally, the number of reduced dimensions is adjusted according to the adjustment direction of the reduction in the number of reduced dimensions in rounds, and an acquisition module 600 is used to reduce the number of reduced dimensions according to a preset single-iteration dimension number when the restoration accuracy is not less than the preset accuracy, reconstruct the restored data set according to the reduced number of reduced dimensions, and re-determine the restoration accuracy of the reduced number of reduced dimensions, until the restoration accuracy of the reduced number of reduced dimensions is less than the preset accuracy, and the number of reduced dimensions before the most recent reduction in the number of reduced dimensions is used as the target number of dimensions.

[0126] Optionally, the acquisition module 600 is used to reduce the number of dimensions of a single iteration when the number of dimensions of the most recent single iteration is greater than the number of dimensions, and continue to reduce the number of dimensions of the reduced dimensions from the number of dimensions before the most recent reduction to the number of dimensions of the reduced dimensions, until the adjustment target is met; when the number of dimensions of the most recent single iteration is equal to the number of dimensions, the number of dimensions of the reduced dimensions before the most recent reduction is used as the target number of dimensions.

[0127] Optionally, the number of reduced dimensions is adjusted according to the adjustment direction of increasing the number of reduced dimensions round by round, and an acquisition module 600 is used to increase the number of reduced dimensions when the restoration accuracy is less than a preset accuracy, reconstruct the restored data set according to the increased number of reduced dimensions, and re-determine the restoration accuracy of the increased number of reduced dimensions, until the restoration accuracy of the increased number of reduced dimensions is not less than the preset accuracy, and the number of reduced dimensions after the most recent increase is used as the target number of dimensions.

[0128] Optionally, the acquisition module 600 is used to use the number of reduced dimensions after the last adjustment of the number of reduced dimensions as the target number of dimensions when the number of dimensions in the most recent single iteration is equal to the number of one dimension; when the number of dimensions in the most recent single iteration is greater than the number of one dimension, reduce the number of dimensions in the single iteration, and continue to increase the number of reduced dimensions from the number of reduced dimensions before the most recent adjustment of the number of reduced dimensions, with the number of dimensions in the single iteration after the reduction, until the adjustment target is met.

[0129] Optionally, the acquisition module 600 is used to determine the number of reduced dimensions by dichotomy according to the number of spectral dimensions of the second theoretical spectral value, and determine the restoration accuracy corresponding to the number of reduced dimensions; based on the relationship between the restoration accuracy corresponding to the number of reduced dimensions and the preset accuracy, determine the range of the number of reduced dimensions by dichotomy, redetermine the number of reduced dimensions, and redetermine the restoration accuracy, until the minimum number of reduced dimensions with a restoration accuracy not less than the preset accuracy is determined as the target number of dimensions.

[0130] Optionally, an acquisition module 600 is used to determine a dimensionality reduction score, input the dimensionality reduction score into a preset dimensionality reduction function, determine the number of dimensionality reduction dimensions corresponding to the dimensionality reduction score and each spectral dimension after dimensionality reduction, and determine the restoration accuracy of the number of dimensionality reduction dimensions; with the restoration accuracy being not less than a preset accuracy and the number of dimensionality reduction dimensions being minimized as an adjustment target, adjust the dimensionality reduction score, and re-pass the dimensionality reduction function to determine the number of dimensionality reduction dimensions corresponding to the adjusted dimensionality reduction score and each spectral dimension after dimensionality reduction, and recalculate the restoration accuracy corresponding to the adjusted number of dimensionality reduction dimensions, until the target number of dimensions that meet the adjustment target and each spectral dimension corresponding to the target number of dimensions are determined.

[0131] Optionally, the acquisition module 600 is used to adjust the dimensionality reduction score according to the adjustment direction of the gradual decrease in the number of dimensionality reduction scores; when the restoration accuracy is not less than the preset accuracy, the dimensionality reduction score is reduced, and the number of dimensionality reduction dimensions and the corresponding restoration accuracy after reducing the dimensionality reduction score are re-determined through the dimensionality reduction function until the determined restoration accuracy is less than the preset accuracy, and the number of dimensionality reduction dimensions before the most recent reduction of the dimensionality reduction score is used as the target dimension number, and the spectral dimensions corresponding to the target dimension number are determined.

[0132] Optionally, the acquisition module 600 is used to adjust the dimensionality reduction score according to the adjustment direction of the dimensionality reduction score increasing round by round; when the restoration accuracy is less than the preset accuracy, the dimensionality reduction score is increased, and the number of dimensionality reduction dimensions and the corresponding restoration accuracy after the dimensionality reduction score is increased are re-determined through the dimensionality reduction function until the determined restoration accuracy is not less than the preset accuracy, and the number of dimensionality reduction dimensions after the dimensionality reduction score is most recently increased is used as the target dimension number, and the spectral dimensions corresponding to the target dimension number are determined.

[0133] Optionally, the acquisition module 600 is used to adjust the dimensionality reduction score by dichotomy based on the relationship between the restoration accuracy of the number of dimensionality reduction dimensions corresponding to the dimensionality reduction score and the preset accuracy; and re-determine the number of dimensionality reduction dimensions and the corresponding restoration accuracy after reducing the dimensionality reduction score by the dimensionality reduction function, until the target number of dimensions that meet the adjustment target and the spectral dimensions corresponding to the target number of dimensions are determined.

[0134] Optionally, a construction module 601 is used to determine the number of neurons in each network layer except the input layer of the spectral value calculation model to be trained according to the target number of dimensions, and the target number of dimensions is positively correlated with the number of neurons in each network layer.

[0135] Optionally, the training module 602 is used to adjust each model parameter in the spectral value calculation model according to the size of the difference according to a preset step size; when the number of adjustments reaches a preset value, reduce the preset step size, and adjust the model parameters again according to the reduced preset step size.

[0136] Optionally, the training module 602 is used to train the spectral value calculation model through multiple rounds of iterations, wherein the first structure parameter set includes a number of structure points, wherein: the number of structure points in the training samples of each round of iterations is determined in an incremental manner; the first structure parameter set is sampled according to the number of structure points in this round of iterations, and each structure point obtained by sampling is used as a training sample for this round of iterations.

[0137] Optionally, the training module 602 is used to train the spectral value calculation model through multiple rounds of iterations, wherein the first structural parameter set includes a number of structural points, wherein: the first structural parameter set is sampled at least twice to determine at least two training sets containing different numbers of structural points; for each round of iterations, a training set different from the training set used in the previous round of iterations is determined and used for training in the current round of iterations.

[0138] Optionally, the training module 602 is used to record the differences determined in each round of training of the spectral value calculation model during the training process and the model parameters of the spectral value calculation model before the parameters are adjusted in this round of training; when the condition for stopping training is met, the target difference is determined according to the recorded differences; and the model parameters corresponding to the target difference are used as the model parameters of the spectral value calculation model.

[0139] Optionally, the training module 602 is used to establish a theoretical spectral value database through multiple first theoretical spectral values; match the spectral values ​​of the grating model to be measured with each first theoretical spectral value in the theoretical spectral database; and use the structural parameters corresponding to the successfully matched spectral values ​​as the structural parameters of the grating model to be measured.

[0140] It should also be noted that the terms "include", "comprises" or any other variations thereof are intended to cover non-exclusive inclusion, so that a process, method, commodity or device including a series of elements includes not only those elements, but also other elements not explicitly listed, or also includes elements inherent to such process, method, commodity or device. In the absence of more restrictions, the elements defined by the sentence "comprises a ..." do not exclude the existence of other identical elements in the process, method, commodity or device including the elements.

[0141] Each embodiment in this specification is described in a progressive manner, and the same or similar parts between the embodiments can be referred to each other, and each embodiment focuses on the differences from other embodiments. In particular, for the system embodiment, since it is basically similar to the method embodiment, the description is relatively simple, and the relevant parts can be referred to the partial description of the method embodiment.

[0142] This specification also provides a computer-readable storage medium, which stores a computer program, which can be used to execute the above Figure 4 A spectral value calculation model training method is provided.

[0143] This manual also provides Figure 7 As shown in FIG7 , at the hardware level, the electronic device includes a processor, an internal bus, a network interface, a memory, and a non-volatile memory, and may also include other hardware required for the business. The processor reads the corresponding computer program from the non-volatile memory into the memory and then runs it to achieve the above Figure 4 Of course, in addition to the software implementation, this specification does not exclude other implementations, such as logic devices or a combination of software and hardware, etc., that is, the execution subject of the following processing flow is not limited to each logic unit, but can also be hardware or logic devices.

[0144] In the 1990s, it was very clear whether the improvement of a technology was hardware improvement (for example, improvement of the circuit structure of diodes, transistors, switches, etc.) or software improvement (improvement of the method flow). However, with the development of technology, many improvements of the method flow today can be regarded as direct improvements of the hardware circuit structure. Designers almost always obtain the corresponding hardware circuit structure by programming the improved method flow into the hardware circuit. Therefore, it cannot be said that the improvement of a method flow cannot be implemented with hardware entity modules. For example, a programmable logic device (PLD) (such as a field programmable gate array (FPGA)) is such an integrated circuit whose logical function is determined by the user's programming of the device. Designers can "integrate" a digital system on a PLD by programming it themselves, without having to ask chip manufacturers to design and make dedicated integrated circuit chips. Moreover, nowadays, instead of manually making integrated circuit chips, this kind of programming is mostly implemented by "logic compiler" software, which is similar to the software compiler used when developing and writing programs, and the original code before compilation must also be written in a specific programming language, which is called hardware description language (HDL). There is not only one kind of HDL, but many kinds, such as ABEL (Advanced Boolean Expression Language), AHDL (Altera Hardware Description Language), Confluence, CUPL (Cornell University Programming Language), HDCal, JHDL (Java Hardware Description Language), Lava, Lola, MyHDL, PALASM, RHDL (Ruby Hardware Description Language), etc. The most commonly used ones are VHDL (Very-High-Speed ​​Integrated Circuit Hardware Description Language) and Verilog. Those skilled in the art should also know that it is only necessary to program the method flow slightly in the above-mentioned hardware description languages ​​and program it into the integrated circuit, and then it is easy to obtain the hardware circuit that implements the logic method flow.

[0145] The controller may be implemented in any suitable manner, for example, the controller may take the form of a microprocessor or processor and a computer-readable medium storing a computer-readable program code (e.g., software or firmware) executable by the (micro)processor, a logic gate, a switch, an application-specific integrated circuit (ASIC), a programmable logic controller, and an embedded microcontroller, examples of which include but are not limited to the following microcontrollers: ARC 625D, Atmel AT91SAM, Microchip PIC18F26K20, and Silicone Labs C8051F320, and the memory controller may also be implemented as part of the control logic of the memory. It is also known to those skilled in the art that, in addition to implementing the controller in a purely computer-readable program code manner, the controller may be implemented in the form of a logic gate, a switch, an application-specific integrated circuit, a programmable logic controller, and an embedded microcontroller by logically programming the method steps. Therefore, such a controller may be considered as a hardware component, and the devices for implementing various functions included therein may also be considered as structures within the hardware component. Or even, the devices for implementing various functions may be considered as both software modules for implementing the method and structures within the hardware component.

[0146] The systems, devices, modules or units described in the above embodiments may be implemented by computer chips or entities, or by products with certain functions. A typical implementation device is a computer. Specifically, the computer may be, for example, a personal computer, a laptop computer, a cellular phone, a camera phone, a smart phone, a personal digital assistant, a media player, a navigation device, an email device, a game console, a tablet computer, a wearable device, or a combination of any of these devices.

[0147] For the convenience of description, the above device is described in various units according to their functions. Of course, when implementing this specification, the functions of each unit can be implemented in the same or multiple software and / or hardware.

[0148] It will be appreciated by those skilled in the art that embodiments of the present invention may be provided as methods, systems, or computer program products. Therefore, the present invention may take the form of a complete hardware embodiment, a complete software embodiment, or an embodiment combining software and hardware. Furthermore, the present invention may take the form of a computer program product implemented 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.

[0149] The present invention is described with reference to flowcharts and / or block diagrams of methods, devices (systems), and computer program products according to embodiments of the present invention. It should be understood that each process and / or block in the flowchart and / or block diagram, as well as the combination of processes and / or blocks in the flowchart and / or block diagram, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, an embedded processor, or other programmable data processing device to produce a machine, so that the instructions executed by the processor of the computer or other programmable data processing device generate instructions for implementing the processes in the flowchart and / or block diagram. Figure 1 A process or multiple processes and / or boxes Figure 1 A device that provides the functions specified in a block or multiple blocks.

[0150] These computer program instructions may also be stored in a computer-readable memory capable of directing a computer or other programmable data processing device to operate in a specific manner, so that the instructions stored in the computer-readable memory produce an article of manufacture comprising an instruction device, which implements the process Figure 1 A process or multiple processes and / or boxes Figure 1 A function specified in one or more boxes.

[0151] These computer program instructions can also be loaded onto a computer or other programmable data processing device so that a series of operating steps are executed on the computer or other programmable device to produce a computer-implemented process, thereby providing instructions for implementing the process. Figure 1 A process or multiple processes and / or boxes Figure 1 The steps for the functions specified in one or more boxes.

[0152] In a typical configuration, a computing device includes one or more processors (CPU), input / output interfaces, network interfaces, and memory.

[0153] The memory may include non-permanent storage in a computer-readable medium, random access memory (RAM) and / or non-volatile memory in the form of read-only memory (ROM) or flash RAM. The memory is an example of a computer-readable medium.

[0154] Computer readable media include permanent and non-permanent, removable and non-removable media that can be implemented by any method or technology to store information. Information can be computer readable instructions, data structures, program modules or other data. Examples of computer storage media include, but are not limited to, phase change memory (PRAM), static random access memory (SRAM), dynamic random access memory (DRAM), other types of random access memory (RAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory or other memory technology, compact disk read-only memory (CD-ROM), digital versatile disk (DVD) or other optical storage, magnetic cassettes, magnetic tape magnetic disk storage or other magnetic storage devices or any other non-transmission media that can be used to store information that can be accessed by a computing device. As defined herein, computer readable media does not include temporary computer readable media (transitory media), such as modulated data signals and carrier waves.

[0155] It should also be noted that the terms "include", "comprises" or any other variations thereof are intended to cover non-exclusive inclusion, so that a process, method, commodity or device including a series of elements includes not only those elements, but also other elements not explicitly listed, or also includes elements inherent to such process, method, commodity or device. In the absence of more restrictions, the elements defined by the sentence "comprises a ..." do not exclude the existence of other identical elements in the process, method, commodity or device including the elements.

[0156] It should be understood by those skilled in the art that the embodiments of this specification may be provided as methods, systems or computer program products. Therefore, this specification may take the form of a complete hardware embodiment, a complete software embodiment or an embodiment combining software and hardware. Moreover, this specification may take the form of a computer program product implemented 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.

[0157] This specification may be described in the general context of computer-executable instructions executed by a computer, such as program modules. Generally, program modules include routines, programs, objects, components, data structures, etc. that perform specific tasks or implement specific abstract data types. This specification may also be practiced in distributed computing environments where tasks are performed by remote processing devices connected through a communication network. In a distributed computing environment, program modules may be located in local and remote computer storage media, including storage devices.

[0158] Each embodiment in this specification is described in a progressive manner, and the same or similar parts between the embodiments can be referred to each other, and each embodiment focuses on the differences from other embodiments. In particular, for the system embodiment, since it is basically similar to the method embodiment, the description is relatively simple, and the relevant parts can be referred to the partial description of the method embodiment.

[0159] The above description is only an embodiment of this specification and is not intended to limit this specification. For those skilled in the art, this specification may have various changes and variations. Any modification, equivalent replacement, improvement, etc. made within the spirit and principle of this specification should be included in the scope of the claims of this application.

Claims

1. A spectral value calculation model training method, characterized in that: include: Determine the target number of dimensions, and obtain a first set of structural parameters of a grating model as a training sample, and a spectral value corresponding to the first set of structural parameters under the target number of dimensions as a label, wherein the grating model is established based on the structure of the grating to be measured; According to the target dimension number, construct a spectral value calculation model to be trained; The training sample is input into the spectral value calculation model, and the output of the spectral value calculation model is determined to be the training spectral value. The spectral value calculation model is trained with the minimum difference between the training spectral value and the annotation as the optimization goal, wherein the trained spectral value calculation model is used to determine the corresponding first theoretical spectral value according to the input structural parameters.

2. The method according to claim 1, characterized in that The step of determining the number of target dimensions specifically includes: Acquire a second structural parameter set of the grating model and a second theoretical spectrum value corresponding to the grating model to determine an original data set; The target number of dimensions is determined according to the restoration accuracy of the original data set at each number of reduced dimensions.

3. The method according to claim 2, characterized in that The steps to determine the restoration accuracy include: determining a restored data set of the original data set according to the second theoretical spectrum value; The restoration accuracy of the restored data set is determined according to the original data set and the restored data set.

4. The method according to claim 3, characterized in that The step of determining the restored data set of the original data set according to the second theoretical spectrum value specifically includes: The number of reduced dimensions is determined, the second theoretical spectrum value is reduced to the number of reduced dimensions and then restored, the restored spectrum value is determined, and a restored data set is constructed.

5. The method according to claim 4, characterized in that The step of reducing the dimension of the second theoretical spectrum value to the number of reduced dimensions specifically includes: Determining each spectral dimension included in the second theoretical spectral value; For each spectral dimension, determining the comprehensive correlation between the spectral dimension and other spectral dimensions according to the second theoretical spectral value; According to the determined comprehensive correlation, determining each target dimension corresponding to the number of dimension reduction dimensions from each spectral dimension; The second theoretical spectrum value is reduced in dimension according to each target dimension.

6. The method according to claim 3, characterized in that The step of determining the restoration accuracy of the restored data set according to the original data set and the restored data set specifically includes: matching the restored data set with spectral values ​​in the original data set; The restoration accuracy is determined according to the matching result, and the matching result is positively correlated with the restoration accuracy.

7. The method according to claim 2, characterized in that The step of determining the target number of dimensions according to the restoration accuracy of the original data set at each number of reduced dimensions specifically includes: According to the restoration accuracy, with the restoration accuracy not less than the preset accuracy and the minimum number of reduced dimensions as the adjustment target, the number of reduced dimensions is adjusted until a target number of dimensions that meets the adjustment target is determined.

8. The method according to claim 7, characterized in that Adjusting the number of reduced dimensions according to the adjustment direction of decreasing the number of reduced dimensions round by round; The step of adjusting the number of reduced dimensions according to the restoration accuracy, taking the restoration accuracy not less than the preset accuracy and the number of reduced dimensions as the adjustment target, until determining the target number of dimensions that meets the adjustment target, specifically includes: When the restoration accuracy is not less than the preset accuracy, the number of reduced dimensions is reduced according to the preset number of single iteration dimensions, the restored data set is reconstructed according to the reduced number of reduced dimensions, and the restoration accuracy of the reduced number of reduced dimensions is re-determined until the restoration accuracy of the reduced number of reduced dimensions is less than the preset accuracy. The number of reduced dimensions before the most recent reduction in the number of reduced dimensions is used as the target number of dimensions.

9. The method according to claim 8, characterized in that The step of taking the number of dimension reduction dimensions before the last adjustment of the number of dimension reduction dimensions as the target number of dimensions specifically includes: When the number of dimensions in the most recent single iteration is greater than the number of dimensions, the number of dimensions in the single iteration is reduced, and starting from the number of dimensions before the most recent reduction of the number of dimensions, the number of dimensions in the single iteration is continued to be reduced with the number of dimensions in the single iteration after the reduction until the adjustment target is met; When the number of dimensions in the most recent single iteration is equal to one number of dimensions, the number of dimensions reduced before the most recent reduction of the number of dimensions reduced is used as the target number of dimensions.

10. The method according to claim 7, characterized in that Adjusting the number of reduced dimensions according to the adjustment direction of increasing the number of reduced dimensions round by round; The step of adjusting the number of reduced dimensions according to the restoration accuracy, taking the restoration accuracy not less than the preset accuracy and the number of reduced dimensions as the adjustment target, until determining the target number of dimensions that meets the adjustment target, specifically includes: When the restoration accuracy is less than the preset accuracy, the number of reduced dimensions is increased, the restored data set is reconstructed according to the increased number of reduced dimensions, and the restoration accuracy of the increased number of reduced dimensions is re-determined until the restoration accuracy of the increased number of reduced dimensions is not less than the preset accuracy, and the number of reduced dimensions after the most recent increase is used as the target number of dimensions.

11. The method according to claim 10, characterized in that The step of taking the number of dimension reduction dimensions after the most recent adjustment as the target number of dimensions specifically includes: When the number of dimensions in the most recent single iteration is equal to the number of one dimension, the number of dimensions reduced after the most recent adjustment of the number of dimensions reduced is used as the target number of dimensions; When the number of dimensions in the most recent single iteration is greater than the number of dimensions, the number of dimensions in the single iteration is reduced, and the number of dimensions reduced is continued to be increased from the number of dimensions reduced before the most recent adjustment of the number of dimensions reduced, with the number of dimensions reduced after the reduction, until the adjustment target is met.

12. The method according to claim 7, characterized in that The step of adjusting the number of reduced dimensions according to the restoration accuracy, taking the restoration accuracy not less than the preset accuracy and the number of reduced dimensions as the adjustment target, until determining the target number of dimensions that meets the adjustment target, specifically includes: According to the number of spectral dimensions of the second theoretical spectral value, determining the number of reduced dimensions by a dichotomy method, and determining the restoration accuracy corresponding to the number of reduced dimensions; Based on the relationship between the restoration accuracy corresponding to the number of reduced dimensions and the preset accuracy, the range of the number of reduced dimensions is determined according to the bisection method, and the number of reduced dimensions is redetermined, as well as the restoration accuracy, until the minimum number of reduced dimensions with a restoration accuracy not less than the preset accuracy is determined as the target number of dimensions.

13. The method according to claim 2, characterized in that The step of determining the target number of dimensions according to the restoration accuracy of the original data set at each number of reduced dimensions specifically includes: Determine a dimensionality reduction score, input the dimensionality reduction score into a preset dimensionality reduction function, determine the number of dimensionality reduction dimensions corresponding to the dimensionality reduction score and each spectral dimension after dimensionality reduction; Determining the restoration accuracy of the number of reduced dimensions; The restoration accuracy is not less than the preset accuracy and the number of reduced dimensions is minimized as the adjustment target, the dimensionality reduction score is adjusted, and the dimensionality reduction function is re-used to determine the number of reduced dimensions and the spectral dimensions after the dimensionality reduction corresponding to the adjusted dimensionality reduction score, and the restoration accuracy corresponding to the adjusted number of reduced dimensions is recalculated until the target number of dimensions that meet the adjustment target and the spectral dimensions corresponding to the target number of dimensions are determined.

14. The method according to claim 13, characterized in that Adjusting the dimensionality reduction score according to the adjustment direction of decreasing the number of dimensionality reduction scores round by round; The step of adjusting the number of dimension reduction dimensions, adjusting the dimension reduction score, and re-using the dimension reduction function to determine the number of dimension reduction dimensions corresponding to the adjusted dimension reduction score and each spectral dimension after dimension reduction, and recalculating the restoration accuracy corresponding to the adjusted number of dimension reduction dimensions until determining the target number of dimensions that meet the adjustment target and each spectral dimension corresponding to the target number of dimensions, specifically includes: When the restoration accuracy is not less than the preset accuracy, the dimensionality reduction score is lowered, and the dimensionality reduction function is used to re-determine the number of reduced dimensions and the corresponding restoration accuracy after reducing the dimensionality reduction score, until the determined restoration accuracy is less than the preset accuracy. The number of reduced dimensions before the most recent reduction of the dimensionality reduction score is taken as the target dimension number, and the spectral dimensions corresponding to the target dimension number are determined.

15. The method according to claim 13, characterized in that Adjusting the dimensionality reduction score according to the adjustment direction of the dimensionality reduction score increasing round by round; The step of adjusting the dimensionality reduction score, re-passing the dimensionality reduction function, determining the number of dimensionality reduction dimensions corresponding to the adjusted dimensionality reduction score and each spectral dimension after dimensionality reduction, and recalculating the restoration accuracy corresponding to the adjusted number of dimensionality reduction dimensions until determining the target number of dimensions that meet the adjustment target and each spectral dimension corresponding to the target number of dimensions, specifically includes: When the restoration accuracy is less than the preset accuracy, the dimensionality reduction score is increased, and the dimensionality reduction function is used to re-determine the number of reduced dimensions and the corresponding restoration accuracy after increasing the dimensionality reduction score, until the determined restoration accuracy is not less than the preset accuracy. The number of reduced dimensions after the most recent increase in the dimensionality reduction score is used as the target dimension number, and the spectral dimensions corresponding to the target dimension number are determined.

16. The method according to claim 13, characterized in that The step of adjusting the dimensionality reduction score, re-passing the dimensionality reduction function, determining the number of dimensionality reduction dimensions corresponding to the adjusted dimensionality reduction score and each spectral dimension after dimensionality reduction, and recalculating the restoration accuracy corresponding to the adjusted number of dimensionality reduction dimensions until determining the target number of dimensions that meet the adjustment target and each spectral dimension corresponding to the target number of dimensions, specifically includes: Based on the relationship between the restoration accuracy of the number of reduced dimensions corresponding to the reduced dimension score and the preset accuracy, the reduced dimension score is adjusted by a dichotomy method; The dimension reduction function is used to determine the number of reduced dimensions and the corresponding restoration accuracy after reducing the dimension reduction score, until the target number of dimensions that meet the adjustment target and the spectral dimensions corresponding to the target number of dimensions are determined.

17. The method according to claim 1, wherein: The step of constructing a spectral value calculation model to be trained according to the target dimension quantity specifically includes: According to the target number of dimensions, the number of neurons in each network layer except the input layer of the spectral value calculation model to be trained is determined, and the target number of dimensions is positively correlated with the number of neurons in each network layer.

18. The method of claim 1, wherein: The structural parameters of the grating model include at least two of the side wall angle, height, depth, top width and bottom width of the grating structure to be measured, and the first theoretical spectrum value, the second theoretical spectrum value and the training spectrum value are determined based on at least two structural parameters and incident light of a preset wavelength.

19. The method according to claim 1, wherein: The step of training the spectral value calculation model specifically includes: According to the size of the difference, adjusting each model parameter in the spectral value calculation model according to a preset step size; When the number of adjustments reaches a preset value, the preset step size is reduced, and the model parameters are adjusted again according to the reduced preset step size.

20. The method of claim 1, wherein: The spectrum value calculation model is trained through multiple rounds of iterations, wherein the first structure parameter set includes a plurality of structure points, wherein: The number of structural points in the training samples of each round of iteration is determined in an incremental manner; The first set of structural parameters is sampled according to the number of structural points in this round of iterative process, and each structural point obtained by sampling is used as a training sample for this round of iterative process.

21. The method of claim 1, wherein: The spectrum value calculation model is trained through multiple rounds of iterations, wherein the first structure parameter set includes a plurality of structure points, wherein: Sampling the first set of structural parameters at least twice to determine at least two training sets containing different numbers of structural points; For each round of iteration, a training set different from the training set used in the previous round of iteration is determined for use in the training of the current round of iteration.

22. The method of claim 1, wherein: The step of training the spectral value calculation model specifically includes: During the training process, recording the differences determined in each round of training of the spectral value calculation model and the model parameters of the spectral value calculation model before the parameters are adjusted in the round of training; When the condition for stopping training is reached, the target difference is determined based on each recorded difference; The model parameters corresponding to the target difference are used as the model parameters of the spectral value calculation model.

23. The method of claim 1, wherein: After the step of training the spectral value calculation model, the method further includes: Establishing a theoretical spectrum value database through a plurality of said first theoretical spectrum values; Matching the spectrum value of the grating model to be measured with each first theoretical spectrum value in the theoretical spectrum database; The structural parameters corresponding to the successfully matched spectral values ​​are used as the structural parameters of the grating model to be measured.

24. A spectral value calculation model training device, characterized in that: include: An acquisition module, used for determining the target number of dimensions, and acquiring a first set of structural parameters of a grating model as a training sample, and a spectral value corresponding to the first set of structural parameters at the target number of dimensions as a label, wherein the grating model is established based on the structure of the grating to be measured; A construction module, used to construct a spectral value calculation model to be trained according to the target dimension number; The training module is used to input the training sample into the spectral value calculation model, determine the output of the spectral value calculation model as the training spectral value, and train the spectral value calculation model with the minimum difference between the training spectral value and the annotation as the optimization goal.

25. A computer-readable storage medium, characterized in that: The storage medium contains a computer program, and when the computer program is executed by a processor, the method described in any one of claims 1 to 23 is implemented.

26. An electronic device, characterized in that: The method comprises a memory, a processor and a computer program stored in the memory and executable on the processor, wherein the processor implements the method described in any one of claims 1 to 23 when executing the computer program.

Citation Information

Patent Citations

  • Spectrum reconstruction method and system based on multichannel imaging system

    CN104634451A

  • Image blind restoration method based on fuzzy kernel estimation iterative structure preservation

    CN110473153A

  • Vibration spectrum dimension reduction method and system

    CN112001410A

  • Grating optical filter structure optimization method based on neural network

    CN112926157A

  • Spectral feature dimension reduction method based on multiple regression in combination with sparse auto-encoder

    CN113804657A

Cited By

  • Method and device for training semiconductor structure prediction model and method and device for measuring optical critical dimension

    CN120705594A

  • Spectral calculation model evaluation and training method and structural parameter measurement method

    CN121479244A

  • Evaluation, training methods, and structural parameter measurement methods for spectral computation models.

    CN121479244B

  • Spectral dimension reduction method, model training method and structural parameter measurement method

    CN121498547A

  • Spectral dimension reduction method, model training method, and structural parameter measurement method

    CN121498547B