Scikit-dimension: a Python package for intrinsic dimension estimation
This provides a practical tool for researchers and practitioners dealing with uncertainty in machine learning applications, but it is incremental as it packages existing methods.
The authors tackled the lack of a standard Python package for intrinsic dimension estimation by introducing scikit-dimension, which provides uniform implementations of most known estimators and was demonstrated in a large-scale benchmarking of over 500 datasets.
Dealing with uncertainty in applications of machine learning to real-life data critically depends on the knowledge of intrinsic dimensionality (ID). A number of methods have been suggested for the purpose of estimating ID, but no standard package to easily apply them one by one or all at once has been implemented in Python. This technical note introduces \texttt{scikit-dimension}, an open-source Python package for intrinsic dimension estimation. \texttt{scikit-dimension} package provides a uniform implementation of most of the known ID estimators based on scikit-learn application programming interface to evaluate global and local intrinsic dimension, as well as generators of synthetic toy and benchmark datasets widespread in the literature. The package is developed with tools assessing the code quality, coverage, unit testing and continuous integration. We briefly describe the package and demonstrate its use in a large-scale (more than 500 datasets) benchmarking of methods for ID estimation in real-life and synthetic data. The source code is available from https://github.com/j-bac/scikit-dimension , the documentation is available from https://scikit-dimension.readthedocs.io .