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: move existing ML solutions into safeds.ml.classical package #213

Merged

Conversation

lars-reimann
Copy link
Member

Closes #210.

Summary of Changes

We eventually want to support neural networks as well, which are supposed to reside in the safeds.ml.neural package. We do not want to have packages with different semantics (classification and regression as tasks, neural networks as a subset of ML methods) on the same package level, however. Because of this, we moved the existing methods into the safeds.ml.classical package.

@lars-reimann lars-reimann requested a review from a team as a code owner April 19, 2023 12:47
@lars-reimann lars-reimann linked an issue Apr 19, 2023 that may be closed by this pull request
@lars-reimann
Copy link
Member Author

lars-reimann commented Apr 19, 2023

🦙 MegaLinter status: ✅ SUCCESS

Descriptor Linter Files Fixed Errors Elapsed time
✅ PYTHON black 27 0 0 0.83s
✅ PYTHON mypy 27 0 1.74s
✅ PYTHON ruff 27 0 0 0.04s
✅ REPOSITORY git_diff yes no 0.02s

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

@codecov
Copy link

codecov bot commented Apr 19, 2023

Codecov Report

Merging #213 (bbabd84) into main (e50c3b0) will not change coverage.
The diff coverage is 100.00%.

@@           Coverage Diff           @@
##             main     #213   +/-   ##
=======================================
  Coverage   95.66%   95.66%           
=======================================
  Files          42       42           
  Lines        1476     1476           
=======================================
  Hits         1412     1412           
  Misses         64       64           
Impacted Files Coverage Δ
src/safeds/ml/classical/_util_sklearn.py 100.00% <ø> (ø)
src/safeds/ml/classical/classification/__init__.py 100.00% <ø> (ø)
.../safeds/ml/classical/classification/_classifier.py 100.00% <ø> (ø)
src/safeds/ml/classical/regression/__init__.py 100.00% <ø> (ø)
src/safeds/ml/classical/regression/_regressor.py 100.00% <ø> (ø)
...c/safeds/ml/classical/classification/_ada_boost.py 100.00% <100.00%> (ø)
...feds/ml/classical/classification/_decision_tree.py 100.00% <100.00%> (ø)
...lassification/_gradient_boosting_classification.py 100.00% <100.00%> (ø)
...l/classical/classification/_k_nearest_neighbors.py 100.00% <100.00%> (ø)
...l/classical/classification/_logistic_regression.py 100.00% <100.00%> (ø)
... and 10 more

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

@lars-reimann lars-reimann merged commit 655f07f into main Apr 19, 2023
@lars-reimann lars-reimann deleted the 210-move-existing-ml-solutions-to-safedsmlclassical branch April 19, 2023 12:54
lars-reimann pushed a commit that referenced this pull request Apr 21, 2023
## [0.11.0](v0.10.0...v0.11.0) (2023-04-21)

### Features

* `OneHotEncoder.inverse_transform` now maintains the column order from the original table ([#195](#195)) ([3ec0041](3ec0041)), closes [#109](#109) [#109](#109)
* add `plot_` prefix back to plotting methods ([#212](#212)) ([e50c3b0](e50c3b0)), closes [#211](#211)
* adjust `Column`, `Schema` and `Table` to changes in `Row` ([#216](#216)) ([ca3eebb](ca3eebb))
* back `Row` by a `polars.DataFrame` ([#214](#214)) ([62ca34d](62ca34d)), closes [#196](#196) [#149](#149)
* clean up `Row` class ([#215](#215)) ([b12fc68](b12fc68))
* convert between `Row` and `dict` ([#206](#206)) ([e98b653](e98b653)), closes [#204](#204)
* convert between a `dict` and a `Table` ([#198](#198)) ([2a5089e](2a5089e)), closes [#197](#197)
* create column types for `polars` data types ([#208](#208)) ([e18b362](e18b362)), closes [#196](#196)
* dataframe interchange protocol ([#200](#200)) ([bea976a](bea976a)), closes [#199](#199)
* move existing ML solutions into `safeds.ml.classical` package ([#213](#213)) ([655f07f](655f07f)), closes [#210](#210)

### Bug Fixes

* `table.keep_only_columns` now maps column names to correct data ([#194](#194)) ([459ab75](459ab75)), closes [#115](#115)
* typo in type hint ([#184](#184)) ([e79727d](e79727d)), closes [#180](#180)
@lars-reimann
Copy link
Member Author

🎉 This PR is included in version 0.11.0 🎉

The release is available on:

Your semantic-release bot 📦🚀

@lars-reimann lars-reimann added the released Included in a release label Apr 21, 2023
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.

Move existing ML solutions to safeds.ml.classical
2 participants