Version 0.3¶
- Third release of the stable API. By Rafael M O Cruz and Luiz G Hafemann
Changes¶
- All techniques are now sklearn estimators and passes the check_estimator tests.
- All techniques can now be instantiated without a trained pool of classifiers.
- Pool of classifiers can now be fitted together with the ensemble techniques. See simple example.
- Added support for Faiss (Facebook AI Similarity Search) for fast region of competence estimation on GPU.
- Added DES Multi-class Imbalance method
deslib.des.des_mi.DESMI
. - Added stacked classifier model,
deslib.static.stacked.StackedClassifier
to the static ensemble module. - Added a new Instance Hardness measure
utils.instance_hardness.kdn_score()
. - Added Instance Hardness support when using DES-Clustering.
- Added label encoder for the
static
module. - Added a script
utils.datasets
with routines to generate synthetic datasets (e.g., the P2 and XOR datasets). - Changed name of base classes (Adding Base to their following scikit-learn standards).
- Removal of DFP_mask, neighbors and distances as class variables.
- Changed signature of methods estimate_competence, predict_with_ds, predict_proba_with_ds. They now require the neighbors and distances to be passed as input arguments.
- Added random_state parameter to all methods in order to have reproducible results.
- Added Python 3.7 support.
- New and updated examples.
- Added performance tests comparing the speed of Faiss vs sklearn KNN.
Bug Fixes¶
- Fixed bug with META-DES when checking if the meta-classifier was already fitted.
- Fixed bug with random state on DCS techniques.
- Fixed high memory consumption on DES probabilistic methods.
- Fixed bug on Heterogeneous ensembles example and notebooks examples.
- Fixed bug on
deslib.des.probabilistic.MinimumDifference
when only samples from a single class are provided. - Fixed problem with DS methods when the number of training examples was lower than the k value.
- Fixed division by zero problems with
APosteriori
APriori
MLA
when the distance is equal to zero. - Fixed bug on
deslib.utils.prob_functions.exponential_func()
when the support obtained for the correct class was equal to one.