pretext-task design

En teknik inden for selvovervåget læring, hvor en hjælpeopgave (pretext task) designes til at tvinge modellen til at lære nyttige repræsentationer uden brug af manuelle labels.

Kort fortalt

En opgave som modellen løser for at lære nyttige repræsentationer uden manuelle labels; f.eks. at forudsige rotationen af et billede.

Kategori
teknik
Niveau
øvet

Betydninger

1
  1. 1

    En hjælpeopgave i selvovervåget læring, designet til at udnytte iboende strukturer i data (f.eks. rumlige, tidsmæssige eller farvemæssige) for at lære generelle repræsentationer uden menneskelige labels.

    • Rotation prediction er en klassisk pretext task, hvor modellen skal forudsige den anvendte rotation af et billede.Gidaris, S., Singh, P., & Komodakis, N. (2018). Unsupervised Representation Learning by Predicting Image Rotations.
    • I naturlig sprogbehandling kan en pretext task være at forudsige næste sætning (next sentence prediction).Devlin, J., et al. (2019). BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding.

Hvornår bruges det

Pretext-task design bruges i selvovervåget læring til at træne repræsentationer til downstream-opgaver. Typiske eksempler inkluderer at forudsige rotation, farvelægning, placering af brikker i et puslespil eller at forudsige manglende dele. Designet afhænger af datatype og det ønskede repræsentationsrum.

Kodeeksempel

import torch
import torch.nn as nn
import torchvision.transforms as T

class RotationPretext(nn.Module):
    # Simple rotation classifier for pretext task
    def __init__(self, backbone, num_rotations=4):
        super().__init__()
        self.backbone = backbone
        self.classifier = nn.Linear(backbone.feature_dim, num_rotations)

    def forward(self, x):
        # x: batch of images, each replicated for each rotation? Training loop handles multi-view
        features = self.backbone(x)
        return self.classifier(features)

# Usage: rotate each image by 0°, 90°, 180°, 270°, train classifier to predict rotation label.

Eksempel på en simpel rotation prediction model i PyTorch. Modellen tager et billede og forudsiger rotationen (0, 90, 180, 270 grader).

Oprindelse

Ordet 'pretext' betyder påskud eller foregivende. Opgaven er kun et påskud til at lære repræsentationer; selve opgaven er ikke målet, men midlet.

Afledte ord

3

Kilder

2