Elevate ML Development with Built-in Recommended Practices
Documentation — Community — YouTube — Skore Hub
Skore is a product whose core mission is to turn uneven ML development into structured, effective decision-making. It is made of two complementary components:
- Skore Lib: the scikit-learn sidekick, an open-source Python library (described here!) designed to help data scientists boost their ML development with effective guidance and tooling.
- Skore Hub: the collaborative layer where teams connect, learn more on our product page.
⭐ Support us with a star and spread the word - it means a lot! ⭐
Evaluate and inspect: 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 model. All in just one 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.
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.
Skore Lib 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.
We recommend using a virtual environment (venv). You need python>=3.9
.
Then, you can install skore by using pip
:
# If you just use skore locally
pip install -U skore
# If you wish to also interact with the skore hub
pip install -U skore[hub]
skore is available in conda-forge
for local use:
conda install conda-forge::skore
It is not yet possible to interact with the skore hub when the skore is installed via conda.
You can find information on the latest version here.
Evaluate your model using skore.CrossValidationReport
:
from sklearn.datasets import make_classification
from sklearn.linear_model import LogisticRegression
from 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()
# Display the report metrics that was computed for you:
df_cv_report_metrics = cv_report.metrics.report_metrics()
df_cv_report_metrics
# Display the ROC curve that was generated for you:
roc_plot = cv_report.metrics.roc()
roc_plot.plot()
from sklearn.datasets import make_classification
from sklearn.linear_model import LogisticRegression
from sklearn.model_selection import train_test_split
import skore
# Create or connect to a Project
project = skore.Project("<name>") # local
project = skore.Project("hub://<tenant>/<name>") # hub
X, y = make_classification(n_classes=2, n_samples=100_000, n_informative=4)
X_train, X_test, y_train, y_test = train_test_split(X, y)
clf = LogisticRegression()
report = skore.EstimatorReport(
clf,
X_train=X_train,
y_train=y_train,
X_test=X_test,
y_test=y_test,
)
# Save report to Project for future reference
project.put("my_report", report)
Learn more in our documentation.
Join our mission to promote open-source and make machine learning development more robust and effective. If you'd like to contribute, please check the contributing guidelines here.
- Join our Discord to share ideas or get support.
- Request a feature or report a bug via GitHub Issues.
Brought to you by
