Bắt đầu ngayBắt đầu miễn phí

Tối ưu hóa SMS spam

Pipeline bạn đã xây dựng trước đó cho mô hình SMS spam đang dùng các tham số mặc định cho tất cả thành phần. Tuy nhiên, rất ít khả năng các tham số này sẽ tạo ra một mô hình tốt. Trong bài này, bạn sẽ chạy pipeline với một tập giá trị tham số được chọn. Chúng ta sẽ làm việc này một cách có hệ thống: các giá trị cho từng siêu tham số sẽ được sắp trên một lưới, rồi pipeline sẽ lần lượt chạy qua từng điểm trên lưới đó.

Trong bài này, bạn sẽ thiết lập một lưới tham số để dùng với cross-validation nhằm chọn ra bộ tham số tốt cho bộ phân loại SMS spam.

Các biến sau đã được định nghĩa sẵn:

  • hasher — một đối tượng HashingTF
  • logistic — một đối tượng LogisticRegression.

Bài tập này là một phần của khóa học

Machine Learning với PySpark

Xem khóa học

Hướng dẫn bài tập

  • Tạo một đối tượng dựng lưới tham số (parameter grid builder).
  • Thêm các điểm lưới cho tham số numFeaturesbinary vào đối tượng HashingTF, với các giá trị lần lượt là 1024, 4096 và 16384, và True và False.
  • Thêm các điểm lưới cho tham số regParamelasticNetParam vào đối tượng LogisticRegression, với các giá trị lần lượt là 0.01, 0.1, 1.0 và 10.0, và 0.0, 0.5, và 1.0.
  • Xây dựng lưới tham số.

Bài tập tương tác thực hành trực tiếp

Hãy thử làm bài tập này bằng cách hoàn thành đoạn mã mẫu này.

# Create parameter grid
params = ____()

# Add grid for hashing trick parameters
params = params.____(____, ____) \
               .____(____, ____)

# Add grid for logistic regression parameters
params = params.____(____, ____) \
               .____(____, ____)

# Build parameter grid
params = ____.____()
Chỉnh sửa và Chạy Mã