# Predicting Hard Disk Failure by Means of Automatized Labeling and Machine Learning Approach
## 5 Experimental Results
### Case Study  
For the case study, the five models among those used at the CERN Data Center were examined. Selected models are those characterized by the higher cardinality in the CERN Data Center; this is a key issue since a large number of hard drives are necessary to grant a sufficient amount of information on broken disks to train the RGF model. The examined datasets are shown in Table 1; it is worth noting that all considered datasets are unbalanced in terms of healthy versus replaced hard disks in favor of the healthy ones. For the sake of privacy, the vendors and models of the examined Hard Disks have been replaced with names of some Tyrrhenian islands. Before collecting the data to train and test the RGF model, a study on the temporal distribution of the SMART measures has been carried out; as stated above, reasons why there may be gaps between the measures are manifold. Since the proposed method requires that for RGF training, tuples of hard disks classified according to Definition 1 are necessary, establishing after how many days of absence a hard disk can be considered as permanently replaced and its missing measures that are not attributable to transient conditions is a fundamental step. To this aim, the duration of gaps between the tuples greater than 1 day have been collected and organized as a histogram. The corresponding results are reported in Figure 4, where it can be noticed that the maximum number of occurrences is associated with a 5-day gap. On the contrary, the number of occurrences for gaps longer than 20 days rapidly decreases. We decided on a conservative approach and chose to remove all the measures of the 30 days prior to the last available from the dataset. The measures of the last 30 days have however been used for the purpose of labeling hard drives. In particular, the SMART attributes considered to provide measure tuples are reported in Table 2.  
After extrapolating only the data relating to the hard disks shown in Table 1 from the entire dataset \(S\), the dataset \(S_{d}\) has been pre-processed to clean from corrupt, incomplete and error data according to what was stated in Section 4.1.3. Once the dataset was cleaned, each hard disk's serial (the drive's unique identifier) was classified and labeled according to Definition 1; successively, the labeled dataset has been divided into train, \(S_{l}\), and test, \(S_{l}\), datasets. The training set of SMART measures of healthy disks has been randomly decimated in such a way as to assure the same cardinality of the broken drives for each disk model. \begin{table}
\begin{tabular}{c c c c} \hline \hline
**Model** & **Healthy** & **Broken** & **Total** \\ \hline Ischia & 11,962 & 81 & 12,043 \\ Capri & 11,238 & 160 & 11,398 \\ Ventotene & 9172 & 18 & 9190 \\ Procida & 7948 & 20 & 7968 \\ Ponza & 4695 & 378 & 5073 \\ \hline \hline \end{tabular}
\end{table} 
Table 1: The composition of the dataset. Figure 4: A histogram of the temporal gap between SMART tuples by drive. A Resolution III plan \(L_{9}\) has been exploited for all five hard drive models, whose plan configurations are reported in Table 3.  
Each configuration is characterized by at least one parameter level different from one another, thus assuring a complete and efficient investigation of the whole experimental space. The main output of the Taguchi approach is the so-called effects diagram, i.e., the evolution of the performance index versus each parameter level; the effects diagram allows the developer to determine which level of each factor corresponds to a maximization (or minimization) of the chosen performance index. For the considered method, the goal is the maximization the \(LR+\) index. As an example, the corresponding results of the DOE for the _Ponza_ model is reported in Figure 5, in which, for each factor, the levels were coded with the numbers 1, 2 and 3. As regards the algorithms and the loss functions, the three coded levels are in the order: \(RGF\), \(RGF\_Opt\) and \(RGF\_Sib\) for algorithms and \(LS\), \(Expo\) and \(Log\) for the loss function.