ThabangTheActuaryCoder's picture
Upload mining equipment_failure_model artefacts
c105e2f verified
|
Raw
History Blame Contribute Delete
2.23 kB
---
library_name: sklearn
tags:
- tabular-classification
- sklearn
- equipment-failure
- mining
- south-africa
---
# Mining Equipment Failure Prediction Model
A **GradientBoostingClassifier** pipeline for predicting equipment failures,
trained on South African mining data.
## Intended Use
This model is intended for **educational and demonstration purposes** as part of
an end-to-end ML pipeline showcasing Databricks, MLflow, Azure ML, and
Hugging Face Hub integration.
## Model Details
| Property | Value |
|---|---|
| Classifier | `GradientBoostingClassifier` |
| Pipeline steps | preprocessor -> classifier |
| Training samples | 12,000 |
| Test samples | 3,000 |
| Target column | `target` |
| Created | 2026-06-16T15:38:07.336452+00:00 |
## Evaluation Metrics
| Metric | Score |
|---|---|
| Accuracy | 0.9337 |
| Precision | 0.7510 |
| Recall | 0.5884 |
| F1 | 0.6598 |
| ROC AUC | 0.9465 |
### Confusion Matrix
![Confusion Matrix](confusion_matrix.png)
### ROC Curve
![ROC Curve](roc_curve.png)
### Feature Importance
![Feature Importance](feature_importance.png)
## Features
**Numeric:** `temperature_celsius`, `vibration_mm_s`, `oil_pressure_kpa`, `rpm`, `operating_hours`, `days_since_maintenance`, `load_percentage`, `ambient_temperature_celsius`, `hydraulic_pressure_kpa`, `num_previous_failures`
**Categorical:** `equipment_type`, `mine_type`, `shift`, `province`
## Sample Usage
```python
import joblib
from huggingface_hub import hf_hub_download
import pandas as pd
# Download and load the model
model_path = hf_hub_download(
repo_id="ThabangTheActuaryCoder/mining-equipment-failure-model",
filename="equipment_failure_model.joblib",
)
model = joblib.load(model_path)
# Create a sample input
sample = pd.DataFrame([{"temperature_celsius": 0, "vibration_mm_s": 0, "oil_pressure_kpa": 0, "rpm": 0, "operating_hours": 0, "days_since_maintenance": 0, "load_percentage": 0, "ambient_temperature_celsius": 0, "hydraulic_pressure_kpa": 0, "num_previous_failures": 0, "equipment_type": 0, "mine_type": 0, "shift": 0, "province": 0}])
# Predict
prediction = model.predict(sample)
probabilities = model.predict_proba(sample)
print(f"Prediction: {prediction}, Probabilities: {probabilities}")
```