|
|
--- |
|
|
license: mit |
|
|
tags: |
|
|
- predictive-maintenance |
|
|
- engine-failure-prediction |
|
|
- adaboost |
|
|
- classification |
|
|
library_name: sklearn |
|
|
--- |
|
|
|
|
|
# Predictive Maintenance Model - Engine Failure Prediction |
|
|
|
|
|
## Model Description |
|
|
|
|
|
This model predicts engine failures for automotive predictive maintenance using sensor data. |
|
|
|
|
|
**Model Type:** AdaBoost |
|
|
**Task:** Binary Classification (Normal vs Faulty Engine) |
|
|
**Framework:** scikit-learn / XGBoost |
|
|
|
|
|
## Model Performance |
|
|
|
|
|
### Test Set Metrics |
|
|
- **Accuracy:** 0.6668 |
|
|
- **Precision:** 0.6854 |
|
|
- **Recall:** 0.8713 (Primary metric - minimizes false negatives) |
|
|
- **F1-Score:** 0.7673 |
|
|
- **ROC-AUC:** 0.6959 |
|
|
|
|
|
## Model Details |
|
|
|
|
|
### Hyperparameters |
|
|
```python |
|
|
{ |
|
|
"learning_rate": 0.05, |
|
|
"n_estimators": 100 |
|
|
} |
|
|
``` |
|
|
|
|
|
### Training Information |
|
|
- **Training Samples:** 15,628 |
|
|
- **Test Samples:** 3,907 |
|
|
- **Features:** 17 |
|
|
- **Training Date:** 2026-01-25 11:47:47 |
|
|
|
|
|
## Features |
|
|
|
|
|
The model uses 17 features including: |
|
|
- Engine RPM |
|
|
- Lubricating oil pressure and temperature |
|
|
- Fuel pressure |
|
|
- Coolant pressure and temperature |
|
|
- Engineered features (temperature-pressure ratios, differentials, etc.) |
|
|
|
|
|
## Usage |
|
|
|
|
|
```python |
|
|
import joblib |
|
|
from huggingface_hub import hf_hub_download |
|
|
|
|
|
# Download model |
|
|
model_path = hf_hub_download( |
|
|
repo_id="SharleyK/predictive-maintenance-model", |
|
|
filename="best_model.pkl" |
|
|
) |
|
|
|
|
|
# Load model |
|
|
model = joblib.load(model_path) |
|
|
|
|
|
# Download scaler |
|
|
scaler_path = hf_hub_download( |
|
|
repo_id="SharleyK/predictive-maintenance-model", |
|
|
filename="scaler.pkl" |
|
|
) |
|
|
scaler = joblib.load(scaler_path) |
|
|
|
|
|
# Make predictions |
|
|
X_new_scaled = scaler.transform(X_new) |
|
|
predictions = model.predict(X_new_scaled) |
|
|
probabilities = model.predict_proba(X_new_scaled) |
|
|
|
|
|
# Interpret results |
|
|
# 0 = Normal/Healthy Engine |
|
|
# 1 = Faulty/Requires Maintenance |
|
|
``` |
|
|
|
|
|
## Model Selection |
|
|
|
|
|
This model was selected from 6 candidates: |
|
|
- Decision Tree |
|
|
- Bagging Classifier |
|
|
- Random Forest |
|
|
- AdaBoost |
|
|
- Gradient Boosting |
|
|
- XGBoost |
|
|
|
|
|
Selection criteria: Highest test recall (to minimize false negatives - missed failures) |
|
|
|
|
|
## Business Impact |
|
|
|
|
|
- Reduces unplanned breakdowns by detecting failures early |
|
|
- Minimizes emergency repair costs |
|
|
- Optimizes maintenance scheduling |
|
|
- Improves fleet availability and safety |
|
|
|
|
|
## Limitations |
|
|
|
|
|
- Requires all sensor inputs to be available |
|
|
- Trained on specific engine types (automotive and small engines) |
|
|
- Performance may degrade if sensor calibration changes |
|
|
- Requires periodic retraining with new data |
|
|
|
|
|
## Citation |
|
|
|
|
|
``` |
|
|
@model{predictive_maintenance_engine_model, |
|
|
author = {SharleyK}, |
|
|
title = {Predictive Maintenance Model - Engine Failure Prediction}, |
|
|
year = {2026}, |
|
|
publisher = {Hugging Face}, |
|
|
url = {https://huggingface.co/SharleyK/predictive-maintenance-model} |
|
|
} |
|
|
``` |
|
|
|
|
|
## License |
|
|
|
|
|
MIT License |
|
|
|