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

feat: added from_str_to_temporal and continues prediction #767

Merged
merged 99 commits into from
May 31, 2024

Conversation

Gerhardsa0
Copy link
Contributor

@Gerhardsa0 Gerhardsa0 commented May 15, 2024

now we can store dates as dates and the plots can make use of the date format, see test_lineplot.

Closes #806
Closes #765
Closes #740
Closes #773

Summary of Changes

removed time name from time series class
added time series tutorial
added multiple columns for line plot and scatter plot
added temporal data interface and temporal operations, also added legend to these plots
added continuous prediction
some refactoring and fixes

@Gerhardsa0 Gerhardsa0 requested a review from a team as a code owner May 15, 2024 12:25
@Gerhardsa0 Gerhardsa0 linked an issue May 15, 2024 that may be closed by this pull request
@Gerhardsa0 Gerhardsa0 changed the title added from_str_to_temporal feat: added from_str_to_temporal May 15, 2024
Copy link
Contributor

github-actions bot commented May 15, 2024

🦙 MegaLinter status: ✅ SUCCESS

Descriptor Linter Files Fixed Errors Elapsed time
✅ PYTHON black 43 0 0 1.31s
✅ PYTHON mypy 43 0 3.05s
✅ PYTHON ruff 43 0 0 0.14s
✅ REPOSITORY git_diff yes no 0.14s

See detailed report in MegaLinter reports
Set VALIDATE_ALL_CODEBASE: true in mega-linter.yml to validate all sources, not only the diff

MegaLinter is graciously provided by OX Security

@lars-reimann
Copy link
Member

lars-reimann commented May 15, 2024

in polars they also work on series as I see. If yes, in which section should I add it.

For now, that's not needed. A column already has a method transform, which allows transforming the column based on an expression. Slightly more verbose, but we don't need to duplicate the API.

https://github.com/Safe-DS/Library into 765-feat-add-temporal-operations

# Conflicts:
#	src/safeds/ml/nn/converters/_output_converter_time_series.py
#	tests/safeds/data/labeled/containers/_time_series_dataset/test_into_dataloader.py
@Gerhardsa0 Gerhardsa0 changed the title feat: added from_str_to_temporal feat: added from_str_to_temporal and continues prediction May 15, 2024
@Gerhardsa0
Copy link
Contributor Author

Gerhardsa0 commented May 15, 2024

pls do not merge right now, I also work on a tutorial on this branch

I have a problem here with also inverting the predictions from the neural network, I can only invert my test data.

@lars-reimann lars-reimann marked this pull request as draft May 15, 2024 16:58
@lars-reimann
Copy link
Member

I've reverted this to a draft for the time being.

will work on the plot tmrw
prediction now just overwrites the target column
dates from str is still implemented
added multiple columns plot, note that this is a demo, as I have some questions
@Gerhardsa0
Copy link
Contributor Author

@lars-reimann right now, the line plot creates a confidence interval for the y column. Is there a use case for that, when there are multiple columns plotted, because it can make the plot messy. What would be preferred usage?

I have a demo implementation in table_plotter compare_plot.

Gerhardsa0 and others added 10 commits May 29, 2024 16:50
…at-add-temporal-operations

# Conflicts:
#	docs/tutorials/classification.ipynb
#	docs/tutorials/convolutional_neural_network_for_image_classification.ipynb
#	docs/tutorials/machine_learning.ipynb
#	tests/safeds/ml/nn/converters/test_input_converter_time_series.py
#	tests/safeds/ml/nn/test_lstm_workflow.py
sibre28
sibre28 previously approved these changes May 30, 2024
@Gerhardsa0 Gerhardsa0 dismissed lars-reimann’s stale review May 31, 2024 10:15

is not a avaible for a while and comment is outdated

@Gerhardsa0 Gerhardsa0 enabled auto-merge (squash) May 31, 2024 14:27
Copy link
Contributor

@sibre28 sibre28 left a comment

Choose a reason for hiding this comment

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

LGTM

@Gerhardsa0 Gerhardsa0 merged commit 35f468a into main May 31, 2024
12 checks passed
@Gerhardsa0 Gerhardsa0 deleted the 765-feat-add-temporal-operations branch May 31, 2024 16:44
lars-reimann pushed a commit that referenced this pull request Jul 19, 2024
## [0.27.0](v0.26.0...v0.27.0) (2024-07-19)

### Features

*  join ([#870](#870)) ([5764441](5764441)), closes [#745](#745)
* activation function for forward layer ([#891](#891)) ([5b5bb3f](5b5bb3f)), closes [#889](#889)
* add `ImageDataset.split` ([#846](#846)) ([3878751](3878751)), closes [#831](#831)
* add FunctionalTableTransformer ([#901](#901)) ([37905be](37905be)), closes [#858](#858)
* add InvalidFitDataError ([#824](#824)) ([487854c](487854c)), closes [#655](#655)
* add KNearestNeighborsImputer ([#864](#864)) ([fcdfecf](fcdfecf)), closes [#743](#743)
* add moving average plot ([#836](#836)) ([abcf68a](abcf68a))
* add RobustScaler ([#874](#874)) ([62320a3](62320a3)), closes [#650](#650) [#873](#873)
* add SequentialTableTransformer ([#893](#893)) ([e93299f](e93299f)), closes [#802](#802)
* add temporal operations ([#832](#832)) ([06eab77](06eab77))
* added 'histogram_2d' in TablePlotter  ([#903](#903)) ([4e65ba9](4e65ba9)), closes [#869](#869) [#798](#798)
* added from_str_to_temporal and continues prediction ([#767](#767)) ([35f468a](35f468a)), closes [#806](#806) [#765](#765) [#740](#740) [#773](#773)
* added GRU layer ([#845](#845)) ([d33cb5d](d33cb5d))
* Adds Dropout Layer ([#868](#868)) ([a76f0a1](a76f0a1)), closes [#848](#848)
* dark mode for plots ([#911](#911)) ([5447551](5447551)), closes [#798](#798)
* easily create a baseline model ([#811](#811)) ([8e1b995](8e1b995)), closes [#710](#710)
* get first cell with value other than `None` ([#904](#904)) ([5a0cdb3](5a0cdb3)), closes [#799](#799)
* hyperparameter optimization for fnn models ([#897](#897)) ([c1f66e5](c1f66e5)), closes [#861](#861)
* implement violin plots ([#900](#900)) ([9f5992a](9f5992a)), closes [#867](#867)
* plot decision tree ([#876](#876)) ([d3f81dc](d3f81dc)), closes [#856](#856)
* prediction no longer takes a time series dataset only table ([#838](#838)) ([762e5c2](762e5c2)), closes [#837](#837)
* raise if `remove_colums` is called with unknown column by default ([#852](#852)) ([8f78163](8f78163)), closes [#807](#807)
* regularization strength for logistic classifier ([#866](#866)) ([9f74e92](9f74e92)), closes [#750](#750)
* reorders parameters of RangeScaler and makes them keyword-only ([#847](#847)) ([2b82db7](2b82db7)), closes [#809](#809)
* replace seaborn with matplotlib for box_plot ([#863](#863)) ([4ef078e](4ef078e)), closes [#805](#805) [#849](#849)
* replaced seaborn with matplotlib for correlation_heatmap ([#850](#850)) ([d4680d4](d4680d4)), closes [#800](#800) [#849](#849)

### Bug Fixes

* **deps:** bump urllib3 from 2.2.1 to 2.2.2 ([#842](#842)) ([b81bcd6](b81bcd6)), closes [#3122](https://github.com/Safe-DS/Library/issues/3122) [#3363](https://github.com/Safe-DS/Library/issues/3363) [#3122](https://github.com/Safe-DS/Library/issues/3122) [#3363](https://github.com/Safe-DS/Library/issues/3363) [#3406](https://github.com/Safe-DS/Library/issues/3406) [#3398](https://github.com/Safe-DS/Library/issues/3398) [#3399](https://github.com/Safe-DS/Library/issues/3399) [#3396](https://github.com/Safe-DS/Library/issues/3396) [#3394](https://github.com/Safe-DS/Library/issues/3394) [#3391](https://github.com/Safe-DS/Library/issues/3391) [#3316](https://github.com/Safe-DS/Library/issues/3316) [#3387](https://github.com/Safe-DS/Library/issues/3387) [#3386](https://github.com/Safe-DS/Library/issues/3386)
* labels of correlation heatmap ([#894](#894)) ([a88a609](a88a609)), closes [#871](#871)
* make multi-processing in baseline models more consistent ([#909](#909)) ([fa24560](fa24560)), closes [#907](#907)

### Performance Improvements

* improved performance in various methods in `Image` and `ImageList` ([#879](#879)) ([134e7d8](134e7d8))
@lars-reimann
Copy link
Member

🎉 This PR is included in version 0.27.0 🎉

The release is available on:

Your semantic-release bot 📦🚀

@lars-reimann lars-reimann added the released Included in a release label Jul 19, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
released Included in a release
Projects
None yet
4 participants