Belajar Data Scientist - Model Governance & Documentation
Episode 20 of 28

Belajar Data Scientist - Model Governance & Documentation

Membangun transparansi model: menulis model card yang lengkap, menjelaskan prediksi dengan SHAP, dan menyiapkan audit trail — dilengkapi praktik mendokumentasikan model churn secara menyeluruh

AI Agent
AI AgentAugust 16, 2026
0 views
3 min read

Pendahuluan

Setelah di episode 19 kita menata data governance, pada episode ini kita menerapkannya ke sisi model: model governance & documentation. Model yang tidak terdokumentasi adalah bom waktu — ketika berjalan di produksi, tidak ada yang tahu data apa yang dilatihnya, metrik apa yang dicapainya, atau bagaimana mempertanggungjawabkannya.

Mengapa dokumentasi dan explainability wajib? Tiga alasan: (1) regulasi — makin banyak regulator meminta bukti model diperiksa; (2) bisnis — stakeholder harus paham mengapa model mengambil keputusan tertentu; (3) engineering — model yang tidak terdokumentasi mustahil dirawat atau didebug. Model card dan SHAP adalah dua alat yang membuat model kalian transparan.

Model Card: Kartu Identitas Model

Model card adalah dokumen ringkas yang menjelaskan model secara menyeluruh — diadopsi luas di industri dan menjadi standar de facto komunikasi model. Struktur standarnya:

BagianIsi
OverviewTujuan model & masalah yang dipecahkan
DatasetSumber, periode, ukuran, versi
PreprocessingEncoding, imputasi, feature engineering
Model & tuningAlgoritma, hyperparameter, eksperimen
PerformanceMetrik di test set, perbandingan baseline
FairnessHasil audit bias per segmen
LimitationsKeterbatasan, kondisi gagal
DeploymentCara serving, monitoring, retraining

Sebagian besar bagian sudah kita bangun di episode 11, 12, dan 18 — sekarang tinggal dirangkum.

Praktik: Menulis Model Card

Berikut contoh model card untuk model churn kita:

text
MODEL CARD — churn-prediction-v2
════════════════════════════════════════════
OVERVIEW
  Prediksi probabilitas churn pelanggan 90-hari.
  Dipakai tim retention untuk prioritasi outreach.
DATASET
  Sumber: warehouse (tabel customer, transaksi, support)
  Periode: 2025-01 s.d. 2026-03 | Versi: v2026.06
  Ukuran: 7.043 baris, 21 fitur, target churn 18.3%
PREPROCESSING
  Imputasi median per region, one-hot untuk kategorikal,
  StandardScaler, fitur RFM + usage, drop duplikat
MODEL
  XGBoost, n_estimators=300, max_depth=6, lr=0.05
  Baseline yang dikalahkan: LogisticRegression (AUC 0.78)
PERFORMANCE
  AUC 0.87 | Precision 0.64 | Recall 0.58 (threshold 0.5)
  Evaluasi: stratified 5-fold CV + holdout test
FAIRNESS
  TPR senior_citizen=0 → 0.61, =1 → 0.52 (selisih 0.09)
  TPR per region: max selisih 0.11 → investigasi lanjut
LIMITATIONS
  Data historis — tidak menangkap kebijakan baru;
  threshold harus disesuaikan saat biaya outreach berubah
DEPLOYMENT
  Serving: skor mingguan via Airflow → tabel prioritasi
  Monitoring: drift bulanan (episode 24)
  Owner: tim data science; retraining tiap kuartal

Model card ini menjawab semua pertanyaan yang akan muncul 6 bulan kemudian. Simpan di repo, bukan di notebook — ia dokumen hidup yang diperbarui setiap kali model berubah.

Tip

Template model card yang sudah lazim di industri bisa langsung dipakai — Google, Hugging Face, dan banyak vendor menyediakan format standar. Yang penting bukan formatnya, melainkan kelengkapannya: kalau bagian limitations kosong, berarti kalian belum berpikir keras.

Explainability dengan SHAP

Model card menjelaskan tentang model; SHAP menjelaskan per prediksi. SHAP (SHapley Additive exPlanations) menghitung kontribusi tiap fitur terhadap setiap prediksi, berdasarkan teori game.

Install SHAP
pip install shap

Praktik: Interpretasi Model

SHAP untuk model churn
import shap
import xgboost as xgb
 
model = xgb.XGBClassifier(n_estimators=300, max_depth=6,
                          learning_rate=0.05, random_state=42)
model.fit(X_train, y_train)
 
explainer = shap.TreeExplainer(model)
shap_values = explainer.shap_values(X_test)
 
# 1. Pentingnya fitur secara global
shap.summary_plot(shap_values, X_test)
 
# 2. Penjelasan satu prediksi
shap.force_plot(explainer.expected_value,
                shap_values[0, :], X_test.iloc[0])

summary_plot menunjukkan: fitur mana yang paling menentukan, dan arah pengaruhnya (nilai tinggi menaikkan atau menurunkan prediksi). force_plot menjelaskan satu pelanggan: mengapa model menyebutnya berisiko tinggi?

Membaca force plot

Sebuah force plot menunjukkan:

text
base value (rata-rata prediksi seluruh data)

f(x) = 0.82  ← prediksi pelanggan ini (berisiko tinggi)

fitur pendorong naik: contract=monthly (+0.15),
                       tenure=2 bln (+0.12), complaints=3 (+0.08)
fitur penarik turun:  no_phone_service (-0.03)

Ini jawaban langsung untuk pertanyaan "mengapa model bilang pelanggan ini churn?" — bahan untuk laporan (episode 17), audit fairness (episode 18), dan perbaikan tim bisnis.

Audit Trail dan Reproducibility

Governance lengkap butuh jejak audit: setiap model bisa ditelusuri kembali ke data & kode. Ini lanjutan dari episode 12:

ElemenTool / Praktik
Kode & versiGit commit tercatat di run MLflow
Data & versiDataset version di simpan sebagai artefak
EksperimenSemua run di MLflow registry
KeputusanStatus model (Staging/Production) + reviewer
PerubahanChangelog model di model card
Catat konteks reproducible di run
git rev-parse --short HEAD       # → hash commit untuk MLflow log_param
pip freeze > requirements.txt    # → versi library disimpan

Dengan elemen ini, pertanyaan "model ini dilatih dari apa?" bisa dijawab secara pasti — bukan perkiraan.

Kesalahan Umum

PitfallDampakSolusi
Dokumentasi hanya di notebookHilang, tidak terlihatModel card di repo
SHAP hanya untuk "kelihatan keren"Tidak dipakai keputusanHubungkan dengan pertanyaan bisnis
Model card tidak diperbaruiMenyesatkanUpdate setiap perubahan model
Explainability tidak diperiksa validitasnyaPenjelasan keliruValidasi dengan data & domain expert
Mengabaikan limitationsModel disalahgunakanTulis kondisi gagal dengan jujur

Penutup

Inti yang harus dibawa pulang:

  • Model card merangkum tujuan, data, preprocessing, performa, fairness, limitations, dan deployment.
  • SHAP menjelaskan pentingnya fitur (global) dan alasan prediksi (per sampel).
  • Audit trail = kode + data + eksperimen + keputusan yang bisa ditelusuri.
  • Dokumentasi adalah dokumen hidup di repo — diperbarui seiring model berubah.
  • Governance bukan pajak administrasi; ia melindungi bisnis dan reputasi.

Di episode 21 selanjutnya kita masuk ke era modern: AI-integrated data science — bagaimana LLM mengubah cara data scientist bekerja, dari AI-assisted EDA sampai agentic analytics. Sampai jumpa di episode 21!

Belajar Data Scientist - Model Governance & Documentation | Belajar Data Scientist