Recent Releases of scikit-activeml
scikit-activeml - 0.6.2
We are happy to announce the following changes/features:
Installation
- Upload to PyPI complies with PEP625 by @mherde in https://github.com/scikit-activeml/scikit-activeml/pull/499
Tests
- Improve formatting and reproducibility by @mherde and @tpham93 in https://github.com/scikit-activeml/scikit-activeml/pull/505
Requirements
- Update joblib requirement from <=1.4.2 to <=1.5.0 by @dependabot in https://github.com/scikit-activeml/scikit-activeml/pull/497
- Update makefun requirement from <=1.15.6 to <=1.16.0 by @dependabot in https://github.com/scikit-activeml/scikit-activeml/pull/500
Full Changelog: https://github.com/scikit-activeml/scikit-activeml/compare/0.6.1...0.6.2
- Python
Published by tpham93 10 months ago
scikit-activeml - 0.6.1
We are happy to announce the following changes/features:
Bugfixes
- #494 Add fix for repeated fit for
ParzenWindowClassifierwith mean criterion by @tpham93. - #493 Fix
RT-ALformethod="representativity"by @mherde. Thanks to @bjaster for pointing out this bug and proposing a fix in #491.
Full Changelog: 0.6.0...0.6.1
- Python
Published by tpham93 10 months ago
scikit-activeml - 0.6.0
We are happy to announce the following changes/features:
Tutorials
Query Strategies
- #456 Implement
Falcun[1] by @mherde - #486 Implement
DropQuery[2] by @mherde - #465 Subsampling wrapper to limit training data by @tpham93
Estimators
- #478 Pretrained
sklearnmodels by @tpham93 - #486 Fix bug in
AnnotatorLogisticRegression[3] by @mherde
Documentation
Continuous Integration
- #464 Bump
codecov/codecov-actionfrom 4 to 5 by @dependabot - #467 Workflows for external pull requests by @tpham93
Requirements
- #463 Update numpy requirement from
<=2.1.0to<=2.1.3by @dependabot - #462 Update iteration-utilities requirement from
<=0.12.1to<=0.13.0by @dependabot - #460 Update makefun requirement from
<=1.15.4to<=1.15.6by @dependabot - #458 Update scikit-learn requirement from
<=1.5.1to<=1.5.2by @dependabot - #470 Update scikit-learn requirement from
<=1.5.2to<=1.6.0by @dependabot - #479 Update numpy requirement from
<=2.1.3to<=2.2.2by @dependabot - #477 Update scipy requirement from
<=1.14.1to<=1.15.1by @dependabot - #474 Update matplotlib requirement from
<=3.9.2to<=3.10.0by @dependabot - #483 Update scipy requirement from
<=1.15.1to<=1.15.2by @dependabot - #484 Update scikit-learn requirement from
<=1.6.0to<=1.6.1by @dependabot - #485 Update numpy requirement from
<=2.2.2to<=2.2.3by @dependabot - #487 Update matplotlib requirement from
<=3.10.0to<=3.10.1by @dependabot
Other
References
- [1] S. Gilhuber, A. Beer, Y. Ma, and T. Seidl. FALCUN: A Simple and Efficient Deep Active Learning Strategy. In Jt. Eur. Conf. Mach. Learn. Knowl. Discov. Databases, 421–439. 2024.
- [2] S. R. Gupte, J. Aklilu, J. J. Nirschl, and S. Yeung-Levy. Revisiting Active Learning in the Era of Vision Foundation Models. Trans. Mach. Learn. Res., 2024.
- [3] V. C. Raykar, S. Yu, L. H. Zhao, G. H. Valadez, C. Florin, L. Bogoni, and L. Moy. Learning from Crowds. J. Mach. Learn. Res., 11(4):1297–1322, 2010.
Full Changelog: 0.5.2...0.6.0
- Python
Published by mherde 11 months ago
scikit-activeml - scikit-activeml 0.5.2
We are happy to announce the following changes/features:
Query Strategies:
- Fix
TypiClustwhenbatch_sizeis higher than the number of non-empty clusters by @tpham93 in https://github.com/scikit-activeml/scikit-activeml/pull/452
Documentation:
- Add development branch to documentation by @tpham93 in https://github.com/scikit-activeml/scikit-activeml/pull/448
Continuous Integration:
- Add workflow parallelization by @tpham93 in https://github.com/scikit-activeml/scikit-activeml/pull/441
Requirements:
- Update scipy requirement from <=1.14.0 to <=1.14.1 by @dependabot in https://github.com/scikit-activeml/scikit-activeml/pull/449
- Update numpy requirement from <=2.0.1 to <=2.1.0 by @dependabot in https://github.com/scikit-activeml/scikit-activeml/pull/445
- Update matplotlib requirement from <=3.9.1 to <=3.9.2 by @dependabot in https://github.com/scikit-activeml/scikit-activeml/pull/446
Full Changelog: https://github.com/scikit-activeml/scikit-activeml/compare/0.5.1...0.5.2
- Python
Published by mherde over 1 year ago
scikit-activeml - scikit-activeml 0.5.1
We are happy to announce the following changes/features:
Query Strategies:
- Implement pool-based query strategy Probability Coverage (ProbCover) [1] as
ProbCoverby @mherde in https://github.com/scikit-activeml/scikit-activeml/pull/426 - Implement pool-based query strategy Contrastive Active Learning (CAL) [2] as
ContrastiveALby @mherde in https://github.com/scikit-activeml/scikit-activeml/pull/430 - Implement pool-based query strategy Clustering Uncertainty-weighted Embeddings (CLUE) [3] as
Clueby @mherde in https://github.com/scikit-activeml/scikit-activeml/pull/437 - Add sampling option and variation ratios [4] as new options to pool-based query strategy Query by Committee (QBC) in
QueryByCommitteeby @mherde in https://github.com/scikit-activeml/scikit-activeml/pull/434
Tutorials:
- Add "Open in Colab" button to all tutorial notebooks and examples by @tpham93 in https://github.com/scikit-activeml/scikit-activeml/pull/429
Documentation:
- Implement versioning of the documentation and parallelize examples by @AlexanderBenz in https://github.com/scikit-activeml/scikit-activeml/pull/379 and by @tpham93 in https://github.com/scikit-activeml/scikit-activeml/pull/438
- Add community standards by @mherde in https://github.com/scikit-activeml/scikit-activeml/pull/431
Requirements:
- Update optional maximum numpy requirement from <=2.0.0 to <=2.0.1 by @dependabot in https://github.com/scikit-activeml/scikit-activeml/pull/425
References
- [1] Yehuda, Ofer, Avihu Dekel, Guy Hacohen, and Daphna Weinshall. "Active learning through a covering lens." Advances in Neural Information Processing Systems 35 (2022): 22354-22367.
- [2] Margatina, Katerina, Giorgos Vernikos, Loïc Barrault, and Nikolaos Aletras. "Active Learning by Acquiring Contrastive Examples." In Proceedings of the 2021 Conference on Empirical Methods in Natural Language Processing, pp. 650-663. 2021.
- [3] Prabhu, Viraj, Arjun Chandrasekaran, Kate Saenko, and Judy Hoffman. "Active Domain Adaptation via Clustering Uncertainty-weighted Embeddings." In Proceedings of the IEEE/CVF international conference on computer vision, pp. 8505-8514. 2021
- [4] Beluch, W. H., Genewein, T., Nürnberger, A., and Köhler, J. M. The Power of Ensembles for Active Learning in Image Classification. In Conference on Computer Vision and Pattern Recognition, pages 9368-9377, 2018.
Full Changelog:
https://github.com/scikit-activeml/scikit-activeml/compare/0.5.0...0.5.1
- Python
Published by mherde over 1 year ago
scikit-activeml - scikit-activeml 0.5.0
We are happy to announce the following changes/features:
Wrapper Query Strategies:
- FR: Addition of the pool-based query strategy wrapper SubSamplingWrapper, which allows subsampling a smaller set of sample candidates to accelerate the sample selection via query (cf. #349).
- FR: Addition of the pool-based query strategy wrapper ParallelUtilityEstimationWrapper, which allows parallelizing the utility computation across the sample candidates via joblib. As a requirement, the utility computation must be independent between the candidate samples (cf. #402).
Query Strategies:
- FR: Addition of the pool-based query strategy RegressionTreeBasedAL, which leverages a regression tree to select samples for regression tasks (cf. #371).
- FR: Addition of the pool-based query strategy CoreSet, which leverages kmeans++ to select diverse samples. Originally, this strategy has been designed for classification tasks. Yet, it can also be used in the context of regression (cf. #281).
- FR: Addition of the pool-based query strategy TypiClust, which leverages kmeans to balance the trade-off between diversity and representativeness (typicality) of samples. Originally, this strategy has been designed for classification tasks. Yet, it can also be used in the context of regression (cf. #364).
- FR: Addition of the pool-based query strategy Badge, which leverages kmeans++ in the gradient space of the last linear layer of a classification neural network. Thereby, its sample selection balances the trade-off between diverse and uncertain samples.
- FR: Addition of the pool-based query strategy GreedyBALD, which performs a top-k selection for the utilities computed according to BALD (cf. #323).
- BUG: Fix the issue of estimators outputting zero probabilities, raising warnings when computing log probabilities in BatchBALD.
- BUG: Fix the handling of candidates in the multi-annotator pool-based query strategy wrapper SingleAnnotatorWrapper (cf. #404) and ensure that missing_label the wrapper and the wrapped single-annotator query strategy match (cf. #405).
Estimators:
- FR: SklearnClassifier, SklearnClassifier, and SlidingWindowClassifier have match_signature as new decorators for the methods to enforce the correct mapping between the parameter signature between the wrapper's methods and the wrapped estimator's methods (cf. #375).
Tutorials: - FR: Add a tutorial showcasing query strategies suited for deep learning tasks in combination with self-supervised models to extract self-supervised sample features (cf. #282).
Requirements:
- FR: Update of supported Python versions to 3.9, 3.10, 3.11, and 3.12 (cf. #378, #416). The requirements are updated accordingly.
- FR: Removed upper bounds in requirements to avoid undesired downgrades of packages. Still, a guaranteed working installation can be enforced via max_requirements.txt.
- FR: Add makefun as a new requirement to match signatures when using wrappers (cf. #375).
- FR: Implement automatic dependency check via dependabot (cf. #302, #314).
Tests: - Add and use new test templates for classifiers, regressors, stream-based query strategies, and budget managers (cf. #303).
Documentation: - FR: Add note that outputs of the query strategy examples are given at the bottom of each example (cf. #304).
Continuous Integration:
- FR: Addition of automatic formatting check via black (cf. #301).
- FR: Parallelize example generation to speed up the CI process (cf. #306).
Full Changelog: - https://github.com/scikit-activeml/scikit-activeml/compare/0.4.1...0.5.0
- Python
Published by mherde over 1 year ago
scikit-activeml - scikit-activeml 0.4.1
We are happy to announce the following changes/features:
- We added
CogDQSandDBALStreamas two new stream-based query strategies (cf. #254). - We implemented
BatchBALDas a new pool-based query strategy (cf. #284). - We added examples for the stream-based query strategies to the documentation and updated the notion of utilities, which now need to be maximized (cf. #286).
- We added legends to the examples for better understanding (cf. #287).
- We revised the developer guide (cf. #290).
- Python
Published by mherde almost 3 years ago
scikit-activeml - scikit-activeml 0.4.0
We are happy to announce the following changes/features:
- We now support Python 3.10, and we deprecated Python 3.7 (cf. #279).
- We now support scikit-learn 1.2 (cf. #279).
- Update of probabilistic active learning to support mean bandwidth kernel (cf. #260).
- Added examples for DWUS and DUAL as two newly supported uncertainty-based query strategies (cf. #266).
- Updated QUIRE to allow sampling when mathematical assumptions are not fulfilled (cf. #274 ).
- Python
Published by mherde about 3 years ago
scikit-activeml - scikit-activeml 0.3.1
We are happy to announce the following changes/features:
- Improved test infrastructure
- Documentation improved
- Test coverage does not include test files anymore
- Python
Published by dakot over 3 years ago
scikit-activeml - scikit-activeml 0.3.0
We are happy to announce the following changes/features:
- Added pool-based query strategies for regression
- Fixed bug in vote entropy for query-by-committee
- Improved documentation
- Python
Published by dakot over 3 years ago
scikit-activeml - scikit-activeml 0.2.5
We are happy to announce the following changes/features:
- Added an alternative kernel frequency estimation option for StreamProbabilisticAL
- Python
Published by dakot over 3 years ago
scikit-activeml - scikit-activeml 0.2.4
We are happy to announce the following changes/features:
- Implementation of Discriminative Active Learning as a new pool-based query strategy
- Implementation of a new classifier wrapper to enable learning with sliding windows
- Python
Published by tpham93 over 3 years ago
scikit-activeml - scikit-activeml 0.2.3
We are happy to announce the following changes/features:
- Bugfix of import error in
EpistemicUncertaintySamplingdue toscikit-learnupdate - Improved compatibility for
scikit-learnwith version >= 1.1 - Include unit tests to check compatibility with old dependencies
- Improved compatibility for Python 3.10
- Automatic limitations to future package updates in
requirements.txt
- Python
Published by mherde almost 4 years ago
scikit-activeml - scikit-activeml 0.2.2
We are happy to announce the following changes/features: - Adding QUIRE to the pool sub package - Restructuring code with black
- Python
Published by mherde almost 4 years ago
scikit-activeml - scikit-activeml 0.2.1
We are happy to announce the following changes/features:
- EER now supports:
substract_current - Bug fix: Voi now also working for one unlabeled instance
- Release Process Improvement: Version number is now automatically set when a new release is drafted
- Python
Published by dakot almost 4 years ago
scikit-activeml - scikit-activeml 0.2.0
We are happy to announce the following changes/features:
- Speed up documentation build
- Enhanced presentation on PyPI
- Optimized PyPI publishing
- Python
Published by mherde almost 4 years ago
scikit-activeml - scikit-activeml 0.1.2
We are happy to announce the following changes/features:
- Restructure query functions signature in query strategies.
- Optimized visualization.
- Code reformatting with black and flake8.
- Optimization of expected error reduction, including new versions (e.g., VOI).
- Python
Published by mherde almost 4 years ago
scikit-activeml - scikit-activeml 0.1.1
We are happy to announce the following changes/features:
- Enhanced presentation on PyPI
- Python
Published by dakot over 4 years ago
scikit-activeml - scikit-activeml 0.1.0
We are happy to announce the following changes/features:
- Stream-based AL
- Multi-annotator AL
- Moved clf from __init__ to query for query strategies
- Python
Published by dakot over 4 years ago
scikit-activeml - scikit-activeml 0.0.0
The journey begins...
- Python
Published by dakot almost 5 years ago