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

[BUG] AssertionError for test_arsenal.py::test_contracted_arsenal, len(obj.estimators_) is not more than 1 #5488

Open
achieveordie opened this issue Oct 25, 2023 · 1 comment
Labels
bug Something isn't working module:classification classification module: time series classification module:tests test framework functionality - only framework, excl specific tests

Comments

@achieveordie
Copy link
Collaborator

Describe the bug

First noticed in the CI runs of #5486 where multiple workers failed because of this error (1, 2, 3).
To Reproduce

While I'm not familiar with the inner workings of the Arsenal ensemble, I think this error is arising for the assertion statement in /classification/kernel_based/tests/test_arsenal.py:

assert len(arsenal.estimators_) > 1

Which should have been more than or equal to 1 since we can have an 'ensemble' containing only 1 child estimator. But I could be wrong and these errors might be originating for sporadic reasons. Note that these files have not been changed recently so it is unlikely to be coming from any recent changes.

Expected behavior

Additional context

Versions

@achieveordie achieveordie added bug Something isn't working module:classification classification module: time series classification module:tests test framework functionality - only framework, excl specific tests labels Oct 25, 2023
@fkiraly
Copy link
Collaborator

fkiraly commented Oct 25, 2023

Yes, an ensemble of 1 is valid, what we should quickly check if it is also possible that the logic results in an ensemble of zero, and this results in an error.

Not handling the case of 1 or 0 estimators is a common "mistake" in implementation of bootstrap ensembles.

What I typically do is allow 1 and default to the DummyClassifier logic (not the estimator but the logic) in the case of 0.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working module:classification classification module: time series classification module:tests test framework functionality - only framework, excl specific tests
Projects
None yet
Development

No branches or pull requests

2 participants