Điều chỉnh siêu tham số trong học sâu

Dự đoán CTR với Machine Learning trong Python

Kevin Huo

Instructor

Learning rate và số vòng lặp

Ví dụ về learning rate

  • Trọng số được cập nhật lặp dần
    • Dùng lan truyền ngược
  • Learning rate phù hợp: loss giảm nhanh rồi ổn định
    • Đường màu đỏ
  • Learning rate quá cao: “vượt quá đích”, loss rất lớn
    • Đường màu vàng
Dự đoán CTR với Machine Learning trong Python

Chọn tầng ẩn

Ảnh hưởng của kích thước tầng ẩn

  • Hiệu suất tăng đến một mức độ phức tạp rồi giảm dần.
Dự đoán CTR với Machine Learning trong Python

Tìm kiếm lưới (Grid search)

param_grid = {'max_iter': [10, 20], 
              'hidden_layer_sizes': [(8, ), (16, )]}
clf = GridSearchCV(
  estimator = MLPClassifier(), param_grid = param_grid, 
  n_jobs = 4)
print(clf.best_score_)
print(clf.best_estimator_)
0.65
MLPClassifier(hidden_layer_size = (16,), ...)
Dự đoán CTR với Machine Learning trong Python

Mở rộng trong thực tế

  • Batch size và epochs cũng là siêu tham số
    • Batch size cho mini-batch (huấn luyện theo lô nhỏ), epochs là số lần duyệt toàn bộ dữ liệu huấn luyện
  • Khởi tạo trọng số có thể khác nhau và ảnh hưởng kết quả
    • Ví dụ: phân phối đều, phân phối chuẩn, v.v.
  • Thường dùng Keras và TensorFlow thay vì sklearn
    • Do sklearn bị hạn chế chức năng hơn
Dự đoán CTR với Machine Learning trong Python

Hãy thực hành!

Dự đoán CTR với Machine Learning trong Python

Preparing Video For Download...