modAL: A modular active learning framework for Python3¶
Welcome to the documentation for modAL!
modAL is an active learning framework for Python3, designed with modularity, flexibility and extensibility in mind. Built on top of scikit-learn, it allows you to rapidly create active learning workflows with nearly complete freedom. What is more, you can easily replace parts with your custom built solutions, allowing you to design novel algorithms with ease.
Currently supported active learning strategies are
- uncertainty-based sampling: least confident (Lewis and Catlett), max margin and max entropy
- committee-based algorithms: vote entropy, consensus entropy and max disagreement (Cohn et al.)
- multilabel strategies: SVM binary minimum (Brinker), max loss, mean max loss, (Li et al.) MinConfidence, MeanConfidence, MinScore, MeanScore (Esuli and Sebastiani)
- expected error reduction: binary and log loss (Roy and McCallum)
- Bayesian optimization: probability of improvement, expected improvement and upper confidence bound (Snoek et al.)
- batch active learning: ranked batch-mode sampling (Cardoso et al.)
- information density framework (McCallum and Nigam)
- stream-based sampling (Atlas et al.)
- active regression with max standard deviance sampling for Gaussian processes or ensemble regressors