# MicroForest: Lightweight Bottleneck Prediction for Manufacturing Processes on Edge Devices
## 5 Experimental Results
### Overall Results  
We first present overall performance of MicroForest. To evaluate MicroForest, it is compared against four baselines: the original Random Forest (RF), LightGBM (LGBM) [1], Distilled Causal Tree (DCT) [3], and Splitting Stump Forest (SSF) [21]. RF and LGBM serve as standard forest baselines. Note that, in this paper, we train and deploy a separate random forest for each task. For clarity in the following discussion, \"RF\" refers to the set of random forests trained independently for each task. Instead, we use the term \"1-RF\" for a single random forest trained to predict all tasks' bottleneck. DCT is a single-tree model distilled to mimic the outputs of RF. SSF resembles our approach in that it reuses split rules extracted from RF; however, it converts each high-value rule into a depth-1 stump and feeds the binary outputs of many stumps into a linear classifier such as logistic regression. Experiments use the simulation framework described in Section 4.1. We vary the number of tasks from 20 to 150 and predict whether a bottleneck will occur after 100 cycles (i.e., \(\tau=100\)) for each task. The threshold for information-gain \(T\) is set as 25% based on a sensitivity analysis, which will be shown in the Section 5.7. We initially set the number of trees \(M\) equal to the number of tasks \(N\) to assess its predictive potential. Experiments exploring the effect of varying \(M\) are presented in a later section. Metrics reported are precision, recall, F1-score, model size, and inference latency. For a fair comparison, we tune major hyperparameters of every baseline via GridSearch-based optimization. For example, we sweep maximum depth and the number of estimators of RF from 5 to 80; the optimal setting consistently emerges around _max_depth_ = 5 and _n_estimators_ = 40. Similar searches are applied to other baselines, and each model adopts the setting that yields its best performance under the given experimental environment. Table 1 shows overall results. We evaluate the prediction performance with precision and recall. In bottleneck prediction, successful prediction of rare bottleneck case is more important, so it is critical to weight each class equally. We therefore report the macro-averaged precision and recall in the evaluation. Overall, MicroForest show a high efficiency as well as the highest prediction performance in most cases. Although DCT and SSF deliver lower latency, their precision and recall decrease sharply as the number of tasks increase. Conversely, RF and LGBM maintain competitive predictive performance across all task scales, but their memory footprints remain an order of magnitude larger and their inference latency is much higher than MicroForest. Detailed results will be discussed in the following sections. \begin{table}
\begin{tabular}{l l c c c c c} \hline \hline \# Tasks & **Model** & **P** & **R** & **F1** & **Size** & **Latency** \\  & & & & & **(MB)** & **(ms)** \\ \hline
20 & RF & 0.76 & 0.81 & 0.78 & 2.02 & 417 \\  & LGBM & 0.78 & 0.82 & 0.80 & 1.08 & 122 \\  & DCT & 0.76 & 0.81 & 0.78 & 2.08 & 53 \\  & SSF & 0.65 & 0.31 & 0.42 & **0.01** & **2** \\  & **MF (Ours)** & **0.89** & **0.86** & **0.87** & 0.09 & 192 \\ \hline
50 & RF & **0.82** & 0.76 & **0.79** & 6.64 & 1032 \\  & LGBM & 0.68 & 0.63 & 0.65 & 2.53 & 261 \\  & DCT & 0.82 & 0.76 & 0.79 & 5.36 & 180 \\  & SSF & 0.68 & 0.28 & 0.40 & **0.02** & **4** \\  & **MF (Ours)** & 0.71 & **0.81** & 0.76 & 0.21 & 254 \\ \hline
100 & RF & **0.90** & 0.53 & 0.67 & 17.48 & 2074 \\  & LGBM & 0.70 & 0.59 & 0.64 & 5.20 & 523 \\  & DCT & 0.86 & 0.51 & 0.64 & 11.52 & 314 \\  & SSF & 0.70 & 0.19 & 0.30 & **0.04** & **9** \\  & **MF (Ours)** & 0.73 & **0.73** & **0.73** & 0.41 & 340 \\ \hline
150 & RF & **0.90** & 0.44 & 0.59 & 32.40 & 3081 \\  & LGBM & 0.64 & 0.60 & 0.62 & 7.91 & 832 \\  & DCT & 0.87 & 0.41 & 0.56 & 18.35 & 384 \\  & SSF & 0.67 & 0.17 & 0.27 & **0.06** & **14** \\  & **MF (Ours)** & 0.70 & **0.78** & **0.74** & 0.66 & 431 \\ \hline \hline \end{tabular}
\end{table}