Willekeurig zoeken met Random Forest
Om je kennis van willekeurig sampelen te versterken, doen we een vergelijkbare oefening maar met andere hyperparameters en een ander algoritme.
Net als eerder maak je lijsten met hyperparameters die je kunt samenvoegen tot een lijst van lijsten. Je gebruikt de hyperparameters criterion, max_depth en max_features van het random forest-algoritme. Vervolgens neem je willekeurige samples van hyperparametercombinaties ter voorbereiding op een random search.
Voor het sampelen gebruik je in deze taak een iets ander pakket, random.sample().
Deze oefening maakt deel uit van de cursus
Hyperparameter Tuning in Python
Oefeninstructies
- Maak lijsten met de waarden
'gini'en'entropy'voorcriterionen"auto", "sqrt", "log2", Nonevoormax_features. - Maak een lijst met waarden tussen 3 en 55 (inclusief) voor de hyperparameter
max_depthen ken die toe aan de lijstmax_depth_list. Onthoud datrange(N,M)een lijst maakt vanNtot en metM-1. - Combineer deze lijsten tot een lijst van lijsten om uit te sampelen met
product(). - Neem willekeurig 150 modellen uit de gecombineerde lijst en print het resultaat.
Praktische interactieve oefening
Probeer deze oefening eens door deze voorbeeldcode in te vullen.
# 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(____)