Unanswered
Hey Trains-Riders,
Is There A Way From The Web Ui, To Automate Multiple Experiments, Each With A Different Configuration?
Let Me Clarify What I Mean:
Say I Have An Experiment Already Executed And Visible In The Experiments View.
I Can Manually Duplicate I
Hi ColossalDeer61 ,
Not from the UI, but you can run a simple script to do that (assuming you can parse your configuration file), here is an example:
` from trains import Task
configuration_file = {
"stage_1": {
"batch_size": 32,
"epochs": 10
},
"stage_2": {
"batch_size": 64,
"epochs": 20
},
}
template_task = Task.get_task(task_id=<YOUR TEMPLATE TASK>)
for name, params in configuration_file.items():
# clone the template task into a new write enabled task (where we can change parameters)
cloned_task = Task.clone(source_task=template_task,
name=template_task.name + ' {}'.format(name),
parent=template_task.id)
# get the original template parameters
cloned_task_parameters = cloned_task.get_parameters()
# override
for k, cloned_params in params.items():
cloned_task_parameters[k] = cloned_params
# put back into the new cloned task
cloned_task.set_parameters(cloned_task_parameters)
print('Experiment {} set with parameters {}'.format(name, cloned_task_parameters))
# enqueue the task for execution
Task.enqueue(cloned_task.id, queue_name="default") # <--- Change "default" to your queue name
print('Experiment id={} enqueue for execution'.format(cloned_task.id)) `can this to the trick?
173 Views
0
Answers
4 years ago
one year ago