New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Create BaseObject #877
Labels
Comments
5 tasks
This was referenced Jun 17, 2021
Closed
From our discussion today @RNKuhns, functionality that the
Potential additional interface points:
|
Perhaps it's time to close this and move additional desired interface points to a new issue and/or new discussion. |
I think that sounds reasonable. |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Labels
Is your feature request related to a problem? Please describe.
Sktime's
BaseEstimator
inherits from scikit-learn'sBaseEstimator
and adds functionality for getting estimator tags and checking if an estimator has been fitted.The functionality to check if an estimator is fitted (and the
is_fitted
property) are not needed for "non-fitable" Sktime classes (for instance performance_metrics). However, these Sktime would benefit from inheriting from a base Sktime object that includes the estimator tag functionality. Additionally, if these classes inherit from Sktime's BaseEstimator it causes problems for unit testing that is designed to test "fitable" estimators.Describe the solution you'd like
Create an Sktime
BaseObject
class that inherits from scikit-learn'sBaseEstimator
and only adds the method for returning estimator tags.Sktime's BaseEstimator can then inherit from the
BaseObject
and add the functionality that applies to estimators (e.g.is_fitted
andcheck_is_fitted
).Add appropriate unit tests for BaseObject.
Describe alternatives you've considered
Primary alternative is to copy functionality needed functionality from BaseEstimator (e.g. #858), but inheriting the functionality is much cleaner and less error prone.
The text was updated successfully, but these errors were encountered: