Open pabloloyola opened 9 years ago
load your data in a separate process and have your function use /that/.
as a note: i think spearmint tries to do too many things resulting in, for example, your having to do workarounds. i might hack main.py to be able to use it w/o the command line which would help in your case.
Hi,
Spearmint iterates for each combination of hyperparameters (as given in the config JSON file). On each iteration it calls the user-created function that outputs a "score" or value which are then compared in order to optimize. These scores are usually the result of calling an underlying model -- defined inside the function -- with the corresponding set of hyperparameters. This makes sense since in this manner the logic of the model is totally separated from Spearmint. However, it turns out that one of the inputs models usually need -- of course, besides hyperparameters - is data, which due to this will have to be loaded within each iteration.
Concretely, the data we are using to train our models is considerably heavy, taking a lot of time to load in memory each time. We would like to load the data in memory only once and then just give it to our model on each iteration, saving precious time. Is this somehow possible? Maybe if, for instance, Spearmint could be called from within a python script we could pass the data.
I hope you can guide us a little. Thanks!