Kiểm thử mô hình

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

Sinan Ozdemir

Data Scientist, Entrepreneur, and Author

Công bằng cá nhân vs công bằng nhóm

Công bằng cá nhân

Đối xử tương tự với cá nhân tương đồng.

  • Ví dụ: trao cơ hội việc làm giống nhau cho người có kinh nghiệm tương tự.

Công bằng nhóm

Đối xử bình đẳng giữa các nhóm khác nhau.

  • Ví dụ: không phân biệt đối xử theo chủng tộc/nhóm sắc tộc trong mô hình tuyển sinh.
Phát triển mô hình Machine Learning cho môi trường sản xuất

Kiểm thử holdout

  • Kiểm thử holdout kiểm tra độ tin cậy bằng tập dữ liệu riêng
  • Đánh giá hiệu suất trên dữ liệu chưa dùng khi huấn luyện
  • Phát hiện quá khớp hoặc thiếu khớp

robot dùng dữ liệu

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

Tìm trôi mô hình

Trôi khái niệm (concept drift)

  • Sự thay đổi quan hệ giữa đặc trưng và biến phản hồi
    • Ví dụ: thuật toán phân tích cảm xúc
      • Thuật ngữ có thể đổi nghĩa ("sick" có thể mang nghĩa tích cực)

Trôi dự đoán (prediction drift)

  • Sự thay đổi phân phối dự đoán của mô hình
    • Ví dụ: sự cố tạm thời làm tăng ý định "outage" trong chatbot
    • Không nhất thiết có lỗi, nhưng trôi này có thể làm phản hồi chậm hơn
Phát triển mô hình Machine Learning cho môi trường sản xuất

Ví dụ: tìm trôi mô hình

Thiết lập:

# Import necessary libraries and split data
X_train, X_test, y_train, y_test = ...

Huấn luyện mô hình:

# Train a classifier on the training data
clf = DecisionTreeClassifier(random_state=42)
clf.fit(X_train, y_train)

# Calculate the accuracy on test data
y_pred = clf.predict(X_test)
accuracy = accuracy_score(y_test, y_pred)
print(f"Accuracy: {accuracy}")

Kiểm tra trôi về sau:

X_test_drift = X_test + 1.0  # Simulate data drift
# Calculate the accuracy on drifted data
y_pred_drift = clf.predict(X_test_drift)
accuracy_drift = accuracy_score(
    y_test, y_pred_drift)
print(f"Accuracy with drift: {accuracy_drift}")

# Drift detection threshold based on the accuracy
drift_threshold = accuracy * 0.9

# Check for drop in accuracy on the drifted data
if accuracy_drift < drift_threshold:
    print("Concept drift detected!")
else:
    print("No concept drift detected.")
Phát triển mô hình Machine Learning cho môi trường sản xuất

Chi phí: mô hình phức tạp vs mô hình cơ sở

  • Mô hình phức tạp tốn kém hơn và có thể giảm hiệu năng
  • Độ trễ (latency) đo thời gian xử lý một đầu vào để ra dự đoán
  • Thông lượng (throughput) đo số dự đoán trong một khoảng thời gian
  • Kiểm thử độ trễ và thông lượng để quyết định mức độ phức tạp phù hợp
  • Mục tiêu: cân bằng giữa độ chính xác và hiệu năng
Phát triển mô hình Machine Learning cho môi trường sản xuất

Ayo berlatih!

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

Preparing Video For Download...