detoxai.utils

Submodules

detoxai.utils.dataloader submodule

class detoxai.utils.dataloader.DetoxaiDataLoader(dataset: DetoxaiDataset, **kwargs)[source]

Bases: DataLoader

get_class_names()[source]
get_nth_batch(n: int) tuple[source]
Parameters:

n – int:

Returns:

get_nth_batch2(n: int) tuple[source]
Parameters:

n – int:

Returns:

get_num_classes() int[source]
class detoxai.utils.dataloader.WrappedDataLoader(dataset: Dataset, num_of_classes: int, **kwargs)[source]

Bases: DetoxaiDataLoader

get_num_classes() int[source]
get_class_names() list[str][source]

Name them A B C ..

detoxai.utils.dataloader.copy_data_loader(dataloader: DataLoader, batch_size: int | None = None, shuffle: bool = False, drop_last: bool = False) DetoxaiDataLoader | WrappedDataLoader[source]

Copy the dataloader

Parameters:
  • dataloader – DataLoader:

  • batch_size – int | None: (Default value = None)

  • shuffle – bool: (Default value = False)

  • drop_last – bool: (Default value = False)

Returns:

detoxai.utils.datasets submodule

detoxai.utils.datasets.calculate_max_samples(df: DataFrame, config: dict) int[source]

Calculate the maximum number of total samples possible given the constraints to avoid duplicates and maintain percentages.

Parameters:
  • df – pd.DataFrame:

  • config – dict:

Returns:

detoxai.utils.datasets.balance_dataset(df: DataFrame, config: dict) Tuple[ndarray, int][source]
Parameters:
  • df – pd.DataFrame:

  • config – dict:

Returns:

detoxai.utils.datasets.make_detoxai_datasets_variant(variant_config)[source]
Parameters:

variant_config

Returns:

detoxai.utils.datasets.get_detoxai_datasets(config: dict, transform: Callable | None = None, transforms: Callable | None = None, target_transform: Callable | None = None, download: bool = False, seed: int | None = None, device: str | None = None, saved_variant: str | None = None) Dict[str, DetoxaiDataset][source]
Parameters:
  • config – dict:

  • transform – Optional[Callable]: (Default value = None)

  • versiontransforms (# takes in a PIL image and returns a transformed) – Optional[Callable]: (Default value = None)

  • bothtarget_transform (# takes in an image and a label and returns the transformed versions of) – Optional[Callable]: (Default value = None)

  • it.download (# A function/transform that takes in the target and transforms) – bool: (Default value = False)

  • seed – Optional[int]: (Default value = None)

  • device – Union[str:

  • None] – (Default value = None)

  • saved_variant – Optional[str]: (Default value = None)

Returns:

class detoxai.utils.datasets.DetoxaiDataset(config: dict, root: str | Path, split_indices: ndarray, transform: Callable | None = None, transforms: Callable | None = None, target_transform: Callable | None = None, download: bool = False, seed: int | None = None, device: str = None)[source]

Bases: VisionDataset

download()[source]
get_class_names() List[str][source]
get_num_classes() int[source]
get_collate_fn(protected_attribute: str, protected_attribute_value: str)[source]
Parameters:
  • protected_attribute – str:

  • protected_attribute_value – str:

Returns:

detoxai.utils.decorators submodule

detoxai.utils.decorators.ensure_metrics_config_not_empty(func)[source]

detoxai.utils.experiment_logger submodule

class detoxai.utils.experiment_logger.ExperimentLogger(logger: TensorBoardLogger | WandbLogger | None)[source]

Bases: object

log_metric(metric: float, name: str, step: int = None)[source]
Parameters:
  • metric – float:

  • name – str:

  • step – int: (Default value = None)

Returns:

log_image(figure: Figure, name: str, step: int = None)[source]
Parameters:
  • figure – plt.Figure:

  • name – str:

  • step – int: (Default value = None)

Returns:

log_table(table: dict, name: str, step: int = None)[source]
Parameters:
  • table – dict:

  • name – str:

  • step – int: (Default value = None)

Returns:

detoxai.utils.transformations submodule

class detoxai.utils.transformations.SquarePad(resize_to: int | None = None)[source]

Bases: object

Module contents