Tuner is an application for finding optimal parameter settings for complex algorithms. It supports sampling, resampling, and optimizaing withing a high-dimensional parameter space. It also allows the user to visually see the stability of certaint parameter settings with respect to the objective measures. This is especially important in cases where one desires an optimum that is invariant to parameter settings (so things stay good over a wide range of parameter settings).
Tuner requires Java (version 6 and 7 tested).
The Tuner package needs to be built from source using the sbt build tool. Clone the repo and then run
bin/sbt compile bin/sbt run
from the repository directory. The first line builds tuner and the second line runs it.
To run Tuner there is a shell script,
bin/tuner (for Unix/Mac) and
bin/tuner.bat (for Windows).
The startup scripts take care of set up java with 6GB of heap space as the
default is really too small to do anything. You can adjust this using
JAVA_OPTS environment variable.
There is a pre-built project for testing purposes that you can download here. Unpack this file somewhere. If you can open it and everything draws correctly then Tuner should be at least mostly working. Here is how to open an external project:
See the wiki for more detailed information at https://github.com/gabysbrain/tuner/wiki/SamplingScript.
The scripts needs to take 2 command line arguments: The first argument is a file path to an input csv file, which is where Tuner will place the sample point locations. The second argument is the output file path where Tuner expects the result csv file to be written. The output csv file must contain both the sample locations (i.e. the same columns as in the input file) as well as the assessment results (dice coefficients, volume errors, etc.) from the segmentation.
The CSV files use standard US/international format, i.e. ',' as separator, '.' as decimal point, and the first line contains comma-separated column headers.
Tuner is written in Scala. For building it uses simple build tool installed. The sbt build script should take care of downloading all the required libraries.