# Predicting Dissolution Kinetics of Tricalcium Silicate Using Deep Learning and Analytical Models
## 3 Deep Forest Model  
In this study, a DF model was utilized to predict C\({}_{3}\)S dissolution kinetics based on the physicochemical properties of C\({}_{3}\)S and solvents. The DF model was developed based on the modified classification-and-regression tree (CART) model with a combination of bagging and random selection techniques [58; 59]. The DF model grows a large number of independent trees through a recursive binary split at each node [58]. To be specific, the root node receives information from a bootstrap extracted from the training dataset, and then splits to create two child nodes. This process is repeated until the homogeneity of the child nodes cannot be improved. The tree can grow as deep as it can because none of the usual pruning or smoothing algorithms are applied. This allows the DF model to maintain diversity among trees. The DF model usually contains hundreds of independent trees. Usually, a large-size forest is required to produce reliable predictions while the database contains thousands of data-records. When a testing dataset is applied to a trained DF model, trees produce independent outputs, and subsequently a bagging algorithm averages them to derive the final output. A unique feature (i.e., two-stage randomization) allows the DF model to reduce the variance and bias errors in predictions. The first randomization is that the bootstrap randomly selects data records from the parent database. Second, at each split, several randomly selected variables, instead of all variables, are used to determine the optimal split. The randomization features ensure the decorrelation between trees. Furthermore, due to the growth of a large number of trees, errors from generalization and the likelihood of overfitting are minimized. Owing to those unique features, the DF model can effectively learn input-output correlations from complex databases. Overall, the architecture of the DF can be summarized in the following steps:  
N bootstrap samples are randomly selected from the training dataset. N is equal to the number of trees. In this study, N was 200. Each bootstrap can contain \(\sim\)66% [60; 61; 62] of the data records of the training dataset. The remaining data records are \"out-of-bag\" (OOB) data [58].  
* Each bootstrap iteration in the DF model grows a single tree. At each split, a subset of input variables is randomly selected and used to determine the optimal split scenario. The number of leaves, or the subset size, was set to five in this study. The cost function (i.e., MAE) is used to evaluate all split scenarios, and the scenario with the minimum cost is selected. Unlike other models, the DF model allows trees to grow to their maximum size without pruning or smoothing.
* Next, the DF model produces predictions for OOB data. The DF model aggregates and averages these predictions to produce an overall OOB prediction and OOB error rate. This OOB error rate can be used to evaluate the importance of each variable in influencing the model's output.
* Lastly, at the testing stage, the DF model averages outcomes from trees to produce predictions for a new data domain.