Implements functions necessary to build an `EnsembleLearner` suitable for bioimgage segmentation

Config

class Config[source]

Config(proj_dir:str='deepflash2', staple_thres:float=0.5, staple_fval:int=1, mv_undec:int=0, n:int=5, max_splits:int=5, random_state:int=42, arch:str='Unet', encoder_name:str='resnet34', encoder_weights:str='imagenet', c:int=2, tile_shape:int=512, il:bool=False, base_lr:float=0.001, bs:int=4, wd:float=0.001, mpt:bool=False, optim:str='Adam', loss:str='CrossEntropyDiceLoss', n_iter:int=2000, sample_mult:int=0, tta:bool=True, border_padding_factor:float=0.25, shift:float=0.5, gamma_limit_lower:int=80, gamma_limit_upper:int=120, CLAHE_clip_limit:float=0.0, brightness_limit:float=0.0, contrast_limit:float=0.0, flip:bool=True, rot:int=360, distort_limit:float=0, mode:str='multiclass', loss_alpha:float=0.5, loss_beta:float=0.5, loss_gamma:float=2.0, loss_smooth_factor:float=0.0, pred_tta:bool=True, min_pixel_export:int=0, gt_dir:str='GT_Estimation', train_dir:str='Training', pred_dir:str='Prediction', ens_dir:str='ensemble', val_dir:str='valid')

Config class for settings.

t1 = Config(n=3)
t1.save('test_config')
t2 = Config()
t2.load('test_config.json')
test_eq(t1, t2)
Saved current configuration to test_config.json
Successsfully loaded configuration from test_config.json

Ensemble Prediction Class

plt.imshow(_get_gaussian((512,512)));

energy_score[source]

energy_score(x, T=1, dim=1)

Return the energy score as proposed by Liu, Weitang, et al. (2020).

class EnsemblePredict[source]

EnsemblePredict(models_paths, zarr_store=None)

Class for prediction with multiple models

Ensemble Learner

class EnsembleLearner[source]

EnsembleLearner(image_dir='images', mask_dir=None, config=None, path=None, ensemble_dir=None, item_tfms=None, label_fn=None, metrics=None, cbs=None, ds_kwargs={}, dl_kwargs={}, model_kwargs={}, stats=None, files=None) :: GetAttr

Meta class to train and predict model ensembles with n models