CutMix¶
- class torchvision.transforms.v2.CutMix(*, alpha: float = 1.0, num_classes: Optional[int] = None, labels_getter='default')[source]¶
對提供的影像和標籤批次應用 CutMix。
論文:CutMix: 用於訓練具有可定位特徵的強大分類器的正則化策略。
注意
此變換旨在用於樣本的批次,而非單個影像。有關詳細用法示例,請參閱如何使用 CutMix 和 MixUp。樣本配對是確定性的,透過匹配批次中的連續樣本完成,因此批次需要被打亂(這是一個實現細節,而非保證的約定)。
在輸入中,標籤預期是一個形狀為
(batch_size,)的張量。它們將被轉換為形狀為(batch_size, num_classes)的張量。- 引數:
alpha (float, optional) – 用於 Mixup 的 Beta 分佈的超引數。預設為 1。
num_classes (int, optional) – 批次中的類別數量。用於 one-hot 編碼。只有當標籤已是 one-hot 編碼時,才能為 None。
labels_getter (callable or "default", optional) – 指示如何識別輸入中的標籤。預設情況下,如果第二個引數是張量,則將其作為標籤。這涵蓋了此變換被呼叫為
CutMix()(imgs_batch, labels_batch)的最常見場景。它也可以是一個可呼叫物件,接受與變換相同的輸入,並返回標籤。
使用
CutMix的示例