Căutare aleatorie cu Random Forest
Pentru a-ți consolida cunoștințele despre eșantionarea aleatorie, hai să exersăm cu alți hiperparametri și un alt algoritm.
Ca și înainte, creează câteva liste de hiperparametri care pot fi combinate într-o listă de liste. Vei folosi hiperparametrii criterion, max_depth și max_features ai algoritmului de pădure aleatorie. Apoi vei eșantiona aleatoriu combinații de hiperparametri, pregătindu-te astfel pentru rularea unei căutări aleatorie.
Vei folosi un pachet ușor diferit pentru eșantionare în această sarcină: random.sample().
Acest exercițiu face parte din cursul
Ajustarea hiperparametrilor în Python
Instrucțiuni pentru exercițiu
- Creează liste cu valorile
'gini'și'entropy'pentrucriterion, respectiv"auto", "sqrt", "log2", Nonepentrumax_features. - Creează o listă cu valori între 3 și 55 inclusiv pentru hiperparametrul
max_depthși atribuie-o listeimax_depth_list. Reține cărange(N,M)creează o listă de laNpână laM-1. - Combină aceste liste într-o listă de liste din care să eșantionezi, folosind
product(). - Eșantionează aleatoriu 150 de modele din lista combinată și afișează rezultatul.
Exercițiu interactiv practic
Încearcă acest exercițiu completând acest cod de exemplu.
# 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(____)