Dependencies
Python & OS
As of the moment, ATOM supports the following Python versions:
And operating systems:
- Linux (Ubuntu, Fedora, etc...)
- Windows 8.1+
- macOS (not tested)
Packages
Required
ATOM is built on top of several existing Python libraries. These packages are necessary for its correct functioning.
- category-encoders (>=2.5.1)
- dill (>=0.3.6)
- dagshub (<=0.2.10)
- gplearn (>=0.4.2)
- imbalanced-learn (>=0.10.1)
- ipython (>=8.11.0)
- featuretools (>=1.23.0)
- joblib (>=1.1.0)
- matplotlib (>=3.6.3)
- mlflow (>=2.2.0)
- modin[ray] (>=0.18.1)
- nltk (>=3.8.1)
- numpy (>=1.23.5)
- optuna (>=3.1.0)
- pandas (>=1.5.0)
- plotly (>=5.13.1)
- ray[serve] (>=2.3.0)
- shap (>=0.41.0)
- scikit-learn (>=1.2.0)
- scikit-learn-intelex (>=2023.0.1)
- scipy (>=1.9.3)
- zoofs (>=0.1.26)
Optional
Some specific models, utility methods or plots require the installation of
additional libraries. You can install all the optional dependencies using
pip install atom-ml[full]
. Doing so also installs the following libraries:
- catboost (>=1.1.1)
- explainerdashboard (>=0.4.2)
- evalml (>=0.68.0)
- gradio (>=3.19.1)
- lightgbm (>=3.3.5)
- schemdraw (>=0.16)
- wordcloud (>=1.8.2)
- xgboost (>=1.7.4)
- ydata-profiling (>=4.1.0)
Development
The development dependencies are not installed with the package, and are
not required for any of its functionalities. These libraries are only
necessary to contribute to the project. Install them
using pip install atom-ml[dev]
.
Linting
- isort (>=5.12.0)
- flake8 (>=6.0.0)
- flake8-pyproject (>=1.2.2)
Testing
- nbmake (>=1.4.1)
- pytest (>=7.2.1)
- pytest-cov (>=4.0.0)
- pytest-xdist (>=3.2.0)
- scikeras (>=0.10.0)
- tensorflow (>=2.11.0)
Documentation
- mike (>=1.1.2)
- mkdocs (>=1.4.2)
- mkdocs-autorefs (>=0.4.1)
- mkdocs-jupyter (>=0.22.0)
- mkdocs-material (>=9.1.0)
- mkdocs-material-extensions (>=1.1.1)
- mkdocs-simple-hooks (>=0.1.5)
- pymdown-extensions (>=9.9.2)
- pyyaml (>=6.0)