Comments (9)
I think I might be able to make some progress on this.
from matrixprofile-ts.
I did make progress on my fork. I also fixed a bug in SCRIMP++ where the matrix profile indices were taking invalid values. I also added comments in some places, and removed some variables that weren't necessary.
from matrixprofile-ts.
There was another bug where the exclusion zones were not applied to the distance profiles. This has been fixed - SCRIMP++ now gives me the same output as STOMP.
from matrixprofile-ts.
I want to make a pull request with all of my contributions and bug fixes, but I think I've added quite a few things (exclusion_zone_fraction) and modified the names of other variables, as well as committed to my master branch only. What do you think? Someone could benefit from these fixes though.
from matrixprofile-ts.
@ameya98 Typically, it is best practice to solve one issue in a branch in your repository and then submit a pull request. You may be able to use git's cherry pick functionality to create new branches that resolve specific issues.
An an aside, my implementation followed UCR Matlab code explicitly where as the stomp implementation in this library was based on the paper. I'm not sure that it makes sense to have SCRIMP++ follow the stomp standards. @vanbenschoten what do you think?
from matrixprofile-ts.
It's not about the standards, it's about the implementation here: both STOMP and SCRIMP++ (when run to completion) compute the exact matrix profile. There is no reason for the outputs of both of these to be any different (except for floating point errors, but those errors are extremely minor).
The current implementation has bugs - the matrix profile indices were being incorrectly computed (the indices were taking values larger than the profile length), and the exclusion zone should be applied when computing the distance profiles in SCRIMP (just like you would do in STOMP).
from matrixprofile-ts.
Correction on the exclusion zones - there shouldn't be any need for them in PreSCRIMP. There seems to be some issue with the noise correction I've implemented.
from matrixprofile-ts.
@ameya98 It is great that you are helping resolve some of these issues. When you find a new bug unrelated to refactoring, please create a new issue. When you submit a pull request please reference the issue in the pull request. Please review the contributing guidelines. https://github.com/target/matrixprofile-ts/blob/master/CONTRIBUTING.md
from matrixprofile-ts.
Sorry, I've done so now!
from matrixprofile-ts.
Related Issues (20)
- import error
- Support for multivariate time series HOT 5
- stumpy HOT 2
- Definition and explanation of parameters HOT 7
- Exclusion Zone
- Return actual distances from MASS instead of squared distances HOT 2
- motifs.motifs throws exceptions on larger arrays HOT 1
- Question: Finding Shared Motifs for Clustering HOT 2
- O(nĀ²) Memory Requirements for _stamp_parallel()
- Complexity Measure confuses mean and sum HOT 1
- Duplicate license files: remove License.md? HOT 4
- How to handle NaN and INF values in utils.py movmeanstd and movstd
- Stomp increment is missing HOT 2
- MPdist
- matrixProfile.stomp() gives nan and inf values HOT 5
- Annotation Vector file missing from latest matrixprofile-ts build HOT 3
- ValueError: Length of values does not match length of index HOT 1
- Pattern Recognition HOT 6
- What is the difference between matrixprofile and matrixprofile-ts? HOT 8
- Use of 'is' for non-object. HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
š Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. ššš
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ā¤ļø Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from matrixprofile-ts.