What to do with the warnings #1348
Replies: 3 comments 3 replies
-
An additional downside of
I see something much more advance than that (I don't the UI yet in head). I would expect something like the "Associations" tab from the |
Beta Was this translation helpful? Give feedback.
-
Those warnings can come from checkers / linters which have a very structured way of representing warnings, errors, and suggestions. They would have rules which can be disable/enabled or even extended by the user/community. Those linters can be called directly by the user, or by the # checking a simple sklearn/xgboost/... estimator, with or w/o data
linter.check_model(estimator)
linter.check_model(estimator, X, y)
# they could also check the data
linter.check_data(X, y, ...)
linter.check_data(X_train, y_train, X_test, y_test) The result of the above functions are all very structured, think a list of instances of classes, each representing a message about a particular case/rule. The |
Beta Was this translation helpful? Give feedback.
-
Some thoughts:
|
Beta Was this translation helpful? Give feedback.
-
Today, we have warnings inside a skore function
train_test_split
. It takes as input the same inputs as thetrain_test_split
in scikit-learn, plus a parameter project, and it returns the same output as in scikit-learn. The goal is to have methodological help to avoid common pitfalls to the user.Verbatim in favor of this kind of feature
Warith
Vincent D. W.
(All these during the same conversation)
Linkedin users
When we did a post about this part of skore, the post had a great success compared to the others published around the same time.
One of the comments is
(source)
Downsides of the current UX
What pain point we want to solve
Data Science is a large field, even when being a expert and senior, we can't know everything, and it can happen to do mistakes or to not see mistakes in a review: errors can happen.
What value it brings to the user
a. faster reviews
b. fewer iterations
What we want to provide
NB: not necessarily all in one place. Part of it can be in hub, and part can be in lib.
Suggestion of solution
The solution suggested should not block any element listed above. However, let's focus on the two first elements, and let's not try to do all at once.
Possible tracks
We have two main tracks possible. The linting and the embed analysis.
For the linting, we can't use the data and the content of the artefacts, such as models and pipelines. Furthermore, many linter already exists, and it's not consistant with the rest of the product.
For the embed analysis, the downside is that it's not exhaustive in coverage. It's limited to what skore can see.
What it would look like
We would have warnings accessible in a report:
The question now is: those warnings, are they just a sentence in a dict, or.. an object?
I really like the idea to have an object, because it actually allows to have the two tracks: linting, and embed analysis. Furthermore, having an object would allow to do things such as
warning.edit_justification("the reason why I did this")
.This is the solution I advocate for.
Beta Was this translation helpful? Give feedback.
All reactions