It needs to be able to run on Taurus on your account
It needs to accept it's hyperparameters by command line parameters (for example via the argparse-python-module)
A lower RESULT must mean that it's somehow better, i.e. the area where lower results are are researched more
The result needs to be printed in Stdout in a single line like this:
RESULT: 0.123456
If you want to maximize a value, just prepend - to the result string to »negate« it and turn a maximization-problem to a minimization-problem, like this:
RESULT: -0.123456
Only the last RESULT-line counts, all others will be disregarded!
Make sure your programs can be run from any Working Directory, as it's problable that the CWD will not be the same as the directory your program runs in
Make sure your program runs on the architecture of the partition you chose
Additional information:
Once the job ran, go to the omniopt-folder it ran in and run
bash evaluate-run.sh
to gain easy access to the results
Anything in the STRING: FLOAT-Format will be saved in the DB and can be output to a CSV file via bash evaluate-run.sh
If your program does not seem to run properly, do
bash evaluate-run.sh
There, go to your project and run Check this project for errors. It will check for the most common errors in your project.
Multi-parameter optimization:
It is possible to do multi-parameter optimization in a limited, but very easy way. Instead of writing RESULT: 0.5, you only need to leave out RESULT and
write RESULT1: ... and RESULT2: ... and so on.
When no RESULT is found in the stdout, the following equation will be run:
\[ \mathrm{RESULT} = \sqrt{\mathrm{RESULT}1^2 + \mathrm{RESULT}2^2 + \dots + \mathrm{RESULT}n^2} \]
and the resulting RESULT will be used.
All outputted parameters will still be saved.
Based on HyperOpt —
Bergstra, J., Yamins, D., Cox, D. D. (2013) Making a Science of Model Search: Hyperparameter Optimization in Hundreds of Dimensions for Vision Architectures. TProc. of the 30th International Conference on Machine Learning (ICML 2013), June 2013, pp. I-115 to I-23.