最佳化航班線性迴歸
到目前為止,你在建立模型時都使用了預設的超參數。這個練習中,你會用交叉驗證來選擇一組最佳(或接近最佳)的模型超參數。
以下物件已經建立好:
regression— 一個LinearRegression物件pipeline— 一個包含 string indexer、one-hot encoder、vector assembler,以及 linear regression 的 pipeline,還有evaluator— 一個RegressionEvaluator物件。
本練習屬於課程
使用 PySpark 的機器學習
練習說明
- 建立一個參數網格產生器(parameter grid builder)。
- 為
regression.regParam(數值為 0.01、0.1、1.0、10.0)與regression.elasticNetParam(數值為 0.0、0.5、1.0)加入網格。 - 建立(build)參數網格。
- 建立一個交叉驗證器(cross validator),並指定 5 等分(five folds)。
動手互動練習
試著完成這個範例程式碼,體驗一下這個練習。
# Create parameter grid
params = ____()
# Add grids for two parameters
params = params.____(____, ____) \
.____(____, ____)
# Build the parameter grid
params = params.____()
print('Number of models to be tested: ', len(params))
# Create cross-validator
cv = ____(estimator=____, estimatorParamMaps=____, evaluator=____, ____)