Machine learning prediction method for thermodynamic stability of high-entropy oxide
Through machine learning prediction methods, thermodynamic parameters are calculated and element properties are obtained, weighted data sets are constructed and feature screening is performed, and regression prediction is used using the XGBoost algorithm, which solves the problem of thermodynamic stability prediction of high-entropy oxides and achieves efficient and accurate prediction effects.
Patent Information
- Application Number
- CN202411738628.1
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-11-29
- Publication Date
- 2025-03-18
AI Technical Summary
The prior art is difficult to effectively predict the thermodynamic stability of high-entropy oxides, mainly because the structural data of high-entropy oxides are complex, the lack of relevant labeled data and first-principle data, and there are differences in prediction accuracy between different machine learning models.
Using machine learning prediction method, by calculating thermodynamic parameters and obtaining the physical and chemical properties of elements, weighted data sets are constructed and feature screened, and regression prediction is performed using the XGBoost algorithm to improve the prediction efficiency and accuracy of the thermodynamic stability of high-entropy oxides.
The thermodynamic stability of high-entropy oxides is achieved quickly estimating the thermodynamic stability, improving prediction efficiency and accuracy, reducing research costs, and providing new technical ways for the research of high-entropy oxides.
Smart Images

Figure CN119649965A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to material technology, and in particular to a method for predicting the thermodynamic stability of hexavalent high-entropy oxides composed of 3D elements, in particular to a machine learning prediction method for the thermodynamic stability of high-entropy oxides. Background Art
[0002] The major databases only have the properties of binary oxides, but there is almost no data on the thermodynamic stability of high-entropy oxides. Here, machine learning is used to predict the formation energy and thermodynamic stability of high-entropy oxides. However, there are some technical and challenges in this proposition. First, the structural data of high-entropy oxides are complex, containing a variety of different metal ions and lattice structures, so how to extract features related to formation energy from these complex data is a difficult problem; secondly, in order to improve the accuracy of the prediction, a large amount of annotated data and first-principles data are required to train the machine learning model, and such data are often difficult to obtain.
[0003] Finally, different machine learning models differ in their prediction accuracy, so choosing an appropriate machine learning model is also an important issue to consider. Summary of the invention
[0004] The purpose of the present invention is to provide a machine learning prediction method for the thermodynamic stability of high entropy oxides in view of the deficiencies of the prior art. This method can quickly estimate the thermodynamic stability of high entropy oxides based on the occupied lattice sites of different elements as input information, thereby improving the efficiency and accuracy of predicting the thermodynamic stability of high entropy oxides.
[0005] The technical solution for achieving the purpose of the present invention is:
[0006] A machine learning prediction method for thermodynamic stability of high entropy oxides comprises the following steps:
[0007] 1) Calculation of thermodynamic parameters : The method technology for generating hexavalent equimolar spinel high entropy oxides disclosed in Chinese Patent No. 202411478065.7, a method for screening the formation energy of equimolar spinel high entropy oxides, is used to generate the formation energy and delta H of high entropy oxide crystals according to a high-throughput first-principles calculation method. Delta H is the value of the thermodynamic convex hull of the ground state formation energy distance convex hull. In theory, both are negative values, that is, excellent thermodynamic stability;
[0008] 2) Obtain characteristics and properties: crawl and download the physical and chemical properties of each element and atom from the "The given properties of all elements" in the open source database website of the Russian Academy of Sciences AABAIKOV Institute of Metallurgy and Materials Science Database on Properties of Chemicals, and then filter out the properties of high entropy oxides, and finally filter out the properties under the condition "references: 13823" - that is, Villars P., Brandenburg K., etc. "Binary, ternary and quaternary compound former / nonformer prediction via Mendeleev number"
[0009] / / J.Alloys and Compounds,2001,v.317-318,p.26-38.DOI:10.1016 / S0925-8388(00)01410-9.Data in the article;
[0010] 3) Constructing a row-augmented weighted data set: A data set is created by assigning more weights to atoms occupying the A site, and a linear combination of the values of the corresponding element properties of a property is used to describe this property based on the molecular chemical formula of a specific crystal and the spatial position occupancy in the unit cell:
[0011] When the sample is (Mg Al)[Ca Sc Ti V]2O4, a spinel high entropy oxide with an equimolar ratio, the weight corresponding to the value of the property column of the atom occupying the A site in the sample is increased. Assuming that the weight corresponding to the property is different according to the number of atoms in the spinel AB2O4 molecular formula, the w1 and w2 value pairs are continuously generated according to the ratio of the number of atoms occupying the A site and the B site, and then the data rows are generated:
[0012] bounds = [(0,1), (0,0.5)],
[0013] w1=np.random.uniform(bounds[0][0],bounds[0][1]),
[0014] w2=(1-w1) / 2,
[0015] For the current row, when the property corresponding to the property column is "Values of Atomic Weight", if w1 = 0.3, w2 = 0.35, then the value of the "Values of Atomic Weight" column of this sample row is 0.3*((Mg Al)+0.7*[Ca ScTi V]=78130.1. For sample 1, the first row is "row augmented" and the shaded area in Table 4 is augmented. The construction method is shown in Tables 1 and 2:
[0016] Table 1 Characteristic data set of high entropy oxides, the elements in () and [] represent different occupied sites in the crystal, and Elements of HEO list indicates the list of element types in high entropy oxides;
[0017]
[0018] According to the "row augmentation" rule, the augmented property feature set, among which the properties describing the entire crystal block include "Atomic weight" and "Compression modulus":
[0019] Table 2
[0020]
[0021] 4) Construct a data set of columns to expand the coefficients to be determined: add property columns according to the spatial order of the hexavalent metal atoms, add the common properties in a column, and add the crystal space position to the common property names. When the property column "Values of Atomic weight" is the first type of occupied element in the A site in the crystal site, it is marked as "Values of Atomic weight of A1 site". The A site specifically refers to tetrahedral coordination in spinel high entropy oxides, and specifically refers to the coordination unique to other space groups in other crystals. The element column of the first type of element in the A site of the sample is the shaded area column in Table 4. The construction method is shown in Tables 3 and 4:
[0022] Table 3: Column expansion, adding element occupancy information in the unit cell
[0023]
[0024] Table 4: Based on Table 3, the feature information is expanded:
[0025]
[0026] 5) Model training: The gradient boosting module parameters in the XGBRegressor function integration algorithm in the xgboost library are n_estimators = 666, learning_rate = 0.3, subsample 0.7733, and the weak estimator parameters in the tree model are max_depth = 6, min_child_weight = 0.01, colsample_bytree = 1
[0027] ,colsample_bylevel=l,colsample_bynode=1,randomly generated tree fixed value 420——random state=420,model weak evaluator: booster="dart', that is, select "Dropout meet MultipleAdditive Regression Trees" to abandon the boosted tree, and make a regression prediction of "3d element equimolar spinel high entropy oxide under the constraints of w1=0.3, w2=0.35" based on the above parameters;
[0028] 6) Feature screening: Use the tree structure to screen the feature augmentation matrix, select the 'gain' gain and 'cover' coverage feature screening metrics, and follow the 'gain' gain method, such as Figure 1 As shown: the top 20 features with the best model gain accuracy are selected, and then the top 100 features with the best model gain accuracy are selected according to the 'cover' coverage method;
[0029] 7) Model control and cross-validation "visual" evaluation: evaluation value R of model training 2 , "sklearn.metrics import r2_score", select R from the sklearn.metrics library in Python 2Evaluation fitting method; Cross-validation process: Use the learning_curve function in sklearn.model_selection, and the division of the training and validation sets is to use the train_test_split function in sklearn.model_selection to divide the original feature set into training property set Xtrain, training label Ytrain, test property set Xtest, test label Ytest. The usage is as follows: Xtrain, Xtest, Ytrain, Ytest = train_test_split, X, y, test_size = 0.3, random_state = 420, where X is the physical and chemical properties of the high entropy oxide in the original feature set, and y is the thermodynamic parameter label of the high entropy oxide in the original feature set;
[0030] About the "visualization" evaluation of cross-validation: The learning_curve function in sklearn.model_selection can judge whether the model is underfitting or overfitting by comparing the scores of the training set and the test set as the number of training samples changes. However, in order to facilitate the debugging of cv and visualization parameters, the custom function ::plot_learning_curve is used here. Plot_learning_curve encapsulates both the learning_curve function in sklearn and the cv and fast drawing modules, so as to better evaluate the fitting of the model. In the cv module in the custom function plot_learning_curve, a cross-validation object is passed to the custom function ::plot_learning_curve by reference, and the KFold method in sklearn.model_selection is used to divide the data set into k mutually exclusive subsets folds. The parameter n_splits=5 in the KFold method: the data set is divided into 5 The model will eventually be trained and tested 5 times. In each iteration, one subset is used as the test set, and the remaining four subsets are used as the training set. The parameter shuffle = True: before dividing the subsets, the order of the data set is randomly shuffled to avoid deviations caused by certain order in the original data (when the crystal data is sorted according to the periodic table order, that is, the Mendeleev number, it is reasonable to keep "shuffle" as True). The parameter random_state = 666: sets the random number seed to ensure that the division results are consistent each time the operation is run , suitable for reproducing experimental results and convenient for use as a control. In the fast drawing module, if ax is not provided, the current drawing axis is obtained through plt.gca(); if ax is provided, a new figure is created, the title is set to title, and the labels of the X and Y axes are set, and then the following two curves are drawn on the drawing axis: the training score curve is the red solid line, 'o-': represents the average score of the training set under different training sample sizes, and the test score curve is the green dotted line, 'o--': represents the average score of the test set under different training sample sizes, and finally returns the axis object ax of the drawing.
[0031] This technical solution effectively and greatly improves the efficiency and accuracy of predicting the thermodynamic stability of high entropy oxides through feature engineering screening methods, and has the following advantages:
[0032] 1. High efficiency: Machine learning can quickly process and analyze large amounts of data, reducing the time and computing power required for traditional experimental methods and first-principles theoretical calculations that consume high computing power, thereby improving research efficiency;
[0033] 2. Low cost: Compared with experimental methods, machine learning models reduce the use of experimental materials and equipment, thereby reducing research costs.
[0034] This method uses data generation technology and feature selection methods to effectively predict the thermodynamic stability of high-entropy oxides, providing a new technical approach for the research and application of high-entropy oxides.
[0035] The technical solution for achieving the purpose of the present invention is: BRIEF DESCRIPTION OF THE DRAWINGS
[0036] Figure 1 This is the feature importance map of the top 20 features of the feature "gain" in the embodiment;
[0037] Figure 2 This is a feature importance graph of the top 100 features “covered” in the embodiment;
[0038] Figure 3 This is a schematic diagram of XGBoost evaluation before feature screening in the embodiment;
[0039] Figure 4 This is a schematic diagram of random forest prediction evaluation before feature screening in the embodiment;
[0040] Figure 5 This is a schematic diagram of cross-validation of the random forest algorithm after feature screening in the embodiment;
[0041] Figure 6 This is a schematic diagram of cross validation under the default parameters of the XGBoost algorithm after feature screening in the embodiment;
[0042] Figure 7 This is a schematic diagram of the cross-validation of the XGBoost algorithm after feature screening and parameter adjustment in the embodiment;
[0043] Figure 8 It is a comparison chart of actual value and predicted value after feature screening in the embodiment. DETAILED DESCRIPTION
[0044] The content of the present invention is further described below in conjunction with the drawings and embodiments, but the present invention is not limited thereto.
[0045] Example:
[0046] A machine learning prediction method for thermodynamic stability of high entropy oxides comprises the following steps:
[0047] 1) Calculation of thermodynamic parameters :The method technology for generating hexavalent equimolar spinel high entropy oxides disclosed in Chinese Patent No. 202411478065.7, a method for screening the formation energy of equimolar spinel high entropy oxides, is used to generate the formation energy and delta H of high entropy oxide crystals according to a high-throughput first-principles calculation method. Delta H is the value of the thermodynamic convex hull of the ground state formation energy distance convex hull. In theory, both are negative values, that is, excellent thermodynamic stability;
[0048] 2) Obtain characteristics and properties: crawl and download the physical and chemical properties of each element and atom from the "The given properties of all elements" in the open source database website of the Russian Academy of Sciences AABAIKOV Institute of Metallurgy and Materials Science Database on Properties of Chemicals, and then filter out the properties of high entropy oxides, and finally filter out the properties under the condition "references: 13823" - that is, Villars P., Brandenburg K., etc. "Binary, ternary and quaternary compound former / nonformer prediction via Mendeleev number"
[0049] / / J.Alloys and Compounds,2001,v.317-318,p.26-38.DOI:10.1016 / S0925-8388(00)01410-9.Data in the article;
[0050] 3) Constructing a row-augmented weighted data set: A data set is created by assigning more weights to atoms occupying the A site, and a linear combination of the values of the corresponding element properties of a property is used to describe this property based on the molecular chemical formula of a specific crystal and the spatial position occupancy in the unit cell:
[0051] When the sample is (Mg Al)[Ca Sc Ti V]2O4, a spinel high entropy oxide with an equimolar ratio, the weight corresponding to the value of the property column of the atom occupying the A site in the sample is increased. Assuming that the weight corresponding to the property is different according to the number of atoms in the spinel AB2O4 molecular formula, the w1 and w2 value pairs are continuously generated according to the ratio of the number of atoms occupying the A site and the B site, and then the data rows are generated:
[0052] bounds = [(0,1), (0,0.5)],
[0053] w1=np.random.uniform(bounds[0][0],bounds[0][1]),
[0054] w2=(1-w1) / 2,
[0055] For the current row, when the property corresponding to the property column is "Values of Atomic Weight", if w1 = 0.3, w2 = 0.35, then the value of the "Values of Atomic Weight" column of this sample row is 0.3*((Mg Al)+0.7*[Ca ScTi V]=78130.1. For sample 1, the first row is "row augmented" and the shaded area in Table 4 is augmented. The construction method is shown in Tables 1 and 2:
[0056] Table 1 Characteristic data set of high entropy oxides, the elements in () and [] represent different occupied sites in the crystal, and Elements of HEO list indicates the list of element types in high entropy oxides;
[0057]
[0058] According to the "row augmentation" rule, the augmented property feature set, among which the properties describing the entire crystal block include "Atomic weight" and "Compression modulus":
[0059] Table 2
[0060]
[0061] 4) Construct a data set of columns to expand the coefficients to be determined: add property columns according to the spatial order of the hexavalent metal atoms, add the common properties in a column, and add the crystal space position to the common property names. When the property column "Values of Atomic weight" is the first type of occupied element in the A site in the crystal site, it is marked as "Values of Atomic weight of A1 site". The A site specifically refers to tetrahedral coordination in spinel high entropy oxides, and specifically refers to the coordination unique to other space groups in other crystals. The element column of the first type of element in the A site of the sample is the shaded area column in Table 4. The construction method is shown in Tables 3 and 4:
[0062] Table 3: Column expansion, adding element occupancy information in the unit cell
[0063]
[0064] Table 4: Based on Table 3, the feature information is expanded:
[0065]
[0066] 5) Model training: The gradient boosting module parameters in the XGBRegressor function integration algorithm in the xgboost library are n_estimators = 666, learning_rate = 0.3, subsample 0.7733, and the weak estimator parameters in the tree model are max_depth = 6, min_child_weight = 0.01, colsample_bytree = 1
[0067] ,colsample_bylevel=l,colsample_bynode=1,randomly generated tree fixed value 420——random state=420,model weak evaluator: booster="dart', that is, select "Dropout meet MultipleAdditive Regression Trees" to abandon the boosted tree, and make a regression prediction of "3d element equimolar spinel high entropy oxide under the constraints of w1=0.3, w2=0.35" based on the above parameters;
[0068] 6) Feature screening: Use the tree structure to screen the feature augmentation matrix, select the 'gain' gain, 'cover' coverage feature screening metric, 'gain' parameter, emphasize the contribution of the split node to the improvement of model accuracy, pay attention to the error reduction brought by each split, and follow the 'gain' gain method, such as Figure 1 As shown: and select the top 20 features with the greatest model gain accuracy; in this case, the 'cover' coverage method represents the number of samples affected by the feature in all split nodes, providing a measure of the size of feature coverage that can help us understand which features have an impact on a large number of samples in the model, such as Figure 2 As shown, in this example, when studying the spinel high entropy oxide of 3d elements with equal molar ratio, w1=0.3, w2=0.35, the top 100 features with "cover" contribution value are selected as supplementary features after screening, and then the feature matrix set is "row augmented" according to the feature vector after this new expansion and screening;
[0069] 7) Model control and cross-validation "visual" evaluation: evaluation value R of model training 2 , "sklearn.metrics import r2_score", select R from the sklearn.metrics library in Python 2Evaluation fitting method; Cross-validation process: Use the learning_curve function in sklearn.model_selection, and the division of the training and validation sets is to use the train_test_split function in sklearn.model_selection to divide the original feature set into training property set Xtrain, training label Ytrain, test property set Xtest, test label Ytest. The usage is as follows: Xtrain, Xtest, Ytrain, Ytest = train_test_split, X, y, test_size = 0.3, random_state = 420, where X is the physical and chemical properties of the high entropy oxide in the original feature set, and y is the thermodynamic parameter label of the high entropy oxide in the original feature set;
[0070] About the "visualization" evaluation of cross-validation: The learning_curve function in sklearn.model_selection can judge whether the model is underfitting or overfitting by comparing the scores of the training set and the test set as the number of training samples changes. However, in order to facilitate the debugging of cv and visualization parameters, the custom function ::plot_learning_curve is used here. Plot_learning_curve encapsulates both the learning_curve function in sklearn and the cv and fast drawing modules, so as to better evaluate the fitting of the model. In the cv module in the custom function plot_learning_curve, a cross-validation object is passed to the custom function ::plot_learning_curve by reference, and the KFold method in sklearn.model_selection is used to divide the data set into k mutually exclusive subsets folds. The parameter n_splits=5 in the KFold method: the data set is divided into 5 The model will eventually be trained and tested 5 times. In each iteration, one subset is used as the test set, and the remaining four subsets are used as the training set. The parameter shuffle = True: before dividing the subsets, the order of the data set is randomly shuffled to avoid deviations caused by certain order in the original data (when the crystal data is sorted according to the periodic table order, that is, the Mendeleev number, it is reasonable to keep "shuffle" as True). The parameter random_state = 666: sets the random number seed to ensure that the division results are consistent each time the operation is run , suitable for reproducing experimental results and convenient for use as a control. In the fast drawing module, if ax is not provided, the current drawing axis is obtained through plt.gca(); if ax is provided, a new figure is created, the title is set to title, and the labels of the X and Y axes are set, and then the following two curves are drawn on the drawing axis: the training score curve is the red solid line, 'o-': represents the average score of the training set under different training sample sizes, and the test score curve is the green dotted line, 'o--': represents the average score of the test set under different training sample sizes. Finally, the axis object ax of the drawing is returned.
[0071] In this example, if Figure 3 As shown in the "XGB_only3d" cross validation plot, the learning curve shows the R of the validation set 2 =0.498, indicating that the model has poor generalization ability; and the R 2=0.833——It can only explain 83% of the variance of the target variable, indicating that the model is not able to fit the training data well. The large gap between the training score and the validation score and the large deviation indicate that the model is seriously underfitting. At this time, the parameters in plot_learning_curve and the nested XGBoost regression parameters are set as follows:
[0072]
[0073] In parallel, a control model is set up for the model, and the default parameters of the random forest model RandomForestRegressor in the python.sklearn.ensemble library are used as the model training comparison group. Under this random forest model, the function plot_learning_curve is called as follows:
[0074] plot_learning_curve(RFR(n_estimators=666)
[0075] ,"RandomForest",Xtrain,Ytrain,ax=None
[0076] ,cv=KFold(n_splits=5,shuffle=True,random_state=666)
[0077] ), in this case, the cross-validation results of the random forest under the default parameters are as follows Figure 4 As shown in the figure: The learning curve of random forest also indicates that the random forest model is obviously underfitting, and the R 2 =0.576. Therefore, the current data set cannot be well fitted under either the random forest or XGBoost gradient boosting algorithm, and the model problem can be ruled out here.
[0078] However, after feature screening, whether it is the random forest algorithm or the XGBoost gradient boosting algorithm model, such as Figure 5 , Figure 6 As shown: The learning curve in the cross validation shows that the fit is very high, and the deviation and variance are very small compared to before feature screening;
[0079] The actual value-predicted value comparison chart is a commonly used visualization method to evaluate the predictive performance of the regression model. The method for making the actual value-predicted value comparison chart is as follows:
[0080] Draw a scatter plot: the horizontal axis represents the actual value (Ytest), the vertical axis represents the predicted value (y_predii), each point represents a data sample, and the coordinates of the point are its actual value and predicted value;
[0081] Draw a diagonal line (i.e. y=x): The red dotted line indicates that the predicted value is completely consistent with the actual value in an ideal situation. The closer it is to this line, the more accurate the model's prediction is.
[0082] The scatter distribution in the actual value-predicted value comparison chart is as follows: Figure 8 As shown: Most of the points are distributed near the diagonal line, indicating that the current model has good predictions;
[0083] The variance and deviation of the data set gradually decrease as the model partition increases. Finally, it is worth mentioning that after debugging according to step 5), the comparison Figure 5 , Figure 6 , Figure 7 : The better model is XGBoost, the gradient boosting model after parameter adjustment, and Figure 8 As shown: its R 2 It reached an astonishing 0.991.
Claims
1. A machine learning prediction method for thermodynamic stability of high entropy oxides, characterized in that: The steps include: 1) Calculation of thermodynamic parameters: Using the method technology for generating hexavalent equimolar spinel-type high-entropy oxides disclosed in Chinese Patent No. 202411478065.7, a method for screening the formation energy of equimolar spinel-type high-entropy oxides, the formation energy of high-entropy oxide crystals and delta H are generated according to a high-throughput first-principles calculation method. Delta H is the value of the thermodynamic convex hull of the ground state formation energy distance convex hull; 2) Obtaining characteristics and properties: crawl and download the physical and chemical properties of each element and atom from the "The given properties of all elements" in the open source database website of RUSSIAN ACADEMY OF SCIENCES AABAIKOV INSTITUTE OF METALLURGY AND MATERIALS SCIENCE DATABASE ON PROPERTIES OF CHEMICAL ELEMENTS, then filter out the properties of high entropy oxides, and finally filter out the properties under the condition "references: 13823" - that is, the data in the article Villars P., Brandenburg K., etc. "Binary, ternary and quaternary compound former / nonformer prediction via Mendeleev number" / / J. Alloys and Compounds, 2001, v. 317-318, p. 26-38. DOI: 10.1016 / S0925-8388(00)01410-9. 3) Constructing a row-augmented weighted data set: A data set is created by assigning more weights to atoms occupying the A site, and a linear combination of the values of the corresponding element properties of a property is used to describe this property based on the molecular chemical formula of a specific crystal and the spatial position occupancy in the unit cell: When the sample is (Mg Al)[Ca Sc Ti V]2O4, a spinel high entropy oxide with an equimolar ratio, the weight corresponding to the value of the property column of the atom occupying the A site in the sample is increased. Assuming that the weight corresponding to the property is different according to the number of atoms in the spinel AB2O4 molecular formula, the w1 and w2 value pairs are continuously generated according to the ratio of the number of atoms occupying the A site and the B site, and then the data rows are generated: bounds = [(0,1), (0,0.5)], w1=np.random.uniform(bounds[0][0],bounds[0][1]), w2=(1-w1) / 2, For the current row, when the property corresponding to the property column is "Values of Atomic weight", if w1=0.3, w2=0.35, then the value of the "Values of Atomic weight" column of this sample row is 0.3*((Mg Al)+0.7*[Ca ScTi V]=78130.
1. For sample 1, the first row is "row augmented" and the shaded area in Table 4 is augmented. The construction method is shown in Tables 1 and 2: Table 1 Characteristic data set of high entropy oxides, the elements in () and [] represent different occupied sites in the crystal, and Elements of HEO list indicates the list of element types in high entropy oxides; According to the "row augmentation" rule, the augmented property feature set, among which the properties describing the entire crystal block include "Atomicweight" and "Compression modulus": Table 2 4) Construct a data set of columns to expand the coefficients to be determined: add property columns according to the spatial order of the hexavalent metal atoms, add the common properties in a column, and add the crystal space position to the common property names. When the property column "Values of Atomicweight" is the first type of occupied element in the A site in the crystal site, it is marked as "Values of Atomicweight of A1site". The A site specifically refers to tetrahedral coordination in spinel high entropy oxides, and specifically refers to the coordination unique to other space groups in other crystals. The element column of the first type of element in the A site of the sample is the shaded area column in Table 4. The construction method is shown in Tables 3 and 4: Table 3: Column expansion, adding element occupancy information in the unit cell Table 4: Based on Table 3, the feature information is expanded: 5) Model training: The gradient boosting module parameters in the XGBRegressor function integrated algorithm in the xgboost library are n_estimators=666, learning_rate=0.3, subsample0.7733, the weak evaluator parameters in the tree model are max_depth=6, min_child_weight=0.01, colsample_bytree=1, colsample_bylevel=1, colsample_bynode=1, the random tree fixed value is 420-random state=420, and the model weak evaluator: booster="dart', that is, "Dropout meet Multiple Additive Regression Trees" is selected to abandon the boosting tree, and the regression prediction of "3d element equimolar spinel high entropy oxide, under the constraints of w1=0.3, w2=0.35" is performed based on the above parameters; 6) Feature screening: Use a tree structure to screen the feature augmentation matrix, select the 'gain' gain and 'cover' coverage feature screening metrics, select the top 20 features with the best model gain accuracy according to the 'gain' gain method, and then select the top 100 features with the best model gain accuracy according to the 'cover' coverage method; 7) Model control and cross-validation "visual" evaluation: evaluation value R of model training 2 , "sklearn.metricsimport r2_score", select R from the sklearn.metrics library in Python 2 Evaluation fitting method; Cross-validation process: Use the learning_curve function in sklearn.model_selection, and the division of the training and validation sets is to use the train_test_split function in sklearn.model_selection to divide the original feature set into training property set Xtrain, training label Ytrain, test property set Xtest, test label Ytest. The usage is as follows: Xtrain, Xtest, Ytrain, Ytest = train_test_split, X, y, test_size = 0.3, random_state = 420, where X is the physical and chemical properties of the high entropy oxide in the original feature set, and y is the thermodynamic parameter label of the high entropy oxide in the original feature set; By comparing the changes in the scores of the training set and the test set with the number of training samples, we can determine whether the model is underfitting or overfitting. The custom function::plot_learning_curve, plot_learning_curve encapsulates both the learning_curve function in sklearn and the cv and fast drawing modules. In the cv module in the custom function plot_learning_curve, a cross-validation object is passed to the custom function ::plot_learning_curve reference. The KFold method in sklearn.model_selection is used to divide the data set into k mutually exclusive subsets folds. The parameter n_splits=5 in the KFold method: the data set is divided into 5 subsets, and the model will eventually be trained and tested 5 times. Then in each iteration: 1 subset is used as the test set, and the remaining 4 subsets are used as training sets. The parameter shuffle=True: before dividing the subsets, the order of the data set is randomly shuffled. Parameter random_state=666: sets the random number seed to ensure consistent division results each time the program is run. In the fast drawing module, if ax is not provided, the current drawing axis is obtained through plt.gca(); if ax is provided, a new figure is created, the title is set to title, and the labels of the X and Y axes are set, and then the following two curves are drawn on the drawing axis: the training score curve is the solid red line, 'o-': represents the average score of the training set under different training sample sizes, and the test score curve is the dotted green line, 'o--': represents the average score of the test set under different training sample sizes. Finally, the axis object ax of the drawing is returned.
Citation Information
Patent Citations
Method for screening formation energy of equimolar-ratio spinel-type high-entropy oxide
CN119230031A
Cited By
Intelligent dynamics modeling method and system for enrofloxacin solution stability prediction
CN121122503A