Model (for contributors)

class scitime._model.RuntimeModelBuilder(drop_rate=0.9, meta_algo='RF', algo='RandomForestRegressor', verbose=0, bins=None)

Bases: scitime.estimate.RuntimeEstimator, scitime._log.LogMixin

Model class arguments

Parameters:
  • drop_rate – drop rate over generating data loop
  • meta_algo – meta algorithm (RF or NN)
  • algo – algo chosen for generating data / fitting meta model
  • verbose – log output (0, 1, 2 or 3)
model_fit(**kw)

builds the actual training time estimator (currently we only support NN or RF) the data is either generated from scratch or taken as input if specified, the meta algo is saved as a pkl file along with associated metadata (column names, mse per bin)

Parameters:
  • generate_data – bool (if set to True, calls _generate_data)
  • inputs – pd.DataFrame chosen as input
  • outputs – pd.DataFrame chosen as output
  • csv_name – name if csv in case we fetch data from csv
  • save_model – boolean set to True if the model needs to be saved
  • meta_algo_params – params of the meta algo
  • compress – value between 1 and 9 to compress the pkl model (the higher the more compressed)
Returns:

meta_algo

Return type:

scikit learn model

model_validate(**kw)

measures training runtimes and compares to actual runtimes once the model has been trained

Returns:results dataframe and error rate
Return type:pd.DataFrame and float
params

retrieves the estimated algorithm’s parameters if the algo is supported else, return KeyError

Returns:dictionary