All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
- Added
requires
wrapper (#1056)
- Revision of the MoCo SSL model (#928)
- Improved YOLO model includes YOLOv4, YOLOv5, and YOLOX networks and training algorithms (#817)
- Move SSL transforms to pl_bolts/transforms (#905)
- Reviewed
models.detection.yolo
(#851) - Reviewed
LogisticRegression
(#950) - Bumped support of min python version to py3.8+ (#1021)
- Update
numpy
compatibility to <1.25.0 (#959) - Update
torchmetrics
compatibility to <0.12.0 (#1016) - Update
pytorch-lightning
compatibility to >1.7.0,<2.0.0 ( #965, #973, #1006 )
- Dropped reference to
torch._six
(#993)
-
Updated SparseML callback for latest PyTorch Lightning (#822)
-
Updated torch version to v1.10.X (#815)
-
Dataset specific args method to CIFAR10, ImageNet, MNIST, and STL10 (#890)
-
Migrate to use
lightning-utilities
(#907) -
Support PyTorch Lightning v1.8 (#910)
-
Major revision of Bolts
under_review
flag (#835, #837)- Reviewing GAN basics,
VisionDataModule
,MNISTDataModule
,CIFAR10DataModule
(#843) - Added tests, updated doc-strings for Dummy Datasets (#865)
- Binary MNIST/EMNIST Datasets and Datamodules (#866)
- FashionMNIST/EMNIST Datamodules (#871)
- Revision
ArrayDataset
(#872) - BYOL weight update callback (#867)
- Revision
models.vision.unet
,models.vision.segmentation
(#880) - Revision of SimCLR transforms (#857)
- Revision Metrics (#878, #887)
- Revision of BYOL module and tests (#874)
- Revision of MNIST module (#873)
- Revision of dataset normalizations (#898)
- Revision of SimSiam module and tests (#891)
- Revision
datasets.kitti_dataset.KittiDataset
(#896) - SWAV improvements (#903)
- minor dcgan-import fix (#921)
- Removing extra flatten (#809)
- support number of channels!=3 in YOLOConfiguration (#806)
- CVE-2007-4559 Patch (#894)
- Added YOLO model (#552)
- Added
SRGAN
,SRImageLoggerCallback
,TVTDataModule
,SRCelebA
,SRMNIST
,SRSTL10
(#466) - Added nn.Module support for FasterRCNN backbone (#661)
- Added
RetinaNet
with torchvision backbones (#529) - Added Python 3.9 support (#786)
- VAE now uses deterministic KL divergence during training, previously estimated KL divergence by random sampling (#760)
- Fixed doctest fails with ImportError: cannot import name 'Env' from 'gym' (#751)
- Fixed MoCo v2 missing Cosine Annealing learning scheduler (#757)
- Added Soft Actor Critic (SAC) Model (#627)
- Added
EMNISTDataModule
,BinaryEMNISTDataModule
, andBinaryEMNIST
dataset (#676) - Added Advantage Actor-Critic (A2C) Model (#598)
- Added Torch ORT Callback (#720)
- Added SparseML Callback (#724)
- Changed the default values
pin_memory=False
,shuffle=False
andnum_workers=16
topin_memory=True
,shuffle=True
andnum_workers=0
of datamodules (#701) - Supporting deprecated attribute usage (#699)
- Fixed ImageNet val loader to use val transform instead of train transform (#713)
- Fixed the MNIST download giving HTTP 404 with
torchvision>=0.9.1
(#674) - Removed momentum updating from val step and add separate val queue (#631)
- Fixed moving the queue to GPU when resuming checkpoint for SwAV model (#684)
- Fixed FP16 support with vision GPT model (#694)
- Removing bias from linear model regularisation (#669)
- Fixed CPC module issue (#680)
- Replaced
load_boston
withload_diabetes
in the docs and tests (#629) - Added base encoder and MLP dimension arguments to BYOL constructor (#637)
- Fixed the MNIST download giving HTTP 503 (#633)
- Fixed type annotation of
ExperienceSource.__iter__
(#645) - Fixed
pretrained_urls
on Windows (#652) - Fixed logistic regression (#655, #664)
- Fixed double softmax in
SSLEvaluator
(#663)
- Suppressed missing package warnings, conditioned by
WARN_MISSING_PACKAGE="1"
(#617) - Updated all scripts to LARS (#613)
- Add missing
dataclass
requirements (#618)
- Renamed SSL modules:
CPCV2
>>CPC_v2
andMocoV2
>>Moco_v2
(#585) - Refactored setup.py to be typing friendly (#601)
- Added Pix2Pix model (#533)
- Moved vision models (
GPT2
,ImageGPT
,SemSegment
,UNet
) topl_bolts.models.vision
(#561)
- Fixed BYOL moving average update (#574)
- Fixed custom gamma in rl (#550)
- Fixed PyTorch 1.8 compatibility issue (#580, #579)
- Fixed handling batchnorms in
BatchGradientVerification
(#569) - Corrected
num_rows
calculation inLatentDimInterpolator
callback (#573)
- Added
input_channels
argument to UNet (#297) - Added SwAV (#239, #348, #323)
- Added data monitor callbacks
ModuleDataMonitor
andTrainingDataMonitor
(#285) - Added DCGAN module (#403)
- Added
VisionDataModule
as parent class forBinaryMNISTDataModule
,CIFAR10DataModule
,FashionMNISTDataModule
, andMNISTDataModule
(#400) - Added GIoU loss (#347)
- Added IoU loss (#469)
- Added semantic segmentation model
SemSegment
withUNet
backend (#259) - Added pption to normalize latent interpolation images (#438)
- Added flags to datamodules (#388)
- Added metric GIoU (#347)
- Added Intersection over Union Metric/Loss (#469)
- Added SimSiam model (#407)
- Added gradient verification callback (#465)
- Added Backbones to FRCNN (#475)
- Decoupled datamodules from models (#332, #270)
- Set PyTorch Lightning 1.0 as the minimum requirement (#274)
- Moved
pl_bolts.callbacks.self_supervised.BYOLMAWeightUpdate
topl_bolts.callbacks.byol_updates.BYOLMAWeightUpdate
(#288) - Moved
pl_bolts.callbacks.self_supervised.SSLOnlineEvaluator
topl_bolts.callbacks.ssl_online.SSLOnlineEvaluator
(#288) - Moved
pl_bolts.datamodules.*_dataset
topl_bolts.datasets.*_dataset
(#275) - Ensured sync across val/test step when using DDP (#371)
- Refactored CLI arguments of models (#394)
- Upgraded DQN to use
.log
(#404) - Decoupled DataModules from models - CPCV2 (#386)
- Refactored datamodules/datasets (#338)
- Refactored Vision DataModules (#400)
- Refactored
pl_bolts.callbacks
(#477) - Refactored the rest of
pl_bolts.models.self_supervised
(#481, #479 - Update [
torchvision.utils.make_grid
(https://pytorch.org/docs/stable/torchvision/utils.html#torchvision.utils.make_grid)] kwargs toTensorboardGenerativeModelImageSampler
(#494)
- Fixed duplicate warnings when optional packages are unavailable (#341)
- Fixed
ModuleNotFoundError
when importing datamoules (#303) - Fixed cyclic imports in
pl_bolts.utils.self_suprvised
(#350) - Fixed VAE loss to use KL term of ELBO (#330)
- Fixed dataloders of
MNISTDataModule
to useself.batch_size
(#331) - Fixed missing
outputs
in SSL hooks for PyTorch Lightning 1.0 (#277) - Fixed stl10 datamodule (#369)
- Fixes SimCLR transforms (#329)
- Fixed binary MNIST datamodule (#377)
- Fixed the end of batch size mismatch (#389)
- Fixed
batch_size
parameter for DataModules remaining (#344) - Fixed CIFAR
num_samples
(#432) - Fixed DQN
run_n_episodes
using the wrong environment variable (#525)
- Enabled PyTorch Lightning 1.0 compatibility
- Enabled manual returns (#267)
- Enabled PyTorch Lightning 0.10 compatibility (#264)
- Added dummy datasets (#266)
- Added
KittiDataModule
(#248) - Added
UNet
(#247) - Added reinforcement learning models, losses and datamodules (#257)
- Fixed confused logit (#222)
- Added pretrained VAE with resnet encoders and decoders
- Added pretrained AE with resnet encoders and decoders
- Added CPC pretrained on CIFAR10 and STL10
- Verified BYOL implementation
- Dropped all dependencies except PyTorch Lightning and PyTorch
- Decoupled datamodules from GAN (#206)
- Modularize AE & VAE (#196)
- Fixed gym (#221)
- Fix L1/L2 regularization (#216)
- Fix max_depth recursion crash in AsynchronousLoader (#191)
- Enabled Apache License, Version 2.0
- Moved unnecessary dependencies to
__main__
section in BYOL (#176)
- Fixed CPC STL10 finetune (#173)
- Added Faster RCNN + Pscal VOC DataModule (#157)
- Added a better lars scheduling
LARSWrapper
(#162) - Added CPC finetuner (#158)
- Added
BinaryMNISTDataModule
(#153) - Added learning rate scheduler to BYOL (#148)
- Added Cityscapes DataModule (#136)
- Added learning rate scheduler
LinearWarmupCosineAnnealingLR
(#138) - Added BYOL (#144)
- Added
ConfusedLogitCallback
(#118) - Added an asynchronous single GPU dataloader. (#1521)
- Fixed simclr finetuner (#165)
- Fixed STL10 finetuner (#164)
- Fixed Image GPT (#108)
- Fixed unused MNIST transforms in tran/val/test (#109)
- Enhanced train batch function (#107)
- Added setup and repo structure
- Added requirements
- Added docs
- Added Manifest
- Added coverage
- Added MNIST template
- Added VAE template
- Added GAN + AE + MNIST
- Added Linear Regression
- Added Moco2g
- Added simclr
- Added RL module
- Added Loggers
- Added Transforms
- Added Tiny Datasets
- Added regularization to linear + logistic models
- Added Linear and Logistic Regression tests
- Added Image GPT
- Added Recommenders module
- Device is no longer set in the DQN model init
- Moved RL loss function to the losses module
- Moved rl.common.experience to datamodules
- train_batch function to VPG model to generate batch of data at each step (POC)
- Experience source no longer gets initialized with a device, instead the device is passed at each step()
- Refactored ExperienceSource classes to be handle multiple environments.
- Removed N-Step DQN as the latest version of the DQN supports N-Step by setting the
n_step
arg to n - Deprecated common.experience
- Documentation
- Doct tests
- CI pipeline
- Imports and pkg
- CPC fixes