Parameter Image Model¶
A Parameter Image model relates a set of images to a set of feature vectors, where we assume that each feature vector is a set of simulation inputs and outputs, and we assume that each image is a simulation output.
Currently, the preferred method to create a new Parameter Image model is to
import a remote delimited text file (typically a CSV file) using a web browser.
For low-level details on how the input file must be formatted, see
slycat.table.parse(). In addition to the requirements documented
there, the input delimited text file should contain the following:
- Zero to many “input” columns that contain simulation inputs, e.g: the parameters in a parameter study.
- Zero to many “output” columns that contain simulation outputs, e.g: features extracted from the simulations.
- Zero to many “rating” columns that end users will edit to designate regions in the parameter space that should be ignored / explored further in future studies.
- Zero to many “category” columns that contain categorical variables, such as the results of machine learning classification. Category variables may be numeric or string-based, and also may be edited by end users.
- Zero to many “image” columns that contain file URIs pointing to images on a remote host. Each file URI must be of the form file://hostname/path/to/file and files must be either PNG or JPEG images. Slycat uses the file URIs to retrieve images via SSH on-demand when end users hover over an observation in the scatterplot, so it is important that the files remain in-place and have appropriate file permissions.
- At least two numeric columns, regardless of type, so the visualization can generate a scatterplot.
Note that there are no constraints on variable names - end users will explicitly identify which columns are “input”, “output”, “rating”, “category”, “image”, or “none of the above” when the data is imported.
On the server side, a parameter image model includes the following artifacts that are accessible via the REST API:
- data-table -
darraycontaining the input table data (a 1D darray with one attribute per table column).
- category-columns - JSON array containing a zero-based index for every column in data-table that contains categorical data.
- image-columns - JSON array containing a zero-based index for every column in data-table that contains images.
- input-columns - JSON array containing a zero-based index for every column in data-table that should be considered an input.
- output-columns - JSON array containing a zero-based index for every column in data-table that should be considered an output.
- rating-columns - JSON array containing a zero-based index for every column in data-table that contains ratings.