Thiết kế thí nghiệm có thể tái lập

Phát triển mô hình Machine Learning cho môi trường sản xuất

Sinan Ozdemir

Data Scientist and Author

Thí nghiệm có thể tái lập

  • Đảm bảo độ chính xác và độ tin cậy.
  • Dễ nhân bản kết quả.
  • Hỗ trợ cộng tác tốt hơn.
  • Giảm rủi ro thiên lệch trong mô hình ML.
  • Củng cố tính liêm chính của quy trình nghiên cứu.
Phát triển mô hình Machine Learning cho môi trường sản xuất

MLflow

Nền tảng mã nguồn mở để theo dõi và quản lý thí nghiệm học máy. MLflow có thể:

  • Tạo pipeline ML có thể tái lập
  • Theo dõi và quản lý:
    • phụ thuộc gói
    • phiên bản mã
    • thiết lập thí nghiệm
  • Cho phép nhiều người dùng truy cập thí nghiệm

mlflow

1 https://www.databricks.com/blog/2018/06/05/introducing-mlflow-an-open-source-machine-learning-platform.html
Phát triển mô hình Machine Learning cho môi trường sản xuất

Ví dụ dùng MLflow

# standard scikit-learn imports
from sklearn.ensemble import RandomForestClassifier
from sklearn.model_selection import train_test_split
from sklearn.metrics import accuracy_score

# new imports from MLflow
import mlflow
import mlflow.sklearn
Phát triển mô hình Machine Learning cho môi trường sản xuất

Ví dụ dùng MLflow (tiếp)

with mlflow.start_run():  # Start an MLflow run assuming we have data prepared

    # Build and train model
    rf = RandomForestClassifier()
    rf.fit(X_train, y_train)

    # Log parameters and model information
    mlflow.log_param("n_estimators", rf.n_estimators)
    mlflow.sklearn.log_model(rf, "model")

    y_pred = rf.predict(X_test)  # Evaluate model
    accuracy = accuracy_score(y_test, y_pred)
    mlflow.log_metric("accuracy", accuracy)  # log the test accuracy metric
Phát triển mô hình Machine Learning cho môi trường sản xuất

Theo dõi mã

  • Ghi nhật ký phiên bản và thay đổi mã với MLflow
  • So sánh các phiên bản mã
  • Xác định phiên bản mã đã tạo ra bộ kết quả cụ thể
  • Dễ dàng tái lập thí nghiệm
  • Dễ debug và khắc phục sự cố mã
Phát triển mô hình Machine Learning cho môi trường sản xuất

Kho đăng ký mô hình

  • Kho tập trung cho mô hình và siêu dữ liệu
  • MLflow dùng để ghi, lưu và so sánh các phiên bản mô hình
  • Tái lập toàn bộ pipeline ML
  • Dùng để so sánh mô hình
  • Đảm bảo độ chính xác và độ tin cậy của mô hình

lưu trữ

Phát triển mô hình Machine Learning cho môi trường sản xuất

Tái lập thí nghiệm

  • Theo dõi và ghi nhật ký dữ liệu đầu vào, mã và thiết lập
  • Tái lập toàn bộ pipeline ML
  • Xây dựng niềm tin vào kết quả mô hình học máy
  • Cho phép người khác xác minh và phát triển tiếp
  • Đảm bảo kết quả nhất quán giữa các lần chạy

Phát triển mô hình Machine Learning cho môi trường sản xuất

Xem lại tài liệu hóa

  • Tài liệu hóa là thiết yếu cho ML tái lập và nên gồm:
    • Dữ liệu đầu vào của mô hình.
    • Mã dùng để tạo mô hình.
    • Mọi thiết lập dùng trong thí nghiệm.
    • Kết quả thí nghiệm (mô hình được chọn, v.v.)
  • Tài liệu nên dễ truy cập
  • Nhằm là hồ sơ đầy đủ của thí nghiệm
Phát triển mô hình Machine Learning cho môi trường sản xuất

¡Vamos a practicar!

Phát triển mô hình Machine Learning cho môi trường sản xuất

Preparing Video For Download...