Lightweight Hard Drive Failure Prediction

This is the final solution created to support my dissertation which explores hard drive disk failure prediction using machine learning. The purpose is to find an optimal model for lightweight devices which has a fast testing time against high F1 scores, recall, accuracy, etc.

The final solution was built using the LightGBM model.

image

Requirements

Run With Docker

Image

ghcr.io/f2ncy/disk_failure_prediction

  • docker run --privileged -v hddpredict:/predictt -i --device=/dev/sda -p 5001:5000 disk_failure_prediction:latest

Supports the following platforms:

  • linux/arm64

Volumes

In order to get predictions you must define which device you want the model to predict on within the code. This requires changing one line

image

Define "device_path" to whichever drive you would like the prediction to be made on (e.g. /dev/sda, sdb, etc)

This requires the docker run command to be modified appropriately:

  • docker run --privileged -v hddpredict:/predictt -i --device=/dev/sda -p 5001:5000 disk_failure_prediction:latest

Additional Information

Prediction: 0 - Indicates the model thinks the drive will not fail

Prediction: 1 - Indicates the model thinks the drive is highly likely to fail

Works with all types of drives including ATA, SATA, NVME, etc.