skbase provides base classes for creating scikit-learn-like parametric objects, along with tools to make it easier to build custom packages that follow these design patterns. It is a foundational library, notably used by `sktime`. The current version is 0.13.1, and it has a frequent release cadence with minor and patch updates occurring roughly monthly or bi-monthly.
pip install scikit-baseVerified import paths — ran on the pinned version, not inferred.
This quickstart demonstrates defining a custom object inheriting from `skbase.base.BaseObject`, illustrating how to initialize parameters, retrieve them with `get_params`, modify them with `set_params`, and create a deep copy using `clone()`.
To retain the old behavior (selecting objects with the tag of any value), pass a dictionary with the tag name as key and `re.Pattern('.*')` as value. For example, `from re import Pattern; all_objects(filter_tags={'tag_name': Pattern('.*')})`.Ensure all necessary dependencies for your project are explicitly listed in your `pyproject.toml` or `setup.py` and installed, rather than relying on `skbase` to pull them in indirectly.
If you intend to use existing machine learning algorithms, use `scikit-learn` (e.g., `from sklearn.ensemble import RandomForestClassifier`). If you are building new estimators that adhere to the `scikit-learn` API, use `skbase.base.BaseObject`.