Skip to content

Releases: hpi-xnor/bitorch

Version 0.3.0

13 Jan 17:39
Compare
Choose a tag to compare

[0.3.0] - 2023/01/13

Added

  • new models:
  • simple example script for MNIST
  • support for integration of bitorch's inference engine for the following layers
    • QLinear
    • QConv
  • a quantized DLRM version, derived from this implementation
  • example code for training the quantized DLRM model
  • new quantization function: Progressive Sign
  • new features in PyTorch Lightning example:
    • training with Knowledge Distillation
    • improved logging
    • callback to update Progressive Sign module
  • option to integrate custom models, datasets, quantization functions
  • a quantization scheduler which lets you change quantization methods during training
  • a padding layer

Changed

  • requirements changed:
    • code now depends on torch 1.12.x and torchvision 0.13.x
    • requirements for examples are now stored at their respective folders
    • optional requirements now install everything needed to run all examples
  • code is now formatted with the black code formatter
  • using PyTorch's implementation of RAdam
  • renamed the bitwidth attribute of quantization functions to bit_width
  • moved the image datasets out of the bitorch core package into the image classification example

Fixed

  • fix error from updated protobuf package

Version 0.2.0

19 May 13:30
Compare
Choose a tag to compare

[0.2.0] - 2022/05/19

Added

  • automatic documentation generation using sphinx
  • more documentation of layers and modules
  • bit-width of quantization functions is now stored
  • new layers:
    • Pact activation function
    • QEmbedding
    • QEmbeddingBag
  • fvbitcore support in the example scripts for flop and model size estimation on operation level

Changed

  • image classification example:
    • script now uses pytorch lightning
    • it includes distributed training capability
    • added wandb metric logging
  • QConv layers can now be pickled
  • Different quantized versions of LeNet available

Fixed

  • a bug where layer input and weight quantization functions could not be set using command line arguments
  • a bug where modules could not be imported in OS that use different path separators than '/'

Version 0.1.1

21 Jan 09:58
Compare
Choose a tag to compare

[0.1.1] - 2022/01/21

Changed

  • make package compatible with python 3.7

Version 0.1.0

06 Jan 10:11
Compare
Choose a tag to compare

[0.1.0] - 2022/01/06

  • added basic quantized layers
    • QActivation
    • QConv
    • QLinear
  • added several debug layers
  • added resnet, lenet
  • added various quantization functions
    • approxsign
    • dorefa
    • sign
    • steheaviside
    • swishsign
  • added support for cifar10 and mnist
  • adds general training script for image classification
  • result logger for csv and tensorboard
  • checkpoint manager
  • eta estimator
  • experiment creator
  • model visualization in logs and tensorboard
  • config classes for bitorch layers / quantizations with automated argparse argument creation