CHANGES
=======

1.4.0
-----

* Update version to 1.4.0
* Support training with automatic mixed precision

1.3.7
-----

* Update version to 1.3.7
* Maintenance Release

1.3.6
-----

* Update version to 1.3.6
* Have flake ignore py36 directory
* Don't clobber 'exceptions' namespace

1.3.5
-----

* Update version to 1.3.5
* Make it possible to get a training iterator
* Don't keep computational graph around during validation steps

1.3.4
-----

* Update version to 1.3.4
* Move feezing logic to more centralized location

1.3.3
-----

* Update version to 1.3.3
* Freeze active parameter groups when validating
* Automated Process Updated Rendered Documentation

1.3.2
-----

* Update version to 1.3.2
* Relax version pins

1.3.1
-----

* Update version to 1.3.1
* Update torch to 0.4.1
* Automated Process Updated Rendered Documentation

1.3.0
-----

* Update version to 1.3.0
* Bugfix: Deconvolution layer supports 'activation' argument
* Remove deprecated 'test\_to\_train\_ratio' argument
* Remove deprecated data\_generators
* Remove deprecated 'ClassifierTrainer' class
* Remove deprecated option 'test\_color'
* Fix label on dataframe\_monitor's plot
* Automated Process Updated Rendered Documentation

1.2.6
-----

* Update version to 1.2.6
* Fix support for validation\_transform option
* Automated Process Updated Rendered Documentation

1.2.5
-----

* Update version to 1.2.5
* Lean on split implementation in 'from\_dataset'
* Add get\_targets method to data feeds and generators
* Add method to split a data feed into two
* Automated Process Updated Rendered Documentation

1.2.4
-----

* Update version to 1.2.4
* Update readme, remove --process-depencency-links
* Allow sconce to work with torchvision 0.2.1
* Automated Process Updated Rendered Documentation

1.2.3
-----

* Update version to 1.2.3
* Ignore flake8 errors for assigning lambda expressions
* Support None for activation option
* Automated Process Updated Rendered Documentation

1.2.2
-----

* Update version to 1.2.2
* Add activation as an option for Convolution2d and AdaptiveAveragePooling2d layers
* Automated Process Updated Rendered Documentation

1.2.1
-----

* Update version to 1.2.1
* Allow setting a constant for a schedule
* Constructor arguments are made attributes
* Automated Process Updated Rendered Documentation

1.2.0
-----

* Update version to 1.2.0
* Rename test\_ to validation\_
* DataFeeds replace DataGenerators
* Update docstrings for progbar
* Fix name of module in sphinx documentation
* Fix length of underlines in sphinx documentation
* Automated Process Updated Rendered Documentation

1.1.0
-----

* Update version to 1.1.0
* Progbar uses exponentially weighted averages
* Add Subset dataset
* Bugfix: fix plotting hyperparameters backfilling
* Automated Process Updated Rendered Documentation

1.0.3
-----

* Update version to 1.0.3
* Add split option to DataGenerator.from\_dataset
* Automated Process Updated Rendered Documentation

1.0.2
-----

* Update version to 1.0.2
* Remove unused inports
* Add dataset for a folder with unlabeled images
* Fix bug when targets aren't able to be put into Tensors
* Automated Process Updated Rendered Documentation

1.0.1
-----

* Update version to 1.0.1
* Move AdaptiveAveragePooling2dLayer to its own file
* Freezing sets is\_active to False, unfreezing to True
* Bugfix: cosine schedule's inital and final values were swapped
* Automated Process Updated Rendered Documentation

1.0.0
-----

* Update version to 1.0.0
* Add ParameterGroups and Schedules, replacing RateControllers
* Create a sconce Model class
* Bugfix: image\_mixin.\_get\_image\_size\_df shouldn't set test\_transform to None
* Bugfix: trainer.test() should use test\_data\_generator
* Automated Process Updated Rendered Documentation

0.12.0
------

* Update version to 0.12.0
* Add a variational autoencoder model
* Allow for activation=None
* Add classmethod to handle irksome size calculations
* Add out\_size to (de)convolution2d\_layer classes
* Automated Process Updated Rendered Documentation

0.11.0
------

* Update version to 0.11.0
* Add SimpleDots dataset
* Automated Process Updated Rendered Documentation

0.10.3
------

* Update version to 0.10.3
* Add docstring for plot\_transforms
* Add plot\_transforms method to image\_mixin
* Automated Process Updated Rendered Documentation

0.10.2
------

* Update version to 0.10.2
* Ensure transformed target is FloatTensor and not DoubleTensor
* Update README to include needed flag when installing with pip
* Automated Process Updated Rendered Documentation

0.10.1
------

* Update version to 0.10.1
* Add version to git-based dependency
* Automated Process Updated Rendered Documentation

0.10.0
------

* Update version to 0.10.0
* Split ImageDataGenerator into Single/MultiClass variants
* Rename classifier\_trainer to single\_class\_image\_classifier\_trainer
* Update ClassifierTrainer to take advantage of \`classes\` being available
* Remove deprecated method 'from\_pytorch'
* Get torchvision from personal fork
* flake8 style fixes to autoencoder models
* bugfix in out\_height and out\_width calculations
* Rename attributes for public access
* Automated Process Updated Rendered Documentation

0.9.4
-----

* Update version to 0.9.4
* Encode targets as 1D tensors of probabilities
* Automated Process Updated Rendered Documentation

0.9.3
-----

* Update version to 0.9.3
* Add CsvImageFolder dataset
* Automated Process Updated Rendered Documentation

0.9.2
-----

* Update version to 0.9.2
* Add documentation for BasicConvolutionalAutoencoder
* Add basic\_convolutional autoencoder and update basic\_autoencoder

0.9.1
-----

* Update version to 0.9.1
* Save both model state and optimizer state before lr range test
* Automated Process Updated Rendered Documentation

0.9.0
-----

* Update version to 0.9.0
* Add support for differential learning rates
* Add .\_targets to blacklist
* Don't store tensors in the dataframe monitor
* Automated Process Updated Rendered Documentation
* Fix typo in documentation
* Automated Process Updated Rendered Documentation

0.8.0
-----

* Update version to 0.8.0
* Update pypi metadata
* Deprecate DataGenerator.from\_pytorch
* Upgrade to pytorch 0.4.0 and torchvision 0.2.1
* Use default from underlying pytorch instead of 1
* Automated Process Updated Rendered Documentation
* Ensure base model documentation is present
* Update README to include link to fastai-course-sconce
* Automated Process Updated Rendered Documentation
* Reduce random test failures
* Start documenting version when new things are added
* Make test condition easier to satisfy
* Train for longer at lower lr (more stable test)
* Use assertLess and assertGreater instaed of assertTrue
* Automated Process Updated Rendered Documentation

0.7.0
-----

* Update version to 0.7.0
* Update tox.ini to allow automated process to update documentation
* Automate updating rendered sphinx documentation
* Add documentation for ImageDataGenerator
* Add ImageDataGenerator subclass
* Add real\_dataset property to DataGenerator
* Make submodule data\_generator.py into a subpackage
* Add Documentation for Monitors
* Update README to include link to github.io
* Fully remove documentation of uncommitted code
* Remove documentation for uncommitted code
* Update documentation structure
* Fix typo in documentation
* fix typo in documentation
* Remove non-existing static\_path
* Fix link to sconce.models module in documentation
* Add Documentation for Models
* Add Documentation for Trainer class
* Fix DataGenerator example
* Document DataGenerator Class
* Add .nojekyll file to /docs for github pages
* Add html format documentation for github pages
* Rename docs to sphinx
* Add start of sphinx documentation

0.6.0
-----

* Update version to 0.6.0
* Add plot\_samples method to ClassifierTrainer
* Add ability to cache results of running a model
* Add LinearRateController
* Add wide resnet image classifier model
* Add preactivation and inplace ReLU options

0.5.2
-----

* Update version to 0.5.2
* Add regression test and reasonable default for stop\_factor
* Close yaml files when done reading them
* bugfix: give monitor\_data to rate\_controllers

0.5.1
-----

* Update version to 0.5.1
* Add test of multilayer perceptron and batch\_multiplier
* Make confusion matrix calculation robust to poor classifiers
* Inline \_do\_training\_step and incorporate test steps
* Fix bug with calculating num\_steps with batch\_multiplier
* Update version to 0.5.0
* Add ability to specify a 'batch\_multiplier' when training
* Clarifying comment
* Monitor api 'step' to 'write' and steps start at 1 now
* Add multilayer perceptron and factor out layers
* pytorch can now be installed via pypi
* Remove setting manual seeds

0.4.0
-----

* Update version to 0.4.0
* Bump up max-complexity a little bit
* Make DataframeMonitor plot prettier and more flexible
* Add triangle and step rate controllers

0.3.2
-----

* Update version to 0.3.2
* Pass kwargs to plot instead of figure
* Basic Classifier test changed, update README too

0.3.1
-----

* Update version to 0.3.1
* Clean up BasicClassifier
* flake 8 fix
* Add losswise monitor

0.3.0
-----

* Update version to 0.3.0
* Add plot\_confusion\_matrix method to ClassifierTrainer
* Fix default download folder name for pytorch datasets
* Fix logic for cycle\_length in multi\_train
* Add gridlines to default dataframe plot

0.2.0
-----

* Update version to 0.2.0
* Added script to release to pypi
* Add \_\_version\_\_ to sconce package
* Remove MNISTTest base test class
* DataGenerator classmethod to load pytorch datasets
* Rewording
* Add author and author\_email (pypi requires it)
* Add 'installation' and 'getting started' sections to README

0.1.0
-----

* bump version
* RingbufferMonitor has 'movement\_index' property
* Add constant rate controller with patience
* Remove torch and torchvision from requirments.txt
* Add 'calculate\_metrics' support
* Allow setting of test\_to\_train\_ratio per training session
* Display training loss during learning rate survey
* Make ExponentialRateController able to stop early
* Make it so that rate\_controllers can end training
* Journals and StatusMonitors are now just Monitors
* Fix wrong dataset class used in tests
* Make autoencoder and classifier trainers into mixins
* Set env variable to choose matplotlib backend in tests
* Add a server setup guide
* dummy commit
* Be more careful about checking for cuda in tests
* Add ClassifierTrainer and test model
* Make autoencoder test run much faster
* Move flake8 to be before tests so we can fail faster
* Add Trainer and basic model to test with
* Better default blacklist for DataframeJournal
* Model.calculate\_loss returns 'loss' not 'total\_loss'
* DataGenerators now generate Variables
* Allow MNISTTests to use subset of MNIST data for speedup
* Add DataframeJournal
* Added RateControllers
* Pull in Progbar from keras
* Extract reset method
* Add vim swap files to gitignore
* Add Project files and DataGenerator
* Initial commit
