FastSurferCNN.utils.checkpoint¶
- class FastSurferCNN.utils.checkpoint.CheckpointConfigDict[source]¶
Methods
clear()copy()fromkeys(iterable[, value])Create a new dictionary with keys from iterable and values set to value.
get(key[, default])Return the value for key if key is in the dictionary, else default.
items()keys()pop(key[, default])If the key is not found, return the default if given; otherwise, raise a KeyError.
popitem(/)Remove and return a (key, value) pair as a 2-tuple.
setdefault(key[, default])Insert key with a value of default if key is not in the dictionary.
update([E, ]**F)If E is present and has a .keys() method, then does: for k in E: D[k] = E[k] If E is present and lacks a .keys() method, then does: for k, v in E: D[k] = v In either case, this is followed by: for k in F: D[k] = F[k]
values()
- FastSurferCNN.utils.checkpoint.check_and_download_ckpts(checkpoint_path, urls)[source]¶
Check and download a checkpoint file, if it does not exist.
- FastSurferCNN.utils.checkpoint.create_checkpoint_dir(expr_dir, expr_num)[source]¶
Create the checkpoint dir if not exists.
- Parameters:
- expr_dir
Union[os.PathLike] Directory to create.
- expr_num
int Experiment number.
- expr_dir
- Returns:
checkpoint_dirDirectory of the checkpoint.
- FastSurferCNN.utils.checkpoint.download_checkpoint(checkpoint_name, checkpoint_path, urls)[source]¶
Download a checkpoint file.
Raises an HTTPError if the file is not found or the server is not reachable.
- FastSurferCNN.utils.checkpoint.get_checkpoint(ckpt_dir, epoch)[source]¶
Find the standardizes checkpoint name for the checkpoint in the directory ckpt_dir for the given epoch.
- FastSurferCNN.utils.checkpoint.get_checkpoint_path(log_dir, resume_experiment=None)[source]¶
Find the paths to checkpoints from the experiment directory.
- FastSurferCNN.utils.checkpoint.get_checkpoints(*checkpoints, urls)[source]¶
Check and download checkpoint files if not exist.
- FastSurferCNN.utils.checkpoint.load_checkpoint_config(filename=PosixPath('/home/runner/work/FastSurfer/FastSurfer/src/FastSurferCNN/config/checkpoint_paths.yaml'))[source]¶
Load the plane dictionary from the yaml file.
- Parameters:
- Returns:
CheckpointConfigDictA dictionary representing the contents of the yaml file.
- FastSurferCNN.utils.checkpoint.load_checkpoint_config_defaults(configtype, filename=PosixPath('/home/runner/work/FastSurfer/FastSurfer/src/FastSurferCNN/config/checkpoint_paths.yaml'))[source]¶
Get the default value for a specific plane or the url.
- FastSurferCNN.utils.checkpoint.load_from_checkpoint(checkpoint_path, model, optimizer=None, scheduler=None, fine_tune=False, drop_classifier=False)[source]¶
Load the model from the given experiment number.
- Parameters:
- checkpoint_path
str,Path Path to the checkpoint.
- model
torch.nn.Module Network model.
- optimizer
Optional[torch.optim.Optimizer] Network optimizer (Default value = None).
- scheduler
Optional[Scheduler] Network scheduler (Default value = None).
- fine_tune
bool Whether to fine tune or not (Default value = False).
- drop_classifier
bool Whether to drop the classifier or not (Default value = False).
- checkpoint_path
- Returns:
- loaded_epoch
int Epoch number.
- loaded_epoch
- FastSurferCNN.utils.checkpoint.save_checkpoint(checkpoint_dir, epoch, best_metric, num_gpus, cfg, model, optimizer, scheduler=None, best=False)[source]¶
Save the state of training for resume or fine-tune.
- Parameters:
- checkpoint_dir
str,Path Path to the checkpoint directory.
- epoch
int Current epoch.
- best_metric
best_metric Best calculated metric.
- num_gpus
int Number of used gpus.
- cfg
yacs.config.CfgNode Configuration node.
- model
torch.nn.Module Used network model.
- optimizer
torch.optim.Optimizer Used network optimizer.
- scheduler
Optional[Scheduler] Used network scheduler. Optional (Default value = None).
- best
bool, default=False Whether this was the best checkpoint so far (Default value = False).
- checkpoint_dir