| ---
|
| 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.*
|
|
|