Rendhaputra's picture
Upload README.md with huggingface_hub
a4ef350 verified
---
language: id
license: mit
tags:
- tabular
- random-forest
- predictive-maintenance
- rul-prediction
- scikit-learn
metrics:
- mean-absolute-error
pretty_name: Predictive Maintenance Random Forest Regressor
---
# Predictive Maintenance - Machine RUL Regressor
Model ini adalah regressor berbasis **Random Forest** untuk memprediksi **Remaining Useful Life (RUL)** atau sisa masa operasional aman (dalam satuan hari) dari mesin-mesin industri sebelum mengalami kerusakan mekanikal berikutnya.
Model ini merupakan bagian inti dari **Sistem Laporan & Pencegahan Kerusakan Preventif berbasis AI**.
## ๐Ÿ“Š Detail Model & Fitur
Model dilatih menggunakan algoritma `RandomForestRegressor` (100 estimators) dengan fitur-fitur masukan (*tabular features*) sebagai berikut:
1. **`days_since_last_failure`** (int): Jumlah hari sejak kerusakan mekanikal terakhir terjadi pada mesin.
2. **`fail_last_30d`** (int): Frekuensi kerusakan mesin dalam rentang waktu 30 hari terakhir.
3. **`mtbf`** (float): Mean Time Between Failures (historis rata-rata jarak antarkerusakan mesin tersebut).
**Target Output:**
- **`target_rul`** (float): Prediksi jumlah hari tersisa sebelum mesin diprediksi akan mengalami kerusakan berikutnya.
---
## ๐Ÿš€ Cara Menggunakan Model
Anda dapat memuat model ini menggunakan Python dengan library `pickle` dan `scikit-learn` setelah mengunduh file `.pkl`:
```python
import pickle
import pandas as pd
# 1. Unduh file 'predictive_rf_model.pkl' dari Hub
# 2. Muat file model menggunakan pickle
with open("predictive_rf_model.pkl", "rb") as f:
model_data = pickle.load(f)
# Model acuan
rf_model = model_data['rf_model']
df_mtbf = model_data['df_mtbf']
print("Model terdaftar untuk mesin:", model_data['failing_machines'])
print("Tanggal Pelatihan:", model_data.get('trained_at'))
# 3. Jalankan prediksi kustom
# Contoh: Mesin dengan 10 hari sejak rusak terakhir, 1 kerusakan dalam 30 hari, MTBF 42 hari
features = pd.DataFrame([{
'days_since_last_failure': 10,
'fail_last_30d': 1,
'mtbf': 42.0
}])
pred_rul = rf_model.predict(features)[0]
print(f"Prediksi Sisa Umur Mesin (RUL): {pred_rul:.1f} Hari")
```
---
## ๐Ÿ› ๏ธ Persyaratan Library
Untuk menjalankan model ini, pastikan versi library berikut sudah terinstal di environment Anda:
- `scikit-learn>=1.3.0`
- `pandas>=2.0.0`
- `numpy>=1.24.0`
---
*Model Card ini dihasilkan secara otomatis oleh Asisten AI Antigravity.*