Skip to main content

Augment like there's no tomorrow: Consistently performing neural networks

Project description

Augment like there's no tomorrow: Consistently performing neural networks for medical imaging [arXiv]

This repository contains implementations for StrongAugment and creating distribution-shifted datasets.

Installation

pip3 install strong-augment

Training with strong augmentation.

To train your neural networks with strong augmentatiom simply include StrongAugment to your image transformation pipeline!

import torchvision.transforms as T
from strong_augment import StrongAugment

trnsf = T.Compose(
    T.RandomResizedCrop(224),
    T.RandomVerticalFlip(0.5),
    T.RandomHorizontalFlip(0.5),
    StrongAugment(operations=[2, 3, 4], probabilities=[0.5, 0.3, 0.2]), # Just one line!
    T.ToTensor(),
    T.Normalize(mean=[0.5, 0.5, 0.5], std=[0.2, 0.2, 0.2])
    T.RandomErase(0.2)
)

Creating shifted datasets.

Function shift_dataset can be used create the distribution-shifted datasets for shifted evaluation.

from functools import partial
import torchvision.transforms.functional as F
from strong_augment import shift_dataset

# Let's define the distribution shift function.
shift_fn = partial(F.adjust_gamma, gamma=0.2)

# Now we can shift the dataset!
shift_dataset(
    paths=paths_to_dataset_images,
    output_dir="/data/shifted_datasets/gamma_02",
    function=shift_fn,
    num_workers=20,
)
Processing images |##########| 100000/100000 [00:49<00:00]

Citation

If you use StrongAugment or shifted evaluation, please cite us!

@paper{strong_augment2022,
    title = {Augment like there's no tomorrow: Consistently performing neural networks for medical imaging},
    author = {Pohjonen, Joona and Stürenberg, Carolin and Föhr, Atte and Randen-Brady, Reija and Luomala, Lassi and Lohi, Jouni and Pitkänen, Esa and Rannikko, Antti and Mirtti, Tuomas},
    url = {https://arxiv.org/abs/2206.15274},
    publisher = {arXiv},
    year = {2022},
}

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

strong_augment-0.1.0.tar.gz (6.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

strong_augment-0.1.0-py3-none-any.whl (7.0 kB view details)

Uploaded Python 3

File details

Details for the file strong_augment-0.1.0.tar.gz.

File metadata

  • Download URL: strong_augment-0.1.0.tar.gz
  • Upload date:
  • Size: 6.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.2.2 CPython/3.9.5 Linux/5.15.0-58-generic

File hashes

Hashes for strong_augment-0.1.0.tar.gz
Algorithm Hash digest
SHA256 1c3589c8be4cb511549171fa57fedf0024332a739c538b98ef3cd7d216f6480a
MD5 29d7cbc41c918be32c74cfcdcba0b1a8
BLAKE2b-256 4673b2b3302a62ed75381b29eb270c1923f9e36eef04d30601dbda364d021374

See more details on using hashes here.

File details

Details for the file strong_augment-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: strong_augment-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 7.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.2.2 CPython/3.9.5 Linux/5.15.0-58-generic

File hashes

Hashes for strong_augment-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 d111245d97f7debd187d8957ea59adc74714538dc9413ee19c1b26cc7dcfc374
MD5 5b73a02454953640f9a968060f2b9ccb
BLAKE2b-256 e969051637373cac5c1071a2889f28f44eac471f3538a7ac437b24f8ed10040d

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page