Träna bildklassificerare

Fördjupad djupinlärning med PyTorch

Michal Oleszak

Machine Learning Engineer

Dataaugmentering – en återblick

Bild på en katt.

Fördjupad djupinlärning med PyTorch

Dataaugmentering – en återblick

Bild på en katt speglad horisontellt och roterad.

Fördjupad djupinlärning med PyTorch

Vad bör inte augmenteras

Gul citron och grön lime ser likadana ut, de skiljer sig bara i färg.

Fördjupad djupinlärning med PyTorch

Vad bör inte augmenteras

Gul citron och grön lime ser likadana ut, de skiljer sig bara i färg.

Fördjupad djupinlärning med PyTorch

Vad bör inte augmenteras

Bokstaven "W" ser ut som bokstaven "M" efter en vertikal spegling.

  • Augmenteringar kan påverka etiketten
  • Om det skapar problem beror på uppgiften
  • Välj alltid augmenteringar utifrån data och uppgift!
Fördjupad djupinlärning med PyTorch

Augmenteringar för molnklassificering

Ett urval av molnbilder.

  • Slumpmässig rotation: exponerar modellen för molnformationer i olika vinklar
  • Horisontell spegling: simulerar olika perspektiv på himlen
  • Automatisk kontrastjustering: simulerar olika ljusförhållanden
train_transforms = transforms.Compose([
    transforms.RandomHorizontalFlip(),
    transforms.RandomRotation(45),
    transforms.RandomAutocontrast(),
    transforms.ToTensor(),
    transforms.Resize((128, 128))
])
Fördjupad djupinlärning med PyTorch

Korsentropi som förlustfunktion

  • Binär klassificering: binär korsentropi (BCE) som förlustfunktion
  • Flerklassklassificering: korsentropi som förlustfunktion
  • criterion = nn.CrossEntropyLoss()
Fördjupad djupinlärning med PyTorch

Träningsloop för bildklassificerare

net = Net(num_classes=7)

criterion = nn.CrossEntropyLoss()
optimizer = optim.Adam(net.parameters(), lr=0.001)


for epoch in range(10): for images, labels in dataloader_train: optimizer.zero_grad() outputs = net(images) loss = criterion(outputs, labels) loss.backward() optimizer.step()
Fördjupad djupinlärning med PyTorch

Nu kör vi en övning!

Fördjupad djupinlärning med PyTorch

Preparing Video For Download...