https://github.com/probabl-ai/skore
the scikit-learn sidekick
https://github.com/probabl-ai/skore
data-analysis data-science data-visualization machine-learning python scikit-learn workflow
Last synced: 18 days ago
JSON representation
the scikit-learn sidekick
- Host: GitHub
- URL: https://github.com/probabl-ai/skore
- Owner: probabl-ai
- License: mit
- Created: 2024-06-17T15:29:38.000Z (11 months ago)
- Default Branch: main
- Last Pushed: 2025-04-09T09:00:04.000Z (20 days ago)
- Last Synced: 2025-04-09T09:39:58.524Z (20 days ago)
- Topics: data-analysis, data-science, data-visualization, machine-learning, python, scikit-learn, workflow
- Language: Python
- Homepage: https://skore.probabl.ai
- Size: 10.6 MB
- Stars: 383
- Watchers: 5
- Forks: 34
- Open Issues: 96
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.rst
- License: LICENSE
- Codeowners: .github/CODEOWNERS
Awesome Lists containing this project
README


[](https://pepy.tech/projects/skore)
[](https://pypi.org/project/skore/)
[](https://discord.probabl.ai/)
![]()
the scikit-learn sidekick
Elevate ML Development with Built-in Recommended Practices \
[Documentation](https://skore.probabl.ai) — [Community](https://discord.probabl.ai) — [YouTube](https://youtube.com/playlist?list=PLSIzlWDI17bTpixfFkooxLpbz4DNQcam3)
## What is skore?
skore is a Python open-source library designed to help data scientists apply recommended practices and avoid common methodological pitfalls in scikit-learn.
## Key features
- **Diagnose**: catch methodological errors before they impact your models.
- `train_test_split` supercharged with methodological guidance: the API is the same as scikit-learn's, but skore displays warnings when applicable. For example, it warns you against shuffling time series data or when you have class imbalance.
- **Evaluate**: automated insightful reports.
- `EstimatorReport`: feed your scikit-learn compatible estimator and dataset, and it generates recommended metrics, feature importance, and plots to help you evaluate and inspect your estimator. All these are computed and generated for you in 1 line of code. Under the hood, we use efficient caching to make the computations blazing fast.
- `CrossValidationReport`: get a skore estimator report for each fold of your cross-validation.
- `ComparisonReport`: benchmark your skore estimator reports.## What's next?
Skore is just at the beginning of its journey, but we’re shipping fast! Frequent updates and new features are on the way as we work toward our vision of becoming a comprehensive library for data scientists.
⭐ Support us with a star and spread the word - it means a lot! ⭐
## 🚀 Quick start
### Installation
#### With pip
We recommend using a [virtual environment (venv)](https://docs.python.org/3/tutorial/venv.html). You need `python>=3.9`.
Then, you can install skore by using `pip`:
```bash
pip install -U skore
```#### With conda
skore is available in `conda-forge`:
```bash
conda install conda-forge::skore
```You can find information on the latest version [here](https://anaconda.org/conda-forge/skore).
### Get assistance when developing your ML/DS projects
1. Evaluate your model using `skore.CrossValidationReport`:
```python
from sklearn.datasets import make_classification
from sklearn.linear_model import LogisticRegressionfrom skore import CrossValidationReport
X, y = make_classification(n_classes=2, n_samples=100_000, n_informative=4)
clf = LogisticRegression()cv_report = CrossValidationReport(clf, X, y)
# Display the help tree to see all the insights that are available to you
cv_report.help()
``````python
# Display the report metrics that was computed for you:
df_cv_report_metrics = cv_report.metrics.report_metrics()
df_cv_report_metrics
``````python
# Display the ROC curve that was generated for you:
roc_plot = cv_report.metrics.roc()
roc_plot.plot()
```1. Store your results for safe-keeping.
```python
# Create and load a skore project
import skore
my_project = skore.Project("my_project")
``````python
# Store your results
my_project.put("df_cv_report_metrics", df_cv_report_metrics)
my_project.put("roc_plot", roc_plot)
``````python
# Get your results
df_get = my_project.get("df_cv_report_metrics")
df_get
```Learn more in our [documentation](https://skore.probabl.ai).
## Contributing
Thank you for considering contributing to skore! Join our mission to promote open-source and make machine learning development more robust and effective. Please check the contributing guidelines [here](https://github.com/probabl-ai/skore/blob/main/CONTRIBUTING.rst).
## Feedback & Community
- Join our [Discord](https://discord.probabl.ai/) to share ideas or get support.
- Request a feature or report a bug via [GitHub Issues](https://github.com/probabl-ai/skore/issues).
---
Brought to you by