Skip to content
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

[DOC] Replace use of "estimator" term in base object interfaces with more general references #293

Merged
merged 21 commits into from
Sep 22, 2024

Conversation

tpvasconcelos
Copy link
Contributor

@tpvasconcelos tpvasconcelos commented Feb 23, 2024

Reference Issues/PRs

Depends on #281

What does this implement/fix? Explain your changes.

See #281 (comment) and relevant replies.

What should a reviewer concentrate their feedback on?

PR checklist

For all contributions
  • I've reviewed the project documentation on contributing
  • I've added myself to the list of contributors.
  • The PR title starts with either [ENH], [CI/CD], [MNT], [DOC], or [BUG] indicating whether
    the PR topic is related to enhancement, CI/CD, maintenance, documentation, or a bug.
For code contributions
  • Unit tests have been added covering code functionality
  • Appropriate docstrings have been added (see documentation standards)
  • New public functionality has been added to the API Reference

@tpvasconcelos tpvasconcelos changed the title Code use of "estimator" term in base object interfaces [DOC] Code use of "estimator" term in base object interfaces Feb 23, 2024
Copy link

codecov bot commented Feb 23, 2024

Codecov Report

Attention: Patch coverage is 62.50000% with 9 lines in your changes missing coverage. Please review.

Project coverage is 84.29%. Comparing base (306958d) to head (da1e4ab).
Report is 67 commits behind head on main.

Files with missing lines Patch % Lines
skbase/base/_base.py 62.50% 9 Missing ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##             main     #293      +/-   ##
==========================================
- Coverage   85.07%   84.29%   -0.78%     
==========================================
  Files          45       45              
  Lines        3015     3184     +169     
==========================================
+ Hits         2565     2684     +119     
- Misses        450      500      +50     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

skbase/base/_base.py Fixed Show resolved Hide resolved
@tpvasconcelos tpvasconcelos mentioned this pull request Feb 23, 2024
6 tasks
skbase/base/_base.py Outdated Show resolved Hide resolved
@tpvasconcelos tpvasconcelos marked this pull request as ready for review February 25, 2024 18:01
@tpvasconcelos
Copy link
Contributor Author

@fkiraly I think this is ready to merge/review 👍

Copy link
Contributor

@fkiraly fkiraly left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Mostly agreed, I have one issue that imo we need to resolve.

In some occurrences, I anticipate that using "object" to refer to a class - namely one inheriting from BaseObject - will cause a lot of confusion.

This is because there are python objects - instances of classes - so we are overloading a term that has a much more general meaning.

The most risky instances of these are the case of "object class" or "base object class", because the thing in question is neither a class, nor a base class..

These occcurences - in set_tag, get_tag, get_tags, set_params, get_params I would leave as is, unless we find a better solution. Perhaps we can work with "from self" etc, but that might confuse users who aren't too familiar wit the self concept.

Some solution suggestions:

  • get_tags, get_tag - just say "get tags from object and dynamic tag overrides" etc. Or change it completely, to "get tag value, with key-wise inheritance", then explain inheritance in another sentence.
  • get_class_tags, get_class_tag - "from class, with key-wise inheritance"?
  • set_params - I've removed the "base" (commit above), I think that fixes the ambiguity since we're not mentioning "class"

Other comments:

  • create_test_instance, does not create an instance of BaseObject, but of cls
  • "sub-estimator" sounds strange. Component objects?

@fkiraly
Copy link
Contributor

fkiraly commented Mar 28, 2024

@tpvasconcelos, are you still working on this?

Copy link
Contributor

@fkiraly fkiraly left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Made changes to clarify docs; reverted changes to _clone to avoid a divergence from sklearn.

@fkiraly fkiraly changed the title [DOC] Code use of "estimator" term in base object interfaces [DOC] Replace use of "estimator" term in base object interfaces with more general references Sep 22, 2024
@fkiraly fkiraly added the documentation Documentation & tutorials label Sep 22, 2024
@fkiraly fkiraly merged commit 0784625 into sktime:main Sep 22, 2024
23 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
documentation Documentation & tutorials
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants