torch_mist.utils

Subpackages

Submodules

Package Contents

Functions

train_mi_estimator(, max_epochs, max_iterations, ...)

freeze(→ Any)

is_trainable(→ bool)

n_trainable_parameters(→ int)

evaluate_mi(, batch_size, num_workers, Dict[str, float]])

estimate_mi(, max_epochs, max_iterations, ...)

k_fold_mi_estimate(, n_estimations, save_log, ...)

torch_mist.utils.train_mi_estimator(estimator: torch_mist.estimators.base.MIEstimator, train_data: torch_mist.utils.data.utils.TensorDictLike, valid_data: torch_mist.utils.data.utils.TensorDictLike | None = None, valid_percentage: float = 0.1, batch_size: int | None = None, num_workers: int = 0, device: torch.device | str = torch.device('cpu'), max_epochs: int | None = None, max_iterations: int | None = None, optimizer_class: Type[torch.optim.Optimizer] = Adam, optimizer_params: Dict[str, Any] | None = None, lr_annealing: bool = False, warmup_percentage: float = 0, verbose: bool = True, logger: torch_mist.utils.logging.logger.base.Logger | bool | None = None, early_stopping: bool = False, patience: int | None = None, tolerance: float = 0.001, fast_train: bool = False, train_logged_methods: List[str | Tuple[str, Callable]] | None = None, eval_logged_methods: List[str | Tuple[str, Callable]] | None = None) Any | None
torch_mist.utils.freeze(function: Any) Any
torch_mist.utils.is_trainable(function: Any) bool
torch_mist.utils.n_trainable_parameters(function: Any) int
torch_mist.utils.evaluate_mi(estimator: torch_mist.estimators.base.MIEstimator, data: torch_mist.utils.data.utils.TensorDictLike, device: torch.device = torch.device('cpu'), batch_size: int | None = None, num_workers: int = 0) float | Dict[str, float]
torch_mist.utils.estimate_mi(data: torch_mist.utils.data.utils.TensorDictLike, estimator: torch_mist.estimators.base.MIEstimator | str = DEFAULTS['estimator_name'], valid_data: torch_mist.utils.data.utils.TensorDictLike | None = None, test_data: torch_mist.utils.data.utils.TensorDictLike | bool | None = None, valid_percentage: float = 0.1, test_percentage: float = 0.0, device: torch.device | str = torch.device('cpu'), max_epochs: int | None = None, max_iterations: int | None = None, optimizer_class: Type[torch.optim.Optimizer] = Adam, optimizer_params: Dict[str, Any] | None = None, verbose: bool = True, logger: torch_mist.utils.logging.logger.base.Logger | bool | None = None, lr_annealing: bool = False, warmup_percentage: float = 0, batch_size: int | None = DEFAULTS['batch_size'], eval_batch_size: int | None = None, num_workers: int = 0, early_stopping: bool = True, patience: int | None = None, tolerance: float = 0.001, return_estimator: bool = False, fast_train: bool = False, x_key: str = 'x', y_key: str = 'y', train_logged_methods: List[str | Tuple[str, Callable]] | None = None, eval_logged_methods: List[str | Tuple[str, Callable]] | None = None, trained_model_save_path: str | None = None, save_train_log: bool = True, **estimator_params) Dict[str, float] | float | Tuple[Dict[str, float] | float, pandas.DataFrame] | Tuple[Dict[str, float] | float, torch_mist.estimators.base.MIEstimator] | Tuple[Dict[str, float] | float, torch_mist.estimators.base.MIEstimator, pandas.DataFrame]
torch_mist.utils.k_fold_mi_estimate(data: torch_mist.utils.data.utils.TensorDictLike, estimator: torch_mist.estimators.base.MIEstimator | str = DEFAULTS['estimator_name'], verbose: bool = True, verbose_train: bool = False, logger: torch_mist.utils.logging.logger.base.Logger | bool | None = None, seed: int | None = None, folds: int = 10, batch_size: int = DEFAULTS['batch_size'], device: str | torch.device = torch.device('cpu'), n_estimations: int | None = None, save_log: bool = True, **kwargs) Tuple[float, Any]