-
Notifications
You must be signed in to change notification settings - Fork 3
Feature/pattern change detection #17
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
base: development
Are you sure you want to change the base?
Conversation
…, STPH) with real-time GUI dashboard
…, STPH) with real-time GUI dashboard
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There are several points that need to be fixed before merging.
Several things mentioned under https://github.com/tuda-parallel/FTIO/blob/feature/pattern_change_detection/docs/students_contribute.md are missing. This includes:
- Documentation and license for new files: https://github.com/tuda-parallel/FTIO/blob/feature/pattern_change_detection/docs/students_contribute.md#-module-documentation-and-licensing
- Adding test cases: https://github.com/tuda-parallel/FTIO/blob/feature/pattern_change_detection/docs/students_contribute.md#-module-documentation-and-licensing
- Adding a documentation: https://github.com/tuda-parallel/FTIO/blob/feature/pattern_change_detection/docs/students_contribute.md#-module-documentation-and-licensing
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The changes here are not needed. Please remove them
| periodicity_score = new_periodicity_scores(amp, b_sampled, prediction, args) | ||
|
|
||
| t_sampled = time_stamps[0] + np.arange(0, n) * 1 / args.freq | ||
| # Safety check for empty time_stamps |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is not needed. please remvove it.
|
|
||
| #! Save up to n_freq from the top candidates | ||
| if args.n_freq > 0: | ||
| if args.n_freq > 0 and n > 0: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is not needed. Please remove it.
| prediction.phi = phi[dominant_index] | ||
| prediction.t_start = time_stamps[0] | ||
| prediction.t_end = time_stamps[-1] | ||
| if n > 0 and len(dominant_index) > 0: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The changes below are not needed. Please remove them. Especially, as time does not always start at 0.
| @@ -0,0 +1,1064 @@ | |||
| """Change point detection algorithms for FTIO online predictor.""" | |||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
here you can add that you are the author of this file. See lines 1-17 in https://github.com/tuda-parallel/FTIO/blob/main/ftio/cli/ftio_core.py.
Also please add typehints and definition of the arguments (see https://github.com/tuda-parallel/FTIO/blob/main/ftio/cli/ftio_core.py#L45)
| Returns: | ||
| out (dict): probability of predictions in ranges | ||
| """ | ||
| def find_probability(data: list[dict], method: str = "db", counter:int = -1) -> list: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Why delete the function doc string? Please only modify your functions
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This function is a mess. There is no need to define the same variables three times with different names (e.g., self.pagehinkley_frequencies, self.adwin_frequencies, and self.detector_frequencies). In general, you added too many parameters, making this more complicated than it needed to be. Please:
- Undo the deleted comments in the original version?
- Reduce the parameters you added (for instance, to one that loads from another file the values you need). However, avoid redundancy.
- Keep in mind that these parameters are shared among the processes. More means slower runs
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Please undo the changes here
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Why are these added here? I would expect them in https://github.com/tuda-parallel/FTIO/blob/main/pyproject.toml. You could add [dependencies-gui] under [project.optional-dependencies]. Also how do you call the gui? I would have expected something under [project.scripts] in the same file for the gui
Implementation of the three adaptive change point detection algorithms with a real-time visualization dashboard.
Algorithms: ADWIN, AV-CUSUM, STPH