การปรับจูน Hyperparameter

การแข่งขัน Kaggle ด้วย Python

Yauhen Babakhin

Kaggle Grandmaster

การวนซ้ำ

โมเดล Validation RMSE Public LB RMSE ตำแหน่ง Public LB
Simple mean 9.986 9.409 1449 / 1500
Group mean 9.978 9.407 1411 / 1500
Gradient Boosting 5.996 4.595 1109 / 1500
เพิ่มฟีเจอร์ชั่วโมง 5.553 4.352 1068 / 1500
เพิ่มฟีเจอร์ระยะทาง 5.268 4.103 1006 / 1500
... ... ... ...
การแข่งขัน Kaggle ด้วย Python

การวนซ้ำ

โมเดล Validation RMSE Public LB RMSE ตำแหน่ง Public LB
Simple mean 9.986 9.409 1449 / 1500
Group mean 9.978
Gradient Boosting 5.996 4.595 1109 / 1500
เพิ่มฟีเจอร์ชั่วโมง 5.553
เพิ่มฟีเจอร์ระยะทาง 5.268 4.103 1006 / 1500
... ... ... ...
การแข่งขัน Kaggle ด้วย Python

การปรับ Hyperparameter

 

ประเภทการแข่งขัน Feature engineering การปรับ Hyperparameter
Classic Machine Learning +++ +
Deep Learning - +++
การแข่งขัน Kaggle ด้วย Python

Ridge Regression

 

การถดถอยเชิงเส้นแบบกำลังสองน้อยที่สุด

$$Loss = \sum_{i=1}^{N}{(y_i - \hat{y}_i)^2} \to \min$$

การแข่งขัน Kaggle ด้วย Python

Ridge Regression

 

การถดถอยเชิงเส้นแบบกำลังสองน้อยที่สุด

$$Loss = \sum_{i=1}^{N}{(y_i - \hat{y}_i)^2} \to \min$$

Ridge Regression

$$Loss = \sum_{i=1}^{N}{(y_i - \hat{y}_i)^2 + \alpha\sum_{j=1}^{K}{{w_j}^2}} \to \min$$

การแข่งขัน Kaggle ด้วย Python

กลยุทธ์การปรับ Hyperparameter

 

  • Grid search. กำหนดกริดค่า Hyperparameter ล่วงหน้า
  • Random search. กำหนดช่วงการค้นหาค่า Hyperparameter
  • Bayesian optimization. กำหนดช่วงการค้นหาค่า Hyperparameter

แผนภาพ Grid search

แผนภาพ Random search

การแข่งขัน Kaggle ด้วย Python

Grid Search

# Possible alpha values
alpha_grid = [0.01, 0.1, 1, 10]

from sklearn.linear_model import Ridge results = {} # For each value in the grid for candidate_alpha in alpha_grid:
# Create a model with a specific alpha value ridge_regression = Ridge(alpha=candidate_alpha)
# Find the validation score for this model
# Save the results for each alpha value results[candidate_alpha] = validation_score
การแข่งขัน Kaggle ด้วย Python

มาฝึกกันเถอะ!

การแข่งขัน Kaggle ด้วย Python

Preparing Video For Download...