Shortcuts

CutMix

class torchvision.transforms.v2.CutMix(*, alpha: float = 1.0, num_classes: Optional[int] = None, labels_getter='default')[source]

将CutMix应用于提供的图像和标签批次。

论文: CutMix: Regularization Strategy to Train Strong Classifiers with Localizable Features.

注意

此变换旨在用于批量样本,而不是单个图像。有关详细使用示例,请参见 如何使用CutMix和MixUp。 样本配对是确定性的,通过匹配批次中的连续样本来完成,因此需要对批次进行洗牌(这是一个实现细节,而不是一个保证的惯例。)

在输入中,标签应为形状为(batch_size,)的张量。它们将被转换为形状为(batch_size, num_classes)的张量。

Parameters:
  • alpha (float, 可选) – 用于mixup的Beta分布的超参数。默认值为1。

  • num_classes (int, optional) – 批次中的类别数量。用于独热编码。 只有在标签已经是独热编码时,才可以为None。

  • labels_getter (callable"default", 可选) – 指示如何在输入中识别标签。 默认情况下,如果第二个参数是张量,则会选择第二个参数作为标签。这涵盖了最常见的场景,即此变换被调用为 CutMix()(imgs_batch, labels_batch)。 它也可以是一个可调用对象,该对象接受与变换相同的输入,并返回标签。

使用CutMix的示例:

如何使用CutMix和MixUp

How to use CutMix and MixUp