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

[ENH] ADD SAST transformer and SASTClassifier #958

Merged
merged 23 commits into from
Dec 19, 2023

Conversation

frankl1
Copy link
Contributor

@frankl1 frankl1 commented Dec 3, 2023

What does this implement/fix? Explain your changes.

Add implementation of the SAST ans SASTClassifier:

  • SAST: a subsequence based transformation for time series
  • SASTClassifier: as helper classifier to build a time series classifier based on the SAST transformation
    Associated paper

Does your contribution introduce a new dependency? If yes, which one?

matplotlib

PR checklist

For all contributions
  • I've added myself to the list of contributors. Alternatively, you can use the @all-contributors bot to do this for you.
  • The PR title starts with either [ENH], [MNT], [DOC], [BUG], [REF] or [GOV] indicating whether the PR topic is related to enhancement, maintenance, documentation, bugs, refactoring or governance.
For new estimators and functions

- SAST: a subsequence based transformation for time series
- SASTClassifier: as helper classifier to build a time series classifier based on the SAST transformation
Copy link

Check out this pull request on  ReviewNB

See visual diffs & provide feedback on Jupyter Notebooks.


Powered by ReviewNB

@aeon-actions-bot aeon-actions-bot bot added classification Classification package enhancement New feature, improvement request or other non-bug code enhancement examples Example notebook related transformations Transformations package labels Dec 3, 2023
@aeon-actions-bot
Copy link
Contributor

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{#BCAE15}{\textsf{classification}}$, $\color{#45FD64}{\textsf{examples}}$, $\color{#41A8F6}{\textsf{transformations}}$ ]. 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!

@TonyBagnall
Copy link
Contributor

awesome, thanks @frankl1, we will take a look next week.

@frankl1
Copy link
Contributor Author

frankl1 commented Dec 6, 2023

Hi all,

I could not figure out the cause of the failing test. It doesn't seem to be related to my changes. Since I couldn't manage to reproduce it locally, I wonder if there is a way to get more information on the error from the job log.

Thanks

@TonyBagnall
Copy link
Contributor

Hi all,

I could not figure out the cause of the failing test. It doesn't seem to be related to my changes. Since I couldn't manage to reproduce it locally, I wonder if there is a way to get more information on the error from the job log.

Thanks

hi @frankl1 so sometimes the CI crashes when too much is running at once. Its passed all now. I'm away a couple of days but we will review it asap, thanks for the contribution, really pleased you made the effort. Did you join our slack? Be good to catch up

@frankl1
Copy link
Contributor Author

frankl1 commented Dec 7, 2023

Thanks for the reply @TonyBagnall. It is my pleasure to contribute to this great project and I plan to contribute more in the future. I haven't joined the Slack, will catch up.

Copy link
Contributor

@TonyBagnall TonyBagnall left a comment

Choose a reason for hiding this comment

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

I'd rather not introduce a whole new category, could this go in the shapelet package?

@frankl1
Copy link
Contributor Author

frankl1 commented Dec 8, 2023

Hi @TonyBagnall ,

Thanks for reviewing the PR.

I don't mind using the shapelet package for this since the method is able to learn shapelets. I will make the update today.

Copy link
Member

@baraline baraline left a comment

Choose a reason for hiding this comment

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

Hi, I'm jumping in on the review as I've seen the paper and wanted to look at the code !
If you don't mind, I think the following things could be changed.

Additionally, it would be nice to have some unit tests for the transformer and classifier.

Copy link
Contributor

@TonyBagnall TonyBagnall left a comment

Choose a reason for hiding this comment

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

LGTM, thanks

@MatthewMiddlehurst
Copy link
Member

MatthewMiddlehurst commented Dec 18, 2023

Thanks for the contribution @frankl1, I didnt see anything holding this back from going in on my look through. I think some tests would be good to add, but won't push for them in this PR.

Are there any more changes you want to make for this? If not, you can ping @baraline to re-review and we can move it forward I think if they agree.

Sorry for the delay!

@TonyBagnall TonyBagnall merged commit 8e88d41 into aeon-toolkit:main Dec 19, 2023
17 checks passed
@frankl1
Copy link
Contributor Author

frankl1 commented Jan 3, 2024

Hi,

I am sorry for the late reply, I was on vacation. There are no changes I would like to add to this @MatthewMiddlehurst. I will work on the multivariate version and make a new PR.

Thanks for merging with the main branch.

Regard

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
classification Classification package enhancement New feature, improvement request or other non-bug code enhancement examples Example notebook related transformations Transformations package
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants