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: Remove device information in image class #735

Merged
merged 14 commits into from
May 7, 2024

Conversation

Marsmaennchen221
Copy link
Contributor

Closes #524

Summary of Changes

feat: removed device from Image
feat: all internal pytorch objects now use the specified device
feat: auto selection of default device (defaults to cuda if cuda is available)
test: added tests with cuda device

feat: all internal pytorch objects now use the specified device
feat: auto selection of default device (defaults to `cuda` if `cuda` is available)
test: added tests with `cuda` device
@Marsmaennchen221 Marsmaennchen221 requested a review from a team as a code owner May 7, 2024 00:30
@Marsmaennchen221 Marsmaennchen221 linked an issue May 7, 2024 that may be closed by this pull request
@Marsmaennchen221 Marsmaennchen221 changed the title Remove device information in image class feat: Remove device information in image class May 7, 2024
Copy link
Contributor

github-actions bot commented May 7, 2024

🦙 MegaLinter status: ✅ SUCCESS

Descriptor Linter Files Fixed Errors Elapsed time
✅ PYTHON black 30 0 0 2.26s
✅ PYTHON mypy 30 0 3.82s
✅ PYTHON ruff 30 0 0 0.27s
✅ REPOSITORY git_diff yes no 0.47s

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

Copy link

codecov bot commented May 7, 2024

Codecov Report

All modified and coverable lines are covered by tests ✅

Project coverage is 100.00%. Comparing base (6cad203) to head (738263a).

Additional details and impacted files
@@            Coverage Diff            @@
##              main      #735   +/-   ##
=========================================
  Coverage   100.00%   100.00%           
=========================================
  Files           78        78           
  Lines         5602      5701   +99     
=========================================
+ Hits          5602      5701   +99     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

@Marsmaennchen221
Copy link
Contributor Author

@sibre28, @Gerhardsa0 and @lars-reimann: One this pr is merged please run the method _init_default_device from safeds._config every time you import something from torch or torchvision in a method to make sure the default device is set.

Gerhardsa0
Gerhardsa0 previously approved these changes May 7, 2024
…ove-device-information-in-image-class

# Conflicts:
#	src/safeds/ml/nn/_model.py
#	tests/helpers/__init__.py
#	tests/safeds/ml/nn/test_cnn_workflow.py
#	tests/safeds/ml/nn/test_model.py
…predict`

test: added device tests to `TimeSeriesDataset`
Copy link
Contributor

@Gerhardsa0 Gerhardsa0 left a comment

Choose a reason for hiding this comment

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

still looks good and thank you for your changes in the time_series_dataset

@Marsmaennchen221 Marsmaennchen221 merged commit d783caa into main May 7, 2024
12 checks passed
@Marsmaennchen221 Marsmaennchen221 deleted the 524-remove-device-information-in-image-class branch May 7, 2024 16:30
lars-reimann pushed a commit that referenced this pull request May 9, 2024
## [0.24.0](v0.23.0...v0.24.0) (2024-05-09)

### Features

* `Column.plot_histogram()` using `Table.plot_histograms` for consistent results ([#726](#726)) ([576492c](576492c))
* `Regressor.summarize_metrics` and `Classifier.summarize_metrics` ([#729](#729)) ([1cc14b1](1cc14b1)), closes [#713](#713)
* `Table.keep_only_rows` ([#721](#721)) ([923a6c2](923a6c2))
* `Table.remove_rows` ([#720](#720)) ([a1cdaef](a1cdaef)), closes [#698](#698)
* Add `ImageDataset` and Layer for ConvolutionalNeuralNetworks ([#645](#645)) ([5b6d219](5b6d219)), closes [#579](#579) [#580](#580) [#581](#581)
* added load_percentage parameter to ImageList.from_files to load a subset of the given files ([#739](#739)) ([0564b52](0564b52)), closes [#736](#736)
* added rnn layer and TimeSeries conversion ([#615](#615)) ([6cad203](6cad203)), closes [#614](#614) [#648](#648) [#656](#656) [#601](#601)
* Basic implementation of cell with polars ([#734](#734)) ([004630b](004630b)), closes [#712](#712)
* deprecate `Table.add_column` and `Table.add_row` ([#723](#723)) ([5dd9d02](5dd9d02)), closes [#722](#722)
* deprecated `Table.from_excel_file` and `Table.to_excel_file` ([#728](#728)) ([c89e0bf](c89e0bf)), closes [#727](#727)
* Larger histogram plot if table only has one column ([#716](#716)) ([31ffd12](31ffd12))
* polars implementation of a column ([#738](#738)) ([732aa48](732aa48)), closes [#712](#712)
* polars implementation of a row ([#733](#733)) ([ff627f6](ff627f6)), closes [#712](#712)
* polars implementation of table ([#744](#744)) ([fc49895](fc49895)), closes [#638](#638) [#641](#641) [#649](#649) [#712](#712)
* regularization for decision trees and random forests ([#730](#730)) ([102de2d](102de2d)), closes [#700](#700)
* Remove device information in image class ([#735](#735)) ([d783caa](d783caa)), closes [#524](#524)
* return fitted transformer and transformed table from `fit_and_transform` ([#724](#724)) ([2960d35](2960d35)), closes [#613](#613)

### Bug Fixes

* make `Image.clone` internal ([#725](#725)) ([215a472](215a472)), closes [#626](#626)

### Performance Improvements

* improved performance of `TabularDataset.__eq__` by a factor of up to 2 ([#697](#697)) ([cd7f55b](cd7f55b))
@lars-reimann
Copy link
Member

🎉 This PR is included in version 0.24.0 🎉

The release is available on:

Your semantic-release bot 📦🚀

@lars-reimann lars-reimann added the released Included in a release label May 9, 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
Development

Successfully merging this pull request may close these issues.

Remove device information in Image Class
4 participants