Buat sebuah grid
Selanjutnya, Anda perlu membuat grid nilai yang akan ditelusuri saat mencari hyperparameter yang optimal. Submodul pyspark.ml.tuning menyertakan kelas bernama ParamGridBuilder yang melakukan hal tersebut (mungkin Anda mulai melihat polanya; PySpark memiliki submodul untuk hampir semua hal!).
Anda perlu menggunakan metode .addGrid() dan .build() untuk membuat grid yang dapat digunakan untuk validasi silang. Metode .addGrid() menerima parameter model (atribut dari Estimator model, lr, yang Anda buat beberapa latihan lalu) dan daftar nilai yang ingin Anda coba.
Metode .build() tidak menerima argumen; metode ini hanya mengembalikan grid yang akan Anda gunakan nanti.
Latihan ini adalah bagian dari kursus
Dasar-Dasar PySpark
Petunjuk latihan
- Impor submodul
pyspark.ml.tuningdengan aliastune. - Panggil konstruktor kelas
ParamGridBuilder()tanpa argumen. Simpan sebagaigrid. - Panggil metode
.addGrid()padagriddenganlr.regParamsebagai argumen pertama dannp.arange(0, .1, .01)sebagai argumen kedua. Panggilan kedua ini adalah fungsi dari modulnumpy(diimporas np) yang membuat daftar angka dari 0 hingga .1, bertambah sebesar .01. Timpagriddengan hasilnya. - Perbarui
gridlagi dengan memanggil metode.addGrid()untuk kedua kalinya guna membuat grid untuklr.elasticNetParamyang hanya mencakup nilai[0, 1]. - Panggil metode
.build()padagriddan timpa dengan keluarannya.
Latihan interaktif praktis
Cobalah latihan ini dengan menyelesaikan kode contoh berikut.
# Import the tuning submodule
import ____ as ____
# Create the parameter grid
grid = tune.____
# Add the hyperparameter
grid = grid.addGrid(____, np.arange(0, .1, .01))
grid = grid.addGrid(____, ____)
# Build the grid
grid = grid.build()