Employee Attrition Intelligence

Model klasifikasi untuk memperkirakan apakah seorang karyawan termasuk kelas bertahan (left=0) atau keluar (left=1) berdasarkan fitur HR yang tersedia.

Informasi proyek

  • Pembuat: Marcel Ong
  • NIM: 2025121043
  • Mata kuliah: MN1135 β€” Business Data Science
  • Jenis tugas: Binary classification
  • Algoritma: Random Forest
  • Dataset: HR Analytics / HR_comma_sep.csv
  • Target: left (0 = bertahan, 1 = keluar)

Dataset dan sumber

Dataset berisi atribut pekerjaan karyawan, seperti kepuasan, evaluasi, jumlah proyek, jam kerja bulanan, masa kerja, kecelakaan kerja, promosi, departemen, dan tingkat gaji. Sumber dataset: Kaggle HR Analytics.

Fitur input

Model mengharapkan 17 fitur numerik yang sudah melalui encoding sesuai preprocessing saat pelatihan. Urutan kolom dijaga menggunakan feature_names.joblib.

  • satisfaction_level β€” float64
  • last_evaluation β€” float64
  • number_project β€” int64
  • average_montly_hours β€” int64
  • time_spend_company β€” int64
  • Work_accident β€” int64
  • promotion_last_5years β€” int64
  • salary_encoded β€” int64
  • sales_RandD β€” int64
  • sales_accounting β€” int64
  • sales_hr β€” int64
  • sales_management β€” int64
  • sales_marketing β€” int64
  • sales_product_mng β€” int64
  • sales_sales β€” int64
  • sales_support β€” int64
  • sales_technical β€” int64

Performa pada data uji

  • Accuracy: 0.9858
  • Precision kelas keluar: 0.9892
  • Recall kelas keluar: 0.9246
  • F1-score kelas keluar: 0.9558

Berkas repository

  • model_final.joblib β€” model hasil tuning
  • scaler.joblib β€” objek StandardScaler dari tahap UTS
  • feature_names.joblib β€” urutan fitur hasil encoding
  • metadata.json β€” metadata model dan preprocessing

Cara memuat model

import joblib
model = joblib.load("model_final.joblib")
scaler = joblib.load("scaler.joblib")
feature_names = joblib.load("feature_names.joblib")

Siapkan satu baris data yang sudah di-encoding dengan kolom sesuai feature_names. Jika uses_scaling bernilai True, standardisasi kolom pada scale_columns menggunakan objek scaler yang disimpan sebelum memanggil model.predict().

Keterbatasan

Model hanya mempelajari pola dari dataset historis yang digunakan. Prediksi bukan kepastian bahwa seorang karyawan akan keluar. Data tidak mencakup seluruh faktor personal dan organisasi, serta dapat mengandung bias atau perubahan pola dari waktu ke waktu. Hasil model hanya boleh menjadi sinyal awal untuk peninjauan manusia oleh HR, bukan dasar tunggal keputusan terhadap karyawan.

Downloads last month

-

Downloads are not tracked for this model. How to track
Inference Providers NEW
This model isn't deployed by any Inference Provider. πŸ™‹ Ask for provider support