syntax = "proto2"; package seq2species.protos; // Summarizes metadata information for a dataset that can be used for running // training or inference. message Seq2LabelDatasetInfo { // Summarizes all possible values for a given label in the dataset. message LabelInfo { optional string name = 1; repeated string values = 2; // Per-value weights used to normalize the classes in a dataset. repeated float weights = 3; } repeated LabelInfo labels = 3; // Length (in basepairs) of the reads in the dataset. optional int32 read_length = 4; // Stride (in number of basepairs) in the moving window. optional int32 read_stride = 7; // Total number of examples in the dataset. optional int64 num_examples = 5; // Full path to the dataset. optional string dataset_path = 6; } // Summarizes metadata information about a model trained on a Seq2Label dataset. message Seq2LabelModelInfo { optional string hparams_string = 1; optional string model_type = 2; repeated string targets = 3; optional int32 num_filters = 4; optional int32 batch_size = 5; optional string metadata_path = 6; optional float training_noise_rate = 7; } // Summarizes resulting measures of modelling experiments. message Seq2LabelExperimentMeasures { optional string checkpoint_path = 1; optional int64 steps = 2; optional float wall_time = 3; optional bool experiment_infeasible = 4; message Measure { optional string name = 1; optional float value = 2; } repeated Measure measures = 5; }