Autogluon

Latest version: v1.1.0

Safety actively analyzes 629765 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 4 of 6

0.4

- 1607 `pip install autogluon.text` will error on import if installed standalone due to missing `autogluon.features` as a dependency. To fix: `pip install autogluon.features`. This will be resolved in v0.4.1 release.

Changes

General

- [AutoGluon now supports Windows OS!](https://auto.gluon.ai/0.4.0/index.html) Both CPU and GPU are supported on Windows.
- AutoGluon now supports Python 3.9. Python 3.6 is no longer supported.
- AutoGluon has migrated from MXNet to PyTorch for all deep learning models resulting in major speedups.
- [AutoGluon v0.4 Cheat Sheet](https://auto.gluon.ai/stable/autogluon-cheat-sheet.pdf): Get started faster than ever before with this handy reference page!
- [New tutorials](https://auto.gluon.ai/0.4.0/tutorials/cloud_fit_deploy/index.html) showcasing cloud training and deployment with AWS SageMaker and Lambda.

Text

AutoGluon-Text is refactored with [PyTorch Lightning](https://www.pytorchlightning.ai/). It now supports backbones in [huggingface/transformers](https://huggingface.co/docs/transformers/index). The new version has better performance, faster training time, and faster inference speed. In addition, AutoGluon-Text now supports solving multilingual problems and a new `AutoMMPredictor` has been implemented for automatically building multimodal DL models.

- **Better Performance**
- Compared with TextPredictor in AutoGluon 0.3, TextPredictor in AutoGluon 0.4 has **72.22%** win-rate in the [multimodal text-tabular benchmark published in NeurIPS 2021](https://arxiv.org/abs/2111.02705). If we use `presets="high_quality"`, the win-rate increased to **77.8%** thanks to the [DeBERTa-v3 backbone](https://arxiv.org/abs/2111.09543).
- In addition, we resubmitted our results to [MachineHack: Product Sentiment Analysis](https://machinehack.com/hackathon/product_sentiment_classification_weekend_hackathon_19/overview
), ["MachineHack: Predict the Price of Books"](https://machinehack.com/hackathon/predict_the_price_of_books/overview
), and ["Kaggle: Mercari Price Suggestion"](https://www.kaggle.com/c/mercari-price-suggestion-challenge). With three lines of code, AutoGluon 0.4 is able to achieve top places in these competitions (1st, 2nd, 2nd correspondingly). The results obtained by AutoGluon 0.4 also consistently outperform the results obtained by AutoGluon 0.3.
- **Faster Speed**
- The new version has **~2.88x** speedup in training and **~1.40x** speedup in inference. With g4dn.12x instance, the model can achieve an additional 2.26x speedup with 4 GPUs.
- **Multilingual Support**
- AutoGluon-Text now supports solving multilingual problems via cross-lingual transfer ([Tutorial](https://auto.gluon.ai/0.4.0/tutorials/text_prediction/multimodal_text.html)). This is triggered by setting `presets="multilingual"`. You can now train a model on the English dataset and directly apply the model on datasets in other languages such as German, Japanese, Italian, etc.
- **AutoMMPredictor for Multimodal Problems**
- Support an experimental AutoMMPredictor that supports fusion image backbones in [timm](https://github.com/rwightman/pytorch-image-models/tree/master/timm), text backbone in [huggingface/transformers](https://huggingface.co/docs/transformers/index), and multimodal backbones like [CLIP](https://openai.com/blog/clip/) ([Tutorial](https://auto.gluon.ai/0.4.0/tutorials/text_prediction/automm.html)). It may perform better than ensembling ImagePredictor + TextPredictor.
- **Other Features**
- Support continuous training from an existing checkpoint. You may just call `.fit()` again after a previous trained model has been loaded.

Thanks to zhiqiangdon and sxjscience for contributing the AutoGluon-Text refactors! (1537, 1547, 1557, 1565, 1571, 1574, 1578, 1579, 1581, 1585, 1586)

Tabular

AutoGluon-Tabular has been majorly enhanced by numerous optimizations in 0.4. In summation, these improvements have led to a:

- **~2x** training speedup in Good, High, and Best quality presets.
- **~1.3x** inference speedup.
- **63%** win-rate vs AutoGluon 0.3.1 (Results from [AutoMLBenchmark](https://github.com/openml/automlbenchmark))
- **93%** win-rate vs AutoGluon 0.3.1 on datasets with >=100,000 rows of data (!!!)

Specific updates:

- Added `infer_limit` and `infer_limit_batch_size` as new fit-time constraints ([Tutorial](https://auto.gluon.ai/0.4.0/tutorials/tabular_prediction/tabular-indepth.html#inference-speed-as-a-fit-constraint)). This allows users to specify
the desired end-to-end inference latency of the final model and AutoGluon will automatically train models
to satisfy the constraint. This is extremely useful for online-inference scenarios where you need to satisfy an
end-to-end latency constraint (for example 50ms). Innixma (1541, 1584)
- Implemented automated semi-supervised and transductive learning in TabularPredictor.
[Try it out](https://auto.gluon.ai/0.4.0/api/autogluon.predictor.html#autogluon.tabular.TabularPredictor.fit_pseudolabel) via `TabularPredictor.fit_pseudolabel(...)`! DolanTheMFWizard (1323, 1382)
- Implemented automated feature pruning (i.e. feature selection) in TabularPredictor.
Try it out via `TabularPredictor.fit(..., feature_prune_kwargs={})`! truebluejason (1274, 1305)
- Implemented automated model calibration to improve AutoGluon's predicted probabilities for classification problems.
This is enabled by default, and can be toggled via the `calibrate` fit argument. DolanTheMFWizard (1336, 1374, 1502)
- Implemented parallel bag training via Ray. This results in a ~2x training speedup when bagging is enabled
compared to v0.3.1 with the same hardware due to more efficient usage of resources
for models that cannot effectively use all cores. yinweisu (1329, 1415, 1417, 1423)
- Added adaptive early stopping logic which greatly improves the quality of models within a time budget. Innixma (1380)
- Added automated model calibration in quantile regression. taesup-aws (1388)
- Enhanced datetime feature handling. willsmithorg (1446)
- Added support for custom confidence levels in feature importance. jwmueller (1328)
- Improved neural network HPO search spaces. jwmueller (1346)
- Optimized one-hot encoding preprocessing. Innixma (1376)
- Refactored `refit_full` logic to majorly simplify user model contributions and improve multimodal support with advanced presets. Innixma (1567)
- Added experimental TabularPredictor config helper. gradientsky (1491)
- New Tutorials
- [GPU training tutorial for tabular models](https://auto.gluon.ai/0.4.0/tutorials/tabular_prediction/tabular-gpu.html). gradientsky (#1527)
- [Feature preprocessing tutorial](https://auto.gluon.ai/0.4.0/tutorials/tabular_prediction/tabular-feature-engineering.html). willsmithorg (#1478)

Tabular Models

NEW: TabularNeuralNetTorchModel (alias: 'NN_TORCH')

As part of the migration from MXNet to Torch, we have created a Torch based counterpart
to the prior MXNet tabular neural network model. This model has several major advantages, such as:

- **1.9x** faster training speed
- **4.7x** faster inference speed
- **51%** win-rate vs MXNet Tabular NN

This model has replaced the MXNet tabular neural network model in the default hyperparameters configuration,
and is enabled by default.

Thanks to jwmueller and Innixma for contributing TabularNeuralNetTorchModel to AutoGluon! (1489)

NEW: VowpalWabbitModel (alias: 'VW')

VowpalWabbit has been added as a new model in AutoGluon. VowpalWabbit is not installed by default, and must be installed separately.
VowpalWabbit is used in the `hyperparameters='multimodal'` preset, and the model is a great option to use for datasets containing text features.

To install VowpalWabbit, specify it via `pip install autogluon.tabular[all, vowpalwabbit]` or `pip install "vowpalwabbit>=8.10,<8.11"`

Thanks to killerSwitch for contributing VowpalWabbitModel to AutoGluon! (1422)

XGBoostModel (alias: 'XGB')

- Optimized model serialization method, which results in 5.5x faster inference speed and halved disk usage. Innixma (1509)
- Adaptive early stopping logic leading to 54.7% win-rate vs prior implementation. Innixma (1380)
- Optimized training speed with expensive metrics such as F1 by ~10x. Innixma (1344)
- Optimized num_cpus default to equal physical cores rather than virtual cores. Innixma (1467)

CatBoostModel (alias: 'CAT')

- CatBoost now incorporates callbacks which make it more stable and resilient to memory errors,
along with more advanced adaptive early stopping logic that leads to 63.2% win-rate vs prior implementation. Innixma (1352, 1380)

LightGBMModel (alias: 'GBM')

- Optimized training speed with expensive metrics such as F1 by ~10x. Innixma (1344)
- Adaptive early stopping logic leading to 51.1% win-rate vs prior implementation. Innixma (1380)
- Optimized num_cpus default to equal physical cores rather than virtual cores. Innixma (1467)

FastAIModel (alias: 'FASTAI')

- Added adaptive batch size selection and epoch selection. gradientsky (1409)
- Enabled HPO support in FastAI (previously HPO was not supported for FastAI). Innixma (1408)
- Made FastAI training deterministic (it is now consistently seeded). Innixma (1419)
- Fixed GPU specification in FastAI to respect the num_gpus parameter. Innixma (1421)
- Forced correct number of threads during fit and inference to avoid issues with global thread updates. yinweisu (1535)

LinearModel (alias: 'LR')

Linear models have been accelerated by **20x** in training and **20x** in inference thanks to a variety of optimizations.
To get the accelerated training speeds, please install [scikit-learn-intelex](https://github.com/intel/scikit-learn-intelex) via `pip install "scikit-learn-intelex>=2021.5,<2021.6"`

Note that currently LinearModel is not enabled by default in AutoGluon,
and must be specified in `hyperparameters` via the key `'LR'`.
Further testing is planned to incorporate LinearModel as a default model in future releases.

Thanks to the `scikit-learn-intelex` team and Innixma for the LinearModel optimizations! (1378)

Vision

- Refactored backend logic to be more robust. yinweisu (1427)
- Added support for inference via CPU. Previously, inferring without GPU would error. yinweisu (1533)
- Refactored HPO logic. Innixma (1511)

Miscellaneous

- AutoGluon no longer depends on ConfigSpace, cython, dill, paramiko, autograd, openml, d8, and graphviz.
This greatly simplifies installation of AutoGluon, particularly on Windows.
- Entirely refactored HPO logic to break dependencies on ConfigSpace and improve stability and ease of development.
HPO has been simplified to use random search in this release while we work on
re-introducing the more advanced HPO methods such as bayesopt in a future release.
Additionally, removed 40,000 lines of out-dated code to streamline future development.
Innixma (1397, 1411, 1414, 1431, 1443, 1511)
- Added `autogluon.common` to simplify dependency management for future submodules. Innixma (1386)
- Removed `autogluon.mxnet` and `autogluon.extra` submodules as part of code cleanup. Innixma (1397, 1411, 1414)
- Refactored logging to avoid interfering with other packages. yinweisu (1403)
- Fixed logging output on Kaggle, previously no logs would be displayed while fitting AutoGluon in a Kaggle kernel. Innixma (1468)
- Added platform tests for Linux, MacOS, and Windows. yinweisu (1464, 1506, 1513)
- Added [ROADMAP.md](https://github.com/awslabs/autogluon/blob/master/ROADMAP.md) to highlight past, present, and future feature prioritization and progress to the community. Innixma (#1420)
- Various documentation and CI improvements
- jwmueller (1379, 1408, 1429)
- gradientsky (1383, 1387, 1471, 1500)
- yinweisu (1441, 1482, 1566, 1580)
- willsmithorg (1476, 1483)
- Xilorole (1526)
- Innixma (1452, 1453, 1528, 1577, 1584, 1588, 1593)
- Various backend enhancements / refactoring / cleanup
- DolanTheMFWizard (1319)
- gradientsky (1320, 1366, 1385, 1448, 1488, 1490, 1570, 1576)
- mseeger (1349)
- yinweisu (1497, 1503, 1512, 1563, 1573)
- willsmithorg (1525, 1543)
- Innixma (1311, 1313, 1327, 1331, 1338, 1345, 1369, 1377, 1380, 1408, 1410, 1412, 1419, 1425, 1428, 1462, 1465, 1562, 1569, 1591, 1593)
- Various bug fixes
- jwmueller (1314, 1356)
- yinweisu (1472, 1499, 1504, 1508, 1516)
- gradientsky (1514)
- Innixma (1304, 1325, 1326, 1337, 1365, 1395, 1405, 1587, 1599)

0.4.0

Not secure
We're happy to announce the AutoGluon 0.4 release. 0.4 contains major enhancements to Tabular and Text modules, along with many quality of life improvements and fixes.

This release is **non-breaking** when upgrading from v0.3.1. As always, only load previously trained models using the same version of AutoGluon that they were originally trained on. Loading models trained in different versions of AutoGluon is not supported.

This release contains [**151** commits from **14** contributors](https://github.com/awslabs/autogluon/graphs/contributors?from=2021-09-01&to=2022-03-09&type=c)!

See the full commit change-log here: https://github.com/awslabs/autogluon/compare/v0.3.1...v0.4.0

Special thanks to zhiqiangdon, willsmithorg, DolanTheMFWizard, truebluejason, killerSwitch, and Xilorole who were first time contributors to AutoGluon this release!

Full Contributor List (ordered by of commits):
- Innixma, yinweisu, gradientsky, zhiqiangdon, jwmueller, willsmithorg, sxjscience, DolanTheMFWizard, truebluejason, taesup-aws, Xilorole, mseeger, killerSwitch, rschmucker

This version supports Python versions 3.7 to 3.9.

0.3.1

Not secure
v0.3.1 is a hotfix release which fixes several major bugs as well as including several model quality improvements.

This release is **non-breaking** when upgrading from v0.3.0. As always, only load previously trained models using the same version of AutoGluon that they were originally trained on. Loading models trained in different versions of AutoGluon is not supported.

This release contains **9** commits from **4** contributors.

See the full commit change-log here: https://github.com/awslabs/autogluon/compare/v0.3.0...v0.3.1

Thanks to the 4 contributors that contributed to the v0.3.1 release!

Special thanks to yinweisu who is a first time contributor to AutoGluon and fixed a major bug in ImagePredictor HPO!

Full Contributor List (ordered by of commits):

Innixma, gradientsky, yinweisu, sackoh

Changes

Tabular

- AutoGluon v0.3.1 has a **58% win-rate** vs AutoGluon v0.3.0 for `best_quality` preset.
- AutoGluon v0.3.1 has a **75% win-rate** vs AutoGluon v0.3.0 for high and good quality presets.
- Fixed major bug introduced in v0.3.0 with models trained in refit_full causing weighted ensembles to incorrectly weight models. This severely impacted accuracy and caused worse results for high and good quality presets. Innixma (1293)
- Removed KNN from stacker models, resulting in stack quality improvement. Innixma (1294)
- Added automatic detection and optimized usage of boolean features. Innixma (1286)
- Improved handling of time limit in FastAI NN model to avoid edge cases where the model would use the entire time budget but fail to train. Innixma (1284)
- Updated XGBoost to use `-1` as `n_jobs` value instead of using `os.cpu_count()`. sackoh (1289)

Vision

- Fixed major bug that caused HPO with time limits specified to return very poor models. yinweisu (1282)

General

- Minor doc updates. gradientsky (1288, 1290)

0.3.0

Not secure
This release is **non-breaking** when upgrading from v0.2.0. As always, only load previously trained models using the same version of AutoGluon that they were originally trained on. Loading models trained in different versions of AutoGluon is not supported.

This release contains **70** commits from **10** contributors.

See the full commit change-log here: https://github.com/awslabs/autogluon/compare/v0.2.0...v0.3.0

Thanks to the [**10 contributors**](https://github.com/awslabs/autogluon/graphs/contributors?from=2021-04-27&to=2021-08-14&type=c) that contributed to the v0.3.0 release!

Special thanks to the 3 first-time contributors! rxjx, sallypannn, sarahyurick

Special thanks to talhaanwarch who opened 21 GitHub issues (!) and participated in numerous discussions during v0.3.0 development. His feedback was incredibly valuable when diagnosing issues and improving the user experience throughout AutoGluon!

Full Contributor List (ordered by of commits):

Innixma, zhreshold, jwmueller, gradientsky, sxjscience, ValerioPerrone, taesup-aws, sallypannn, rxjx, sarahyurick

Major Changes

Multimodal

- Added multimodal tabular, text, image functionality! See the [tutorial](https://auto.gluon.ai/stable/tutorials/tabular_prediction/tabular-multimodal.html) to get started. innixma, zhreshold (#1041, 1211, 1277)

Tutorials

- Added a new [custom model tutorial](https://auto.gluon.ai/stable/tutorials/tabular_prediction/tabular-custom-model.html) to showcase how to easily add **any** model to AutoGluon! Innixma (#1238)
- Added a new [custom metric tutorial](https://auto.gluon.ai/stable/tutorials/tabular_prediction/tabular-custom-metric.html) to showcase how to add custom metrics to AutoGluon! Innixma (#1271)
- Added [FairHPO tutorial](https://auto.gluon.ai/stable/tutorials/course/fairbo.html). ValerioPerrone (#1090, 1236)

Tabular

- Overall, **AutoGluon-Tabular v0.3 wins 57.6% of the time against AutoGluon-Tabular v0.2** in AutoMLBenchmark!
- **Improved online inference speed by 1.5x-10x** via various low level pandas and numpy optimizations. Innixma (1136)
- Accelerated feature preprocessing speed by **100x+** for datetime and text features. Innixma (1203)
- Fixed FastAI model not properly scaling regression label values, improving model quality significantly. Innixma (1162)
- Fixed r2 metric having the wrong sign in FastAI model, dramatically improving performance when r2 metric is specified. Innixma (1159)
- Updated XGBoost to 1.4, defaulted hyperparameter `tree_method='hist'` for improved performance. Innixma (1239)
- Added `groups` parameter. Now users can specify the exact split indices in a `groups` column when performing model bagging. This solution leverages sklearn's [LeaveOneGroupOut](https://scikit-learn.org/stable/modules/generated/sklearn.model_selection.LeaveOneGroupOut.html) cross-validator. Innixma (#1224)
- Added option to use holdout data for final ensembling weights in multi-layer stacking via a new `use_bag_holdout` argument. Innixma (1105)
- Added neural network based quantile regression models. taesup-aws (1047)
- Bug fix for random forest models' out-of-fold prediction computation in quantile regression. jwmueller, Innixma (1100, 1102)
- Added `predictor.features()` to get the original feature names used during training. Innixma (1257)
- Refactored AbstractModel code to be easier to use. Innixma (1151, 1216, 1245, 1266)
- Refactored BaggedEnsembleModel code in preparation for distributed bagging. gradientsky (1078)
- Updated RAPIDS version to 21.06. sarahyurick (1241)
- Force dtype conversion in feature preprocessing to align with FeatureMetadata. Now users can specify the dtypes of features via FeatureMetadata rather than updating the DataFrame. Innixma (1212)
- Fixed various edge cases with out-of-bounds date time values. Now out-of-bounds date time values are treated as missing. Innixma (1182)

Vision

- Added Torch / TIMM backend support! Now AutoGluon can train any TIMM model natively, and MXNet is no longer required to train vision models. zhreshold (1249)
- Added regression `problem_type` support to ImagePredictor. sallypannn (1165)
- Added GPU memory check to avoid going OOM during training. Innixma (1199)
- Fixed error when vision models are hyperparameter tuned with forked multiprocessing. gradientsky (1107)
- Fixed crash when an image is missing (both train and inference). Use [TabularPredictor's Image API](https://auto.gluon.ai/stable/tutorials/tabular_prediction/tabular-multimodal.html) to get this functionality. Innixma (#1210)
- Fixed error when the same image is in multiple rows when calling `predict_proba`. Innixma (1206)
- Fixed invalid preset configurations. Innixma (1199)
- Fixed major defect causing tuning data to not be properly created if tuning data was not provided by user. Innixma (1168)
- Upgraded Pillow version to '>=8.3.0,<8.4.0'. gradientsky (1262)

Text

- Removed pyarrow as a required dependency. Innixma (1200)
- Fixed crash when `eval_metric='average_precision'`. rxjx (1092)

General

- Improved support for GPU on Windows. Innixma (1255)
- Added quadratic kappa evaluation metric. sxjscience (1104)
- Improved access method for `__version__`. Innixma (1122)
- Upgraded pandas to 1.3. Innixma (1258)
- Upgraded ConfigSpace to 0.4.19. Innixma (1265)
- Upgraded numpy, graphviz, and dill versions. Innixma (1275)
- Various minor doc improvements. jwmueller, Innixma (1089, 1091, 1093, 1095, 1219, 1253)
- Various minor updates and fixes. Innixma, zhreshold, gradientsky (1098, 1099, 1101, 1113, 1117, 1118, 1166, 1177, 1188, 1197, 1227, 1229, 1235, 1245, 1251)

0.2.0

Not secure
v0.2.0 introduces numerous optimizations that reduce Tabular average inference time by **4x** and average disk usage by **10x** compared to v0.1.0, as well as a refactored ImagePredictor API to better align with the other tasks and a **20x** inference speedup in Vision tasks. This release contains **42** commits from **9** contributors.

This release is non-breaking when upgrading from v0.1.0, with four exceptions:
1. `ImagePredictor.predict` and `ImagePredictor.predict_proba` have [different output formats](https://auto.gluon.ai/0.2.0/tutorials/image_prediction/beginner.html#predict-on-a-new-image).
2. [`TabularPredictor.evaluate`](https://auto.gluon.ai/0.2.0/api/autogluon.task.html#autogluon.tabular.TabularPredictor.evaluate) and [`TabularPredictor.evaluate_predictions`](https://auto.gluon.ai/0.2.0/api/autogluon.task.html#autogluon.tabular.TabularPredictor.evaluate_predictions) have [different output formats](https://auto.gluon.ai/0.2.0/tutorials/tabular_prediction/tabular-quickstart.html).
3. Custom dictionary inputs to [`TabularPredictor.fit`](https://auto.gluon.ai/0.2.0/api/autogluon.task.html#autogluon.tabular.TabularPredictor.fit)'s `hyperparameter_tune_kwargs` argument now have a [different format](https://github.com/awslabs/autogluon/pull/1002).
4. Models trained in v0.1.0 should only be loaded with v0.1.0. Loading models trained in different versions of AutoGluon is not supported.

See the full commit change-log here: https://github.com/awslabs/autogluon/compare/v0.1.0...v0.2.0

Thanks to the [**9 contributors**](https://github.com/awslabs/autogluon/graphs/contributors?from=2021-02-27&to=2021-04-27&type=c) that contributed to the v0.2.0 release!

Special thanks to the 3 first-time contributors! taesup-aws, ValerioPerrone, lukemorrill

Full Contributor List (ordered by of commits):

Innixma, zhreshold, gradientsky, jwmueller, mseeger, sxjscience, taesup-aws, ValerioPerrone, lukemorrill

Major Changes

Tabular

- Reduced overall inference time on `best_quality` preset by **4x** (and **2x** on others). innixma, gradientsky
- Reduced overall disk usage on `best_quality` preset by **10x**. innixma
- Reduced training time and inference time of K-Nearest-Neighbor models by **250x**, and reduced disk usage by **10x** via:
- Efficient out-of-fold implementation (10x training & inference speedup, 10x reduced disk usage) on `best_quality` preset. innixma (1022)
- [Experimental] Integration of the [scikit-learn-intelex](https://intel.github.io/scikit-learn-intelex/) package (25x training & inference speedup). innixma (#1049)
- This is currently not installed by default. Try it via `pip install autogluon.tabular[all,skex]` or `pip install "scikit-learn-intelex<2021.3"`. Once installed, AutoGluon will automatically use it.
- Reduced training time, inference time, and disk usage of RandomForest and ExtraTrees models by **10x** via efficient out-of-fold implementation. innixma (1066, 1082)
- Reduced training time by 30% and inference time by 75% on the FastAI neural network model. gradientsky (977)
- Added `quantile` as a new `problem_type` to support quantile regression problems. taesup-aws, jwmueller (1005, 1040)
- Try it out with the [quantile regression example script](https://github.com/awslabs/autogluon/blob/master/examples/tabular/example_quantile_regression.py)!
- [Experimental] Added GPU accelerated RandomForest, K-Nearest-Neighbors and Linear models via integration with [NVIDIA RAPIDS](https://rapids.ai/). innixma (#995, 997, 1000)
- This is not enabled by default. Try it out by first [installing RAPIDS](https://rapids.ai/start.html) and then installing AutoGluon.
- Currently, the models need to be specially passed to the `.fit` hyperparameters argument. Refer to the below kaggle kernel for an example or check out [RAPIDS official AutoGluon example](https://github.com/rapidsai/cloud-ml-examples/tree/main/aws/autogluon).
- See how to use AutoGluon + RAPIDS to get top 1% on the Otto kaggle competition with an [interactive kaggle kernel](https://www.kaggle.com/innixma/autogluon-rapids-top-1)!
- [Experimental] Added option to specify early stopping rounds for models LightGBM, CatBoost, and XGBoost via a new model parameter `ag.early_stop`. innixma (1037)
- Try it out via `hyperparameters={'XGB': {'ag.early_stop': 500}}`.
- The API for this may change in future releases as we try to optimize usage of early stopping in AutoGluon.
- [Experimental] Added adaptive early stopping to LightGBM. This will attempt to choose when to stop training the model more smartly than using an early stopping rounds value. innixma (1042)
- Re-ordered model training priority to perform better when `time_limit` is small. For `time_limit=3600` on datasets with over 100,000 rows, v0.2.0 has a **65%** win-rate over v0.1.0. innixma (1059, 1084)
- Adjusted time allocation to stack layers when performing multi-layer stacking to allow for longer training on earlier layers. innixma (1075)
- Updated CatBoost to v0.25. innixma (1064)
- Added `extra_metrics` argument to [`.leaderboard`](https://auto.gluon.ai/0.2.0/api/autogluon.task.html#autogluon.tabular.TabularPredictor.leaderboard). innixma (1058)
- Added feature group importance support to [`.feature_importance`](https://auto.gluon.ai/0.2.0/api/autogluon.task.html#autogluon.tabular.TabularPredictor.feature_importance). innixma (989)
- Now, users can get the combined importance of a group of features.
- `predictor.feature_importance(test_data, features=['A', 'B', 'C', ('AB', ['A', 'B'])])`
- **[BREAKING]** Refactored [`.evalute`](https://auto.gluon.ai/0.2.0/api/autogluon.task.html#autogluon.tabular.TabularPredictor.evaluate) and [`.evaluate_predictions`](https://auto.gluon.ai/0.2.0/api/autogluon.task.html#autogluon.tabular.TabularPredictor.evaluate_predictions) to be easier to use and share the same code logic. innixma (1080)
- The output type has changed and the sign of the metric score has been flipped in some circumstances.

Vision

- Reduced inference time by **20x** via various optimizations in inference batching. zhreshold
- Fixed a problem when loading saved models on cpu-only machines when models are trained on GPU. zhreshold
- Improved model fitting performance by up to 10% for ObjectDetector when `presets` is empty. zhreshold
- **[BREAKING]** Refactored `predict` and `predict_proba` methods in `ImagePredictor` to have the same output formats as `TabularPredictor` and `TextPredictor`. zhreshold (1044)
- This change is **BREAKING**. Previous users of v0.1.0 should ensure they update to use the new formats if they made use of the old `predict` and `predict_proba` when switching to v0.2.0.
- Added improved support for CSV and pandas DataFrame input to `ImagePredictor`. zhreshold (1010)
- See our new [data preparation tutorial](https://auto.gluon.ai/0.2.0/tutorials/image_prediction/dataset.html) to give it a try!
- Added early stopping strategies that significantly improve training efficiency. zhreshold (1039)

General

- [Experimental] Added new hyperparameter tuning method: constrained bayesian optimization. ValerioPerrone (1034)
- General HPO code improvement / cleanup. mseeger, gradientsky (971, 1002, 1050)
- Fixed ENAS issue when passing in custom datasets. lukemorrill (1015)
- Fixed incorrect dependency link between `autogluon.mxnet` and `autogluon.extra` causing crash on import. innixma (1032)
- Various minor updates and fixes. innixma, jwmueller, zhreshold, sxjscience (990, 996, 998, 1007, 1035, 1052, 1055, 1057, 1072, 1081, 1088)

0.1.0

Not secure
v0.1.0 is our largest release yet, containing **173** commits from **20** contributors over the course of 5 months.

**This release is API breaking** from past releases, as AutoGluon is now a namespace package. Please refer to our [documentation](https://auto.gluon.ai/stable/index.html) for using v0.1.0. New GitHub issues based on versions earlier then v0.1.0 will not be addressed, and we recommend all users to upgrade to v0.1.0 as soon as possible.

See the full commit change-log here: https://github.com/awslabs/autogluon/compare/v0.0.15...v0.1.0

Try it out yourself in 5 minutes with our [Colab Tutorial](https://colab.research.google.com/drive/1oT3zNsj9et8s1bJNx7VeHOn_mfpBoe4q?usp=sharing).

Special thanks to the [**20 contributors**](https://github.com/awslabs/autogluon/graphs/contributors?from=2020-10-21&to=2021-03-01&type=c) that contributed to the v0.1.0 release! Contributor List:

innixma, gradientsky, sxjscience, jwmueller, zhreshold, mseeger, daikikatsuragawa, Chudbrochil, adrienatallah, jonashaag, songqiang, larroy, sackoh, muhyun, rschmucker, aaronkl, kaixinbaba, sflender, jojo19893, mak-454

Major Changes

General

- MacOS is now fully supported.
- Windows is now experimentally supported. Installation instructions for Windows are still in progress.
- Python 3.8 is now supported.
- Overhauled API. APIs between TabularPredictor, TextPredictor, and ImagePredictor are now much more consistent. innixma, sxjscience, zhreshold, jwmueller, gradientsky
- Updated AutoGluon to a namespace package, now individual modules can be separately installed to improve flexibility. As an example, to only install HPO related functionality, you can get a minimal install via `pip install autogluon.core`. For a full list of available submodules, see this [link](https://pypi.org/user/innixma/). gradientsky (#694)
- Significantly improved robustness of HPO scheduling to avoid errors for user. mseeger, gradientsky, rschmucker, innixma (713, 735, 750, 754, 824, 920, 924)
- mxnet is no longer a required dependency in AutoGluon. mseeger (726)
- Various dependency version upgrades.

Tabular

- Major API refactor. innixma (768, 855, 869)
- Multimodal Tabular + Text support ([Tutorial](https://auto.gluon.ai/stable/tutorials/tabular_prediction/tabular-multimodal-text-others.html)). Now Tabular can train a multi-modal Tabular + Text transformer model alongside its standard models, and achieve state-of-the-art results on multi-modal tabular + text datasets with 3 lines of code. sxjscience, Innixma (#740, 752, 756, 770, 776, 794, 802, 848, 852, 867, 869, 871, 877)
- GPU support for LightGBM, CatBoost, XGBoost, MXNet neural network, and FastAI neural network models. Specify `ag_args_fit={'num_gpus': 1}` in `TabularPredictor.fit()` to enable. innixma (896)
- `sample_weight` support. Tabular can now handle user-defined sample weights for imbalanced datasets. jwmueller (942, 962)
- Multi-label prediction support ([Tutorial](https://auto.gluon.ai/stable/tutorials/tabular_prediction/tabular-multilabel.html)). Tabular can now predict across multiple label columns. jwmueller (#953)
- Added student model ensembling in model distillation. innixma (937)
- Generally improved accuracy and robustness due to a variety of internal improvements and the addition of new models. (v0.1.0 gets a better score on over 70% of datasets in benchmarking compared to v0.0.15!)
- New model: XGBoost. sackoh (691)
- New model: FastAI Tabular Neural Network. gradientsky (742, 748, 826, 839, 842)
- New model: TextPredictorModel (Multi-modal transformer) (Requires GPU). sxjscience (770)
- New experimental model: TabTransformer (Tabular transformer model ([paper](https://arxiv.org/pdf/2012.06678.pdf))). Chudbrochil (#723)
- New experimental model: FastText. songqiang (580)
- View all available models in our documentation: https://auto.gluon.ai/stable/api/autogluon.tabular.models.html
- New advanced functionality: Extract out-of-fold predictions from a fit TabularPredictor ([docs](https://auto.gluon.ai/stable/api/autogluon.task.html#autogluon.tabular.TabularPredictor.get_oof_pred_proba)). innixma (779)
- Greatly optimized and expanded upon feature importance calculation functionality. Now `predictor.feature_importance()` returns confidence bounds on importance values. innixma (803)
- New experimental functionality: `predictor.fit_extra()` enables the fitting of additional models on top of an already fit `TabularPredictor` object ([docs](https://auto.gluon.ai/stable/api/autogluon.task.html#autogluon.tabular.TabularPredictor.fit_extra)). innixma (768)
- Per-model HPO support. Now you can specify `hyperparameter_tune_kwargs` in a model's hyperparameters via `'ag_args': {'hyperparameter_tune_kwargs': hpo_args}`. innixma (883)
- Sped up preprocessing runtimes by 100x+ on large (10M+ row) datasets by subsampling data during feature duplicate resolution. Innixma (950)
- Added [SHAP notebook tutorials](https://github.com/awslabs/autogluon/tree/master/examples/tabular/interpret). jwmueller (#720)
- Heavily optimized CatBoost inference speed during online-inference. innixma (724)
- KNN models now respect time_limit. innixma (845)
- Added stack ensemble visualization method. muhyun (786)
- Added NLP token prefiltering logic for ngram generation. sflender (907)
- Added initial support for compression of model files to reduce disk usage. adrienatallah (940, 944)
- Numerous bug fixes. innixma, jwmueller, gradientsky (many...)

Text

- Major API refactor. sxjscience (876, 936, 972, 975)
- Support multi-GPU inference. sxjscience (873)
- Greatly improved user time_limit adherence. innixma (877)
- Fixed bug in model deserialization. jojo19893 (708)
- Numerous bug fixes. sxjscience (836, 847, 850, 861, 865, 963, 980)

Vision

- Major API refactor. zhreshold (733, 828, 882, 930, 946)
- Greatly improved user time_limit adherence. zhreshold

Page 4 of 6

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.