Releases: manujosephv/pytorch_tabular
v1.1.1
Release Notes
New Features
-
Support for Multi-Model Tuning: Added support for tuning multiple models using the tuner functionality, enhancing flexibility in hyperparameter optimization.
[Commit: 560dec6] -
Multi-Target Classification: Introduced multi-target classification capabilities, expanding the library's support for more complex use cases.
[Commit: 25691f5] -
dataloader_kwargs
inDataConfig
: Added support for customizingdataloader_kwargs
in theDataConfig
module for improved data-loading flexibility.
[Commit: caa3ea1]
Enhancements
-
Improved Informative
str
andrepr
: Added more informativestr
andrepr
methods to enhance debugging and readability of objects.
[Commit: 495803c] -
Bug Fixes for
Categorical
Dtype: Fixed issues withCategorical
data type handling to ensure smoother model training and predictions.
[Commit: cf1454a] -
Removed Restrictions on Missing and Unknown Values: Enhanced the framework to handle missing and unknown values more robustly.
[Commit: fc6060e] -
Protection Against Misuse of MDN Head: Added safeguards to prevent improper usage of the MDN Head in models.
[Commit: cc3504a]
Bug Fixes
-
Fixed an SSL finetuning bug to ensure secure operations during model fine-tuning.
[Commit: 3d978f9] -
Fixed errors in saving and loading custom loss functions to enhance reproducibility and reliability.
[Commit: 3f0a15c] -
Addressed a bug in cross-validation, ensuring accurate evaluation metrics.
[Commit: 0d088fc] -
Fixed a KeyError issue with
nn.activation
in Tab Transformer and FT Transformer models.
[Commit: 11adefa]
Other Improvements
-
Multiple pre-commit configuration updates and enhancements for code linting and formatting.
[Commits: f354b9c, 75b21c4, a890dda] -
Various CI improvements, including dependency bump for
gh-action-pypi-publish
and caching updates.
[Commits: cb78a6e, e49a999, da20ed3] -
Fixed typos and minor issues in documentation and code for improved clarity and maintainability.
[Commits: 7285787, 6586705]
For more details, you can refer to the respective commits on the library's GitHub repository.
New Contributors
- @furyhawk made their first contribution in #382
- @HernandoR made their first contribution in #410
- @charitarthchugh made their first contribution in #420
- @abhisharsinha made their first contribution in #455
- @YonyBresler made their first contribution in #441
- @snehilchatterjee made their first contribution in #492
Full Changelog: v1.1.0...v1.1.1
v1.1.0
New Features and Enhancements
- Added DANet Model: Added a new model, DANet, for tabular data.
- Explainability: Integrated Captum for explainability
- Hyperparameter Tuner: Added Grid and Random Search functionality to search through hyperparameters and return best model.
- Model Sweep: Added an easy "Model Sweep" method with which we can sweep a list of models with given data and quickly assess performance.
- Documentation Enhancements: Improved documentation to make it more user-friendly and informative
- Dependency Updates: Updated various dependencies for improved compatibility and security
- Graceful Out-of-Memory Handling: Added graceful out-of-memory handling for tabular models
- GhostBatchNorm: Added GhostBatchNorm to the library
Deprecations
- Deprecations: Handled deprecations and updated the library accordingly
- Entmax Dependency Removed: Removed dependency on entmax
Infrastructure and CI/CD
- Continuous Integration: Improved CI with new actions and labels
- Dependency Management: Updated dependencies and restructured requirements
API Changes
- [BREAKING CHANGE] SSL API Change: Addressed SSL API change, along with documentation and tutorial updates.
- Model Changes: Added is_fitted and other markers to the tabular model.
- Custom Optimizer: Allow custom optimizer in the model config.
Contributors
- Thanks to all the contributors who helped shape this release! (List of Contributors)
Upgrading
- Ensure to check the updated documentation for any breaking changes or new features.
- If you are using SSL, please check the updated API and documentation.
v1.0.2
New Features:
- Added Feature Importance: The library now includes a new method in TabularModel and BaseModel for enabling feature importance. Feature Importance has been enabled for FTTransformer and GATE models. [Commit: dc2a49e]
Enhancements:
- Enabled two more parameters in the GATE model. [Commit: 3680413]
- Included metric_prob_input parameter in the library configuration. This update allows for better control over metrics in the models. [Commit: 0612db5]
- Slight improvements to the GATE model, including changes to defaults for better performance. [Commit: c30a6c3]
- Minor bug fixes and improvements, including accelerator options in the configuration and progress bar enhancements. [Commit: f932230, bdd9adb, f932230]
Dependency Updates:
- Updated dependencies, including docformatter, pyupgrade, and ruff-pre-commit. [Commits: 4aae9a8, b3df4ce, bdd9adb, 55e800c, c6c4679, c01154b, 107cd2f]
Documentation Updates:
- Updated the library's README.md file. [Commits: db8f3b2, cab6bf1, 669faec, 1e6c400, 3097799, 7fabf6b]
Other Improvements:
For more details, you can refer to the respective commits on the library's GitHub repository.
v1.0.1
- Added a new task - Self Supervised Learning (SSL) and a separate training API for it.
- Added new SOTA model - Gated Additive Tree Ensembles (GATE).
- Added one SSL model - Denoising AutoEncoder.
- Added lots of new tutorials and updated entire documentation.
- Improved code documentation and type hints.
- Separated a Model into separate Embedding, Backbone, and Head.
- Refactored all models to separate Backbone as native PyTorch Model(nn.Module).
- Refactored commonly used modules (layers, activations etc. to a common module).
- Changed MixedDensityNetworks completely (breaking change). Now MDN is a head you can use with any model.
- Enabled a low level api for training model.
- Enabled saving and loading of datamodule.
- Added trainer_kwargs to pass any trainer argument PyTorch Lightning supports.
- Added Early Stopping and Model Checkpoint kwargs to use all the arguments in PyTorch Lightining.
- Enabled prediction using GPUs in predict method.
- Added
reset_model
to reset model weights to random. - Added many save and load functions including ONNX(experimental).
- Added random seed as a parameter.
- Switched over completely to Rich progressbars from tqdm.
- Fixed class-balancing / mu propagation and set default to 1.0.
- Added PyTorch Profiler for debugging performance issues.
- Fixed bugs with FTTransformer and TabTransformer.
- Updated MixedDensityNetworks fixing a bug with lambda_pi.
- Many CI/CD improvements including complete integration with GitHub Actions.
- Upgraded all dependencies, including PyTorch Lightning, pandas, to latest versions and added dependabot to manage it going forward.
- Added pre-commit to ensure code integrity and standardization.
v0.7.0-alpha
- Added a few more SOTA models - TabTransformer, FTTransformer
- Made improvements in the model save and load capability
- Made installation less restrictive by unfreezing some dependencies.
v0.5.0-alpha
First Alpha Release