Ricerca casuale con Random Forest
Per consolidare la tua conoscenza del campionamento casuale, proviamo un esercizio simile ma con iperparametri e algoritmo diversi.
Come prima, crea alcune liste di iperparametri che possano essere unite in una lista di liste. Userai gli iperparametri criterion, max_depth e max_features dell'algoritmo Random Forest. Poi campionerai casualmente combinazioni di iperparametri in preparazione all'esecuzione di una random search.
In questo esercizio userai un pacchetto leggermente diverso per il campionamento, random.sample().
Questo esercizio fa parte del corso
Ottimizzazione degli iperparametri in Python
Istruzioni dell'esercizio
- Crea le liste dei valori
'gini'e'entropy'percriterione"auto", "sqrt", "log2", Nonepermax_features. - Crea una lista di valori tra 3 e 55 inclusi per l'iperparametro
max_depthe assegnala alla listamax_depth_list. Ricorda cherange(N,M)crea una lista daNaM-1. - Combina queste liste in una lista di liste da cui campionare usando
product(). - Campiona casualmente 150 modelli dalla lista combinata e stampa il risultato.
Esercizio pratico interattivo
Prova a risolvere questo esercizio completando il codice di esempio.
# 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(____)