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)
的張量。- 參數:
alpha (float, optional) – 用於混音的 Beta 分佈的超參數。預設值為 1。
num_classes (int, optional) – 批次中的類別數量。用於單熱編碼。只有當標籤已經是單熱編碼時才能為 None。
labels_getter (callable 或 "default", optional) – 指出如何識別輸入中的標籤。預設情況下,如果第二個參數是 tensor,則會將其選作標籤。這涵蓋了最常見的場景,即此轉換被呼叫為
CutMix()(imgs_batch, labels_batch)
。它也可以是一個 callable,它接受與轉換相同的輸入,並傳回標籤。
使用
CutMix
的範例