Pencarian Acak dengan Random Forest
Untuk memantapkan pemahaman Anda tentang pengambilan sampel acak, mari lakukan latihan serupa namun dengan hiperparameter dan algoritma yang berbeda.
Seperti sebelumnya, buat beberapa daftar hiperparameter yang dapat dipasangkan menjadi daftar berisi daftar. Anda akan menggunakan hiperparameter criterion, max_depth, dan max_features dari algoritme random forest. Lalu, Anda akan mengambil sampel kombinasi hiperparameter secara acak sebagai persiapan menjalankan random search.
Anda akan menggunakan paket yang sedikit berbeda untuk pengambilan sampel pada tugas ini, yaitu random.sample().
Latihan ini adalah bagian dari kursus
Penyetelan Hyperparameter di Python
Petunjuk latihan
- Buat daftar nilai
'gini'dan'entropy'untukcriterionserta"auto", "sqrt", "log2", Noneuntukmax_features. - Buat daftar nilai antara 3 hingga 55 (inklusif) untuk hiperparameter
max_depthdan simpan ke daftarmax_depth_list. Ingat bahwarange(N,M)akan membuat daftar dariNhinggaM-1. - Gabungkan daftar-daftar ini menjadi daftar berisi daftar yang akan diambil sampelnya menggunakan
product(). - Ambil sampel secara acak sebanyak 150 model dari daftar gabungan tersebut dan cetak hasilnya.
Latihan interaktif praktis
Cobalah latihan ini dengan menyelesaikan kode contoh berikut.
# Create lists for criterion and max_features
criterion_list = ____
max_feature_list = ____
# Create a list of values for the max_depth hyperparameter
max_depth_list = list(range(____,____))
# Combination list
combinations_list = [list(x) for x in product(____, ____, ____)]
# Sample hyperparameter combinations for a random search
combinations_random_chosen = random.sample(____, ____)
# Print the result
print(____)