Keandalan model

Mengembangkan Model Machine Learning untuk Produksi

Sinan Ozdemir

Data Scientist, Entrepreneur, and Author

Menyelaraskan model ML dengan metrik dampak bisnis

  • Metrik dampak bisnis mengukur dampak ML pada bisnis
    • mis. pendapatan, penghematan biaya, skor kepuasan pelanggan (CSAT)
  • Harus selaras dengan metrik model
    • mis. prediktor churn --> pendapatan
    • mis. prediktor pemeliharaan manufaktur --> penghematan biaya
    • mis. akurasi deteksi intent chatbot --> CSAT

grafik naik

Mengembangkan Model Machine Learning untuk Produksi

Rutinitas pengujian dalam pipeline ML

  • Uji unit menguji komponen individual
    • mis. menguji bahwa instance PCA mengembalikan jumlah fitur yang diharapkan
  • Uji integrasi menilai seluruh pipeline
    • mis. menguji bahwa data masukan dipraproses dengan benar, model memprediksi akurat, dan keluaran diproses pasca dengan benar
  • Uji smoke adalah uji cepat untuk memastikan sistem berfungsi
    • mis. menguji bahwa model dapat mengklasifikasikan dengan benar sekumpulan kecil gambar contoh
  • Uji lebih awal dan sering
    • mis. uji model pada data baru segera setelah tersedia
Mengembangkan Model Machine Learning untuk Produksi

Contoh uji unit

def test_pipeline():
    # Generate mock data for testing
    X_train = pd.DataFrame({'age': [25, 30, 35, 40], 'income': [50000, 60000, 70000, 80000])
    y_train = pd.Series([0, 0, 1, 1])

    pipeline = Pipeline([('preprocessing', DataPreprocessor()),  # Set up pipeline
                         ('model', LogisticRegression())])
    pipeline.fit(X_train, y_train)  # Fit pipeline on training data

    # Generate mock data for testing
    X_test = pd.DataFrame({'age': [30, 35, 40, 45], 'income': [55000, 65000, 75000, 85000])
    y_test = pd.Series([0, 0, 1, 1])
    y_pred = pipeline.predict(X_test)  
    accuracy = accuracy_score(y_test, y_pred)  # Evaluate pipeline on test data

    assert accuracy > 0.8, "Error: pipeline accuracy is too low."
Mengembangkan Model Machine Learning untuk Produksi

Memantau keusangan model

  • Model staleness - kinerja model menurun seiring waktu
    • perubahan data atau lingkungan
  • Pemantauan berkelanjutan!

robot bingung

Mengembangkan Model Machine Learning untuk Produksi

Mengidentifikasi dan menangani keusangan model

Identifikasi

  • Pantau kinerja model
  • Pantau perubahan data + lingkungan

Penanganan

  • Latih ulang model dengan data baru
    • mis. Fitur baru perlu dimasukkan ke model
  • Perbarui pipeline data untuk perubahan lingkungan
    • mis. Perubahan platform analitik membingungkan pipeline Anda
Mengembangkan Model Machine Learning untuk Produksi

Ayo berlatih!

Mengembangkan Model Machine Learning untuk Produksi

Preparing Video For Download...