0

What is the difference when you install pycaret by !pip install -U --pre pycaret and !pip install pycaret[full]. I find a lot of differnce wrt parameters being supported. For example for classsification the former does not support feature_interation and the later does not show Score_0 and Score_1 probabilities. these are just a few to name. also finalize_model does not work and throws an error in the former.

Can someone from pycaret answer this

Scope
  • 727
  • 4
  • 15

1 Answers1

0

As stated in official pycaret repo

PyCaret's default installation only installs hard dependencies as listed in the requirements.txt file.

pip install pycaret

To install the full version:

pip install pycaret[full]

And in requirements.txt

# Base
ipython>=5.5.0
ipywidgets>=7.6.5  # required by pycaret.internal.display
tqdm>=4.62.0  # required by pycaret.internal.display
numpy>=1.21, <1.23  # Can't >=1.23 because of sktime/numba
pandas>=1.3.0, <1.5.0  # Can't >=1.5 because of sktime
jinja2>=1.2  # Required by pycaret.internal.utils --> pandas.io.formats.style
scipy<1.9.0  # Can't >=1.9.0 due to sktime
joblib>=1.1.0
scikit-learn>=1.0
pyod>=0.9.8
imbalanced-learn>=0.8.1
category-encoders>=2.4.0
lightgbm>=3.0.0
numba~=0.55.0
requests>=2.27.1  # Required by pycaret.datasets
psutil>=5.9.0
markupsafe>=2.0.1  # Fixes Google Colab issue
importlib_metadata

# Plotting
matplotlib>=3.3.0
scikit-plot>=0.3.7
yellowbrick>=1.4
plotly>=5.0.0
kaleido>=0.2.1
schemdraw>=0.14
plotly-resampler>=0.7.2.2

# Time-series
statsmodels>=0.12.1
sktime~=0.13.1
tbats>=1.1.0
pmdarima>=1.8.0

These packages are always installed. Whereas in requirements-optional.txt

# Analysis
shap>=0.38.0
interpret>=0.2.7
umap-learn>=0.5.2
pandas-profiling>=3.1.0
explainerdashboard>=0.3.8  # For dashboard method
autoviz>=0.1.36  # For EDA method
fairlearn>=0.7.0  # For check_fairness method

# Models
xgboost>=1.1.0
catboost>=0.23.2
kmodes>=0.11.1
mlxtend>=0.19.0
statsforecast>=0.5.5
scikit-learn-intelex>=2021.6.3

# Tuners
tune-sklearn>=0.2.1
protobuf<4.0.0  # broken in Ray <1.13
ray[tune]>=1.0.0
hyperopt>=0.2.7
optuna>=2.2.0
scikit-optimize>=0.9.0

# MLOps
mlflow>=1.24.0
gradio>=2.8.10
fastapi>=0.75.0  # For web api
uvicorn>=0.17.6  # For web api
m2cgen>=0.9.0  # For model conversion
evidently>=0.1.45.dev0  # for drift reporting

# NLP
nltk>=3.7
pyLDAvis>=3.3.1
gensim>=4.1.2
spacy>=3.2.3
wordcloud>=1.8.1
textblob>=0.17.1

# Parallel
fugue~=0.6.6
flask>=2.0.3

These are only installed when using [full]

Full list of extras in setup.py

extras_require = {
    "analysis": required_optional.split("\n\n")[0].splitlines(),
    "models": required_optional.split("\n\n")[1].splitlines(),
    "tuners": required_optional.split("\n\n")[2].splitlines(),
    "mlops": required_optional.split("\n\n")[3].splitlines(),
    "nlp": required_optional.split("\n\n")[4].splitlines(),
    "parallel": required_optional.split("\n\n")[5].splitlines(),
}

extras_require["full"] = (
    extras_require["analysis"]
    + extras_require["models"]
    + extras_require["tuners"]
    + extras_require["mlops"]
    + extras_require["parallel"]
)
jett8998
  • 888
  • 2
  • 15