def __init__(self, trainable_name, config=None, trial_id=None, local_dir=DEFAULT_RESULTS_DIR, experiment_tag="", resources=None, stopping_criterion=None, checkpoint_freq=0, checkpoint_at_end=False, export_formats=None, restore_path=None, upload_dir=None, trial_name_creator=None, custom_loggers=None, sync_function=None, max_failures=0): """Initialize a new trial. The args here take the same meaning as the command line flags defined in ray.tune.config_parser. """ Trial._registration_check(trainable_name) # Trial config self.trainable_name = trainable_name self.config = config or {} self.local_dir = os.path.expanduser(local_dir) self.experiment_tag = experiment_tag self.resources = ( resources or self._get_trainable_cls().default_resource_request(self.config)) self.stopping_criterion = stopping_criterion or {} self.upload_dir = upload_dir self.custom_loggers = custom_loggers self.sync_function = sync_function validate_sync_function(sync_function) self.verbose = True self.max_failures = max_failures # Local trial state that is updated during the run self.last_result = None self.last_update_time = -float("inf") self.checkpoint_freq = checkpoint_freq self.checkpoint_at_end = checkpoint_at_end self._checkpoint = Checkpoint(storage=Checkpoint.DISK, value=restore_path) self.export_formats = export_formats self.status = Trial.PENDING self.logdir = None self.runner = None self.result_logger = None self.last_debug = 0 self.trial_id = Trial.generate_id() if trial_id is None else trial_id self.error_file = None self.num_failures = 0 self.trial_name = None if trial_name_creator: self.trial_name = trial_name_creator(self)
def __init__(self, trainable_name, config=None, trial_id=None, local_dir=DEFAULT_RESULTS_DIR, experiment_tag="", resources=None, stopping_criterion=None, checkpoint_freq=0, checkpoint_at_end=False, restore_path=None, upload_dir=None, trial_name_creator=None, custom_loggers=None, sync_function=None, max_failures=0): """Initialize a new trial. The args here take the same meaning as the command line flags defined in ray.tune.config_parser. """ Trial._registration_check(trainable_name) # Trial config self.trainable_name = trainable_name self.config = config or {} self.local_dir = os.path.expanduser(local_dir) self.experiment_tag = experiment_tag self.resources = ( resources or self._get_trainable_cls().default_resource_request(self.config)) self.stopping_criterion = stopping_criterion or {} self.upload_dir = upload_dir self.custom_loggers = custom_loggers self.sync_function = sync_function validate_sync_function(sync_function) self.verbose = True self.max_failures = max_failures # Local trial state that is updated during the run self.last_result = None self.last_update_time = -float("inf") self.checkpoint_freq = checkpoint_freq self.checkpoint_at_end = checkpoint_at_end self._checkpoint = Checkpoint( storage=Checkpoint.DISK, value=restore_path) self.status = Trial.PENDING self.location = None self.logdir = None self.result_logger = None self.last_debug = 0 self.trial_id = Trial.generate_id() if trial_id is None else trial_id self.error_file = None self.num_failures = 0 self.trial_name = None if trial_name_creator: self.trial_name = trial_name_creator(self)
def __init__(self, name, run, stop=None, config=None, resources_per_trial=None, num_samples=1, local_dir=None, upload_dir=None, trial_name_creator=None, custom_loggers=None, sync_function=None, checkpoint_freq=0, checkpoint_at_end=False, max_failures=3, restore=None, repeat=None, trial_resources=None): validate_sync_function(sync_function) if sync_function: assert upload_dir, "Need `upload_dir` if sync_function given." if repeat: _raise_deprecation_note("repeat", "num_samples", soft=False) if trial_resources: _raise_deprecation_note("trial_resources", "resources_per_trial", soft=True) resources_per_trial = trial_resources spec = { "run": self._register_if_needed(run), "stop": stop or {}, "config": config or {}, "resources_per_trial": resources_per_trial, "num_samples": num_samples, "local_dir": local_dir or DEFAULT_RESULTS_DIR, "upload_dir": upload_dir or "", # argparse converts None to "null" "trial_name_creator": trial_name_creator, "custom_loggers": custom_loggers, "sync_function": sync_function or "", # See `upload_dir`. "checkpoint_freq": checkpoint_freq, "checkpoint_at_end": checkpoint_at_end, "max_failures": max_failures, "restore": restore } self.name = name self.spec = spec
def __init__(self, trainable_name, config=None, trial_id=None, local_dir=DEFAULT_RESULTS_DIR, experiment_tag="", resources=None, stopping_criterion=None, checkpoint_freq=0, checkpoint_at_end=False, keep_checkpoints_num=None, checkpoint_score_attr="", export_formats=None, restore_path=None, upload_dir=None, trial_name_creator=None, loggers=None, sync_function=None, max_failures=0): """Initialize a new trial. The args here take the same meaning as the command line flags defined in ray.tune.config_parser. """ Trial._registration_check(trainable_name) # Trial config self.trainable_name = trainable_name self.config = config or {} self.local_dir = os.path.expanduser(local_dir) self.experiment_tag = experiment_tag self.resources = ( resources or self._get_trainable_cls().default_resource_request(self.config)) self.stopping_criterion = stopping_criterion or {} self.upload_dir = upload_dir self.loggers = loggers self.sync_function = sync_function validate_sync_function(sync_function) self.verbose = True self.max_failures = max_failures # Local trial state that is updated during the run self.last_result = {} self.last_update_time = -float("inf") self.checkpoint_freq = checkpoint_freq self.checkpoint_at_end = checkpoint_at_end self.history = [] self.keep_checkpoints_num = keep_checkpoints_num self._cmp_greater = not checkpoint_score_attr.startswith("min-") self.best_checkpoint_attr_value = -float("inf") \ if self._cmp_greater else float("inf") # Strip off "min-" from checkpoint attribute self.checkpoint_score_attr = checkpoint_score_attr \ if self._cmp_greater else checkpoint_score_attr[4:] self._checkpoint = Checkpoint(storage=Checkpoint.DISK, value=restore_path) self.export_formats = export_formats self.status = Trial.PENDING self.logdir = None self.runner = None self.result_logger = None self.last_debug = 0 self.trial_id = Trial.generate_id() if trial_id is None else trial_id self.error_file = None self.num_failures = 0 self.custom_trial_name = None # AutoML fields self.results = None self.best_result = None self.param_config = None self.extra_arg = None self._nonjson_fields = [ "_checkpoint", "loggers", "sync_function", "results", "best_result", "param_config", "extra_arg", ] if trial_name_creator: self.custom_trial_name = trial_name_creator(self)
def __init__(self, trainable_name, config=None, trial_id=None, local_dir=DEFAULT_RESULTS_DIR, experiment_tag="", resources=None, stopping_criterion=None, checkpoint_freq=0, checkpoint_at_end=False, keep_checkpoints_num=None, checkpoint_score_attr="", export_formats=None, restore_path=None, upload_dir=None, trial_name_creator=None, loggers=None, sync_function=None, max_failures=0): """Initialize a new trial. The args here take the same meaning as the command line flags defined in ray.tune.config_parser. """ Trial._registration_check(trainable_name) # Trial config self.trainable_name = trainable_name self.config = config or {} self.local_dir = local_dir # This remains unexpanded for syncing. self.experiment_tag = experiment_tag trainable_cls = self._get_trainable_cls() if trainable_cls and hasattr(trainable_cls, "default_resource_request"): default_resources = trainable_cls.default_resource_request( self.config) if default_resources: if resources: raise ValueError( "Resources for {} have been automatically set to {} " "by its `default_resource_request()` method. Please " "clear the `resources_per_trial` option.".format( trainable_cls, default_resources)) resources = default_resources self.resources = resources or Resources(cpu=1, gpu=0) self.stopping_criterion = stopping_criterion or {} self.upload_dir = upload_dir self.loggers = loggers self.sync_function = sync_function validate_sync_function(sync_function) self.verbose = True self.max_failures = max_failures # Local trial state that is updated during the run self.last_result = {} self.last_update_time = -float("inf") self.checkpoint_freq = checkpoint_freq self.checkpoint_at_end = checkpoint_at_end self.history = [] self.keep_checkpoints_num = keep_checkpoints_num self._cmp_greater = not checkpoint_score_attr.startswith("min-") self.best_checkpoint_attr_value = -float("inf") \ if self._cmp_greater else float("inf") # Strip off "min-" from checkpoint attribute self.checkpoint_score_attr = checkpoint_score_attr \ if self._cmp_greater else checkpoint_score_attr[4:] self._checkpoint = Checkpoint(storage=Checkpoint.DISK, value=_find_newest_ckpt(restore_path)) self.export_formats = export_formats self.status = Trial.PENDING self.logdir = None self.runner = None self.result_logger = None self.last_debug = 0 self.trial_id = Trial.generate_id() if trial_id is None else trial_id self.error_file = None self.num_failures = 0 self.custom_trial_name = None # AutoML fields self.results = None self.best_result = None self.param_config = None self.extra_arg = None self._nonjson_fields = [ "_checkpoint", "loggers", "sync_function", "results", "best_result", "param_config", "extra_arg", ] if trial_name_creator: self.custom_trial_name = trial_name_creator(self)