Random survival forests are well-known ensemble-based learning models that have been widely used in many survival applications and have been shown to be superior to traditional survival models [1]}. Random survival forest (RSF) [2]} is quite close to the original Random Forest by Breiman [3]}. The random forest algorithm makes a prediction based on tree-structured models. Similar to the random forest, RSF combines bootstrapping, tree building, and prediction aggregating. However, in the splitting criterion to grow a tree and in the predictions returned in the leaf nodes, RSF explicitly considers survival time and censoring information.
RSF has three main steps. As the first step, it draws \(B\)  bootstrap samples from the original data.
In the second step, for each bootstrap sample, a survival tree is grown. At each node of a tree, \(p\)  candidate variables are randomly selected, where \(p\)  is a parameter, often defined as a proportion of the original number of variables. The task is to split the node into two child nodes using the best candidate variable and split point, as determined by the log-rank test [4]}. The best split is the one that maximizes survival differences between the two child nodes. Growing the obtained tree structure is continued until a stop criterion holds (e.g., until the number of observed instances in the terminal nodes drops below a specified value). In the last step, the cumulative hazard function (CHF) associated with each terminal node in a tree is calculated by the Nelson-Aalen estimator, which is a non-parametric estimator of the CHF [5]}.
All cases within the same terminal node have the same CHF. The ensemble CHF is constructed as the average over the CHF of the \(B\)  survival trees.
