Spaces:
Sleeping
Sleeping
| from itertools import product | |
| import random | |
| def generate_random_search(grid, num_trials=300, seed=42): | |
| random.seed(seed) | |
| keys = list(grid.keys()) | |
| values = list(grid.values()) | |
| all_combinations = [] | |
| for combo in product(*values): | |
| params = dict(zip(keys, combo)) | |
| # Convert ratios to actual LR values | |
| params["real_init_lr"] = params["max_lr"] / params["init_lr"] | |
| params["real_final_lr"] = params["max_lr"] / params["final_lr"] | |
| all_combinations.append(params) | |
| # sample num_runs out of this | |
| indices = random.sample(range(len(all_combinations)), num_trials) | |
| hp_subset = [all_combinations[i] for i in indices] | |
| return hp_subset |