Sampelkan Hyperparameter Secara Acak
Untuk melakukan random search, pertama-tama kita perlu mengambil sampel secara acak dari ruang hyperparameter kita.
Dalam latihan ini, Anda terlebih dahulu akan membuat beberapa daftar hyperparameter yang dapat digabungkan menjadi sebuah list of lists. Lalu Anda akan secara acak mengambil sampel kombinasi hyperparameter sebagai persiapan menjalankan random search.
Anda hanya akan menggunakan hyperparameter learning_rate dan min_samples_leaf dari algoritma GBM agar contoh tetap ilustratif dan tidak terlalu rumit.
Latihan ini adalah bagian dari kursus
Penyetelan Hyperparameter di Python
Petunjuk latihan
- Buat daftar berisi 200 nilai untuk hyperparameter
learning_rateantara 0,01 dan 1,5 lalu simpan ke daftarlearn_rate_list. - Buat daftar nilai antara 10 hingga 40 (inklusif) untuk hyperparameter
min_samples_leaflalu simpan ke daftarmin_samples_list. - Gabungkan kedua daftar ini menjadi sebuah list of lists yang akan diambil sampelnya.
- Secara acak sampelkan 250 model dari kombinasi hyperparameter ini dan cetak hasilnya.
Latihan interaktif praktis
Cobalah latihan ini dengan menyelesaikan kode contoh berikut.
# Create a list of values for the learning_rate hyperparameter
learn_rate_list = list(np.____(____,____,____))
# Create a list of values for the min_samples_leaf hyperparameter
min_samples_list = list(____(____,____))
# Combination list
combinations_list = [list(x) for x in ____(____, min_samples_list)]
# Sample hyperparameter combinations for a random search.
random_combinations_index = np.____(range(0, len(____)), ____, replace=False)
combinations_random_chosen = [combinations_list[x] for x in ____]
# Print the result
print(____)