aeon icon indicating copy to clipboard operation
aeon copied to clipboard

[ENH] Implementing U-shapelet algorithm

Open aryanpola opened this issue 8 months ago • 4 comments

Reference Issues/PRs

Implements #2660

What does this implement/fix? Explain your changes.

Implements Unsupervised Shapelet Clustering Algorithm. Clusters the time series based on the number of clusters inputed.

Output for the test cases: Screenshot 2025-03-26 160743

aryanpola avatar Mar 23 '25 15:03 aryanpola

Thank you for contributing to aeon

I have added the following labels to this PR based on the title: [ $\color{#FEF1BE}{\textsf{enhancement}}$ ]. I have added the following labels to this PR based on the changes made: [ $\color{#4011F3}{\textsf{clustering}}$ ]. Feel free to change these if they do not properly represent the PR.

The Checks tab will show the status of our automated tests. You can click on individual test runs in the tab or "Details" in the panel below to see more information if there is a failure.

If our pre-commit code quality check fails, any trivial fixes will automatically be pushed to your PR unless it is a draft.

Don't hesitate to ask questions on the aeon Slack channel if you have any.

PR CI actions

These checkboxes will add labels to enable/disable CI functionality for this PR. This may not take effect immediately, and a new commit may be required to run the new configuration.

  • [ ] Run pre-commit checks for all files
  • [ ] Run mypy typecheck tests
  • [ ] Run all pytest tests and configurations
  • [ ] Run all notebook example tests
  • [ ] Run numba-disabled codecov tests
  • [ ] Stop automatic pre-commit fixes (always disabled for drafts)
  • [ ] Disable numba cache loading
  • [ ] Push an empty commit to re-run CI checks

aeon-actions-bot[bot] avatar Mar 23 '25 15:03 aeon-actions-bot[bot]

@MatthewMiddlehurst could you help me with the failing test cases, unsure what's causing them to fail.

aryanpola avatar Mar 26 '25 11:03 aryanpola

hi @aryanpola thanks for this, could you describe in the PR description a bit more about your implementation, and its correctness in terms of the original paper? Is it based on other source code or done directly from the paper description? Have you tested it against any other published results? thanks

TonyBagnall avatar Apr 20 '25 11:04 TonyBagnall

Hi @TonyBagnall, Apologies for the delayed reply. I've implemented the code using the papers as a reference. There are still some enhancements (early abandoning from this , r filter ratio from this) to be done. I also spent some time testing on the Trace dataset but haven’t been able to reproduce the expected split yet, still looking into why the gap scores aren’t lining up. I'm tied up with coursework right now, will try to get this done asap.

aryanpola avatar Apr 27 '25 06:04 aryanpola